summaryrefslogtreecommitdiffhomepage
path: root/auto
diff options
context:
space:
mode:
authorZhidao HONG <z.hong@f5.com>2022-11-20 23:16:51 +0800
committerZhidao HONG <z.hong@f5.com>2022-11-20 23:16:51 +0800
commit4d6d146e920667a8afeacd355e4fb6a94387066e (patch)
treed25e70f93a4f91960434c4d631072e9936f80e36 /auto
parent4735931ace321752c387dae04c8b217ef22897ee (diff)
downloadunit-4d6d146e920667a8afeacd355e4fb6a94387066e.tar.gz
unit-4d6d146e920667a8afeacd355e4fb6a94387066e.tar.bz2
Basic njs support.
Diffstat (limited to 'auto')
-rw-r--r--auto/help2
-rw-r--r--auto/njs41
-rw-r--r--auto/options4
-rw-r--r--auto/sources4
-rw-r--r--auto/summary1
5 files changed, 52 insertions, 0 deletions
diff --git a/auto/help b/auto/help
index e2b81bc7..a3884679 100644
--- a/auto/help
+++ b/auto/help
@@ -41,6 +41,8 @@ cat << END
--openssl enable OpenSSL library usage
+ --njs enable NJS library usage
+
--debug enable debug logging
diff --git a/auto/njs b/auto/njs
new file mode 100644
index 00000000..72304793
--- /dev/null
+++ b/auto/njs
@@ -0,0 +1,41 @@
+
+# Copyright (C) NGINX, Inc.
+
+
+nxt_found=no
+NXT_HAVE_NJS=NO
+
+NXT_NJS_CFLAGS=
+NXT_NJS_AUX_CFLAGS=
+NXT_NJS_LIBS="-lnjs"
+NXT_NJS_AUX_LIBS="$NXT_LIBM $NXT_LIB_AUX_LIBS"
+
+nxt_feature="NJS"
+nxt_feature_name=NXT_HAVE_NJS
+nxt_feature_run=no
+nxt_feature_incs="$NXT_NJS_CFLAGS $NXT_NJS_AUX_CFLAGS"
+nxt_feature_libs="$NXT_NJS_LIBS $NXT_NJS_AUX_LIBS"
+nxt_feature_test="#include <njs.h>
+
+ int main(void) {
+ njs_vm_t *vm;
+ njs_vm_opt_t opts;
+
+ njs_vm_opt_init(&opts);
+
+ vm = njs_vm_create(&opts);
+ if (vm == NULL)
+ return 1;
+ return 0;
+ }"
+. auto/feature
+
+if [ $nxt_found = no ]; then
+ $echo
+ $echo $0: error: no NJS library found.
+ $echo
+ exit 1;
+fi
+
+NXT_LIB_AUX_CFLAGS="$NXT_LIB_AUX_CFLAGS $NXT_NJS_CFLAGS"
+NXT_LIB_AUX_LIBS="$NXT_NJS_LIBS $NXT_LIB_AUX_LIBS"
diff --git a/auto/options b/auto/options
index 572d8a9b..abcf531d 100644
--- a/auto/options
+++ b/auto/options
@@ -28,6 +28,8 @@ NXT_GNUTLS=NO
NXT_CYASSL=NO
NXT_POLARSSL=NO
+NXT_NJS=NO
+
NXT_TEST_BUILD_EPOLL=NO
NXT_TEST_BUILD_EVENTPORT=NO
NXT_TEST_BUILD_DEVPOLL=NO
@@ -85,6 +87,8 @@ do
--cyassl) NXT_CYASSL=YES ;;
--polarssl) NXT_POLARSSL=YES ;;
+ --njs) NXT_NJS=YES ;;
+
--test-build-epoll) NXT_TEST_BUILD_EPOLL=YES ;;
--test-build-eventport) NXT_TEST_BUILD_EVENTPORT=YES ;;
--test-build-devpoll) NXT_TEST_BUILD_DEVPOLL=YES ;;
diff --git a/auto/sources b/auto/sources
index 7d3f62cf..9f9a27f7 100644
--- a/auto/sources
+++ b/auto/sources
@@ -135,6 +135,10 @@ NXT_LIB_POLARSSL_SRCS="src/nxt_polarssl.c"
NXT_LIB_PCRE_SRCS="src/nxt_pcre.c"
NXT_LIB_PCRE2_SRCS="src/nxt_pcre2.c"
+if [ "$NXT_NJS" != "NO" ]; then
+ NXT_LIB_SRCS="$NXT_LIB_SRCS src/nxt_js.c"
+fi
+
NXT_LIB_EPOLL_SRCS="src/nxt_epoll_engine.c"
NXT_LIB_KQUEUE_SRCS="src/nxt_kqueue_engine.c"
NXT_LIB_EVENTPORT_SRCS="src/nxt_eventport_engine.c"
diff --git a/auto/summary b/auto/summary
index 79e7ce34..c8a49d08 100644
--- a/auto/summary
+++ b/auto/summary
@@ -28,6 +28,7 @@ Unit configuration summary:
Unix domain sockets support: $NXT_UNIX_DOMAIN
TLS support: ............... $NXT_OPENSSL
Regex support: ............. $NXT_REGEX
+ NJS support: ............... $NXT_NJS
process isolation: ......... $NXT_ISOLATION