fi
-NJS_ENGINE_DEP="$NJS_BUILD_DIR/libnjs.a"
NJS_ENGINE_LIB="$NJS_BUILD_DIR/libnjs.a"
if [ "$NJS_HAVE_QUICKJS" = "YES" ]; then
- NJS_ENGINE_DEP="$NJS_BUILD_DIR/libqjs.a"
NJS_ENGINE_LIB="$NJS_ENGINE_LIB $NJS_BUILD_DIR/libqjs.a"
QJS_SRCS="$QJS_SRCS $ngx_addon_dir/ngx_qjs_fetch.c"
fi
+NJS_ENGINE_DEP="$NJS_ENGINE_LIB $NJS_BUILD_DIR/njs_auto_config.h"
+NJS_DEPS="$NJS_DEPS `echo $ngx_addon_dir/../src/*.h` \
+ `echo $ngx_addon_dir/../external/*.h` \
+ $ngx_addon_dir/../external/njs_regex.c"
+
if [ $HTTP != NO ]; then
ngx_module_type=HTTP_AUX_FILTER
ngx_module_name="ngx_http_js_module ngx_http_js_core_module"
+NJS_BUILD_TARGETS=libnjs
+NJS_QUICKJS_OPT=--no-quickjs
+
+if [ "$NJS_HAVE_QUICKJS" = YES ]; then
+ NJS_BUILD_TARGETS="libnjs libqjs"
+ NJS_QUICKJS_OPT="--with-quickjs --quickjs-inc=\"$NJS_QUICKJS_INC\" \
+ --quickjs-lib=\"$NJS_QUICKJS_LIB\""
+fi
+
cat << END >> $NGX_MAKEFILE
-$NJS_BUILD_DIR/libnjs.a: $NGX_MAKEFILE
+.PHONY: njs_build
+
+njs_build: $NJS_BUILD_DIR/Makefile
+
+$NJS_BUILD_DIR/Makefile: $NGX_MAKEFILE \\
+ $ngx_addon_dir/../configure `echo $ngx_addon_dir/../auto/*`
cd $ngx_addon_dir/.. \\
&& CFLAGS="\$(CFLAGS)" CC="\$(CC)" ./configure --no-openssl \\
- --no-libxml2 --no-zlib --no-pcre --no-quickjs \\
- --no-root-makefile --build-dir="$NJS_BUILD_DIR" \\
- --ld-opt="$NGX_LD_OPT" \\
- && \$(MAKE) -f $NJS_BUILD_DIR/Makefile libnjs
+ --no-libxml2 --no-zlib --no-pcre --no-root-makefile \\
+ --build-dir="$NJS_BUILD_DIR" --ld-opt="$NGX_LD_OPT" \\
+ $NJS_QUICKJS_OPT
-$NJS_BUILD_DIR/libqjs.a: $NGX_MAKEFILE
+$NJS_ENGINE_DEP: njs_build
+
+$NJS_BUILD_DIR/libnjs.a:
cd $ngx_addon_dir/.. \\
- && CFLAGS="\$(CFLAGS)" CC="\$(CC)" ./configure --no-openssl \\
- --no-libxml2 --no-zlib --no-pcre --with-quickjs \\
- --no-root-makefile --build-dir="$NJS_BUILD_DIR" \\
- --quickjs-inc="$NJS_QUICKJS_INC" \\
- --quickjs-lib="$NJS_QUICKJS_LIB" --ld-opt="$NGX_LD_OPT" \\
- && \$(MAKE) -f $NJS_BUILD_DIR/Makefile libnjs libqjs
+ && \$(MAKE) -f $NJS_BUILD_DIR/Makefile \\
+ $NJS_BUILD_TARGETS
+
+END
+
+if [ "$NJS_HAVE_QUICKJS" = YES ]; then
+ cat << END >> $NGX_MAKEFILE
+
+$NJS_BUILD_DIR/libqjs.a: $NJS_BUILD_DIR/libnjs.a
+
+END
+fi
+
+cat << END >> $NGX_MAKEFILE
+
+$NJS_BUILD_DIR/njs_auto_config.h: $NJS_BUILD_DIR/libnjs.a
END