--no-zlib disables zlib discovery. When this option is
enabled zlib dependant code is not built as a
part of libnjs.a.
+ --quickjs-inc=DIRS sets QuickJS include directories;
+ requires --quickjs-lib.
+ --quickjs-lib=OPTIONS sets QuickJS linker options.
--with-quickjs requires QuickJS engine.
END
NJS_QUICKJS=NO
NJS_TRY_QUICKJS=YES
+NJS_QUICKJS_LIB=
+NJS_QUICKJS_INCS=
NJS_OPENSSL=YES
NJS_LIBXML2=YES
NJS_ZLIB=YES
--debug-generator=*) NJS_DEBUG_GENERATOR="$value" ;;
--no-quickjs) NJS_TRY_QUICKJS=NO ;;
+ --quickjs-lib=*) NJS_QUICKJS_LIB="$value" ;;
+ --quickjs-inc=*) NJS_QUICKJS_INCS="$value" ;;
--no-openssl) NJS_OPENSSL=NO ;;
--no-libxml2) NJS_LIBXML2=NO ;;
--no-zlib) NJS_ZLIB=NO ;;
done
+if [ -n "$NJS_QUICKJS_INCS" ] && [ -z "$NJS_QUICKJS_LIB" ]; then
+ echo
+ echo "$0: error: --quickjs-inc requires --quickjs-lib."
+ echo
+ exit 1
+fi
+
if [ "$NJS_DEBUG_MEMORY" = "YES" ]; then
NJS_DEBUG=YES
fi
# Copyright (C) NGINX, Inc.
-NJS_QUICKJS_LIB=
NJS_HAVE_QUICKJS=NO
NJS_QUICKJS_DEFAULT_INCS="src $NJS_BUILD_DIR"
njs_feature="QuickJS library -lquickjs.lto"
njs_feature_name=NJS_HAVE_QUICKJS
njs_feature_run=yes
- njs_feature_incs="$NJS_QUICKJS_DEFAULT_INCS"
+ njs_feature_incs="$NJS_QUICKJS_DEFAULT_INCS $NJS_QUICKJS_INCS"
njs_feature_libs="-lquickjs.lto -lm -ldl -lpthread"
njs_feature_test="#include <quickjs_compat.h>
JS_FreeRuntime(rt);
return 0;
}"
+ if [ -n "$NJS_QUICKJS_LIB" ]; then
+ njs_feature="QuickJS library $NJS_QUICKJS_LIB"
+ njs_feature_libs="$NJS_QUICKJS_LIB"
+ fi
+
. auto/feature
+ if [ -n "$NJS_QUICKJS_LIB" -a $njs_found = no ]; then
+ echo
+ echo $0: error: the specified QuickJS library is not working.
+ echo
+ exit 1
+ fi
+
if [ $njs_found = no ]; then
njs_feature="QuickJS library -lquickjs"
njs_feature_libs="-lquickjs -lm -ldl -lpthread"