From 23e807dea3a68ead712cb2eab54fba08e545872b Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov Date: Tue, 27 Feb 2024 14:42:41 -0800 Subject: Wasm-wc: use more common uname switch to get operating system name -o is not available on macOS 12.7 at least, and it's what homebrew seems to support still. Also, the proposed switch seems to be used already in the codebase. --- auto/modules/wasm-wasi-component | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'auto') diff --git a/auto/modules/wasm-wasi-component b/auto/modules/wasm-wasi-component index bfb6ffcb..6c8258d7 100644 --- a/auto/modules/wasm-wasi-component +++ b/auto/modules/wasm-wasi-component @@ -82,7 +82,7 @@ fi $echo " + $NXT_WCM_MODULE module: $NXT_WCM_MOD_NAME" -NXT_OS=$(uname -o) +NXT_OS=$(uname -s) if [ $NXT_OS = "Darwin" ]; then NXT_CARGO_CMD="cargo rustc --release --manifest-path src/wasm-wasi-component/Cargo.toml -- --emit link=target/release/libwasm_wasi_component.so -C link-args='-undefined dynamic_lookup'" -- cgit From 4eb008bb17f37f6dacfb101fe0a686bc10114b9d Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Sat, 30 Sep 2023 14:51:34 +0100 Subject: Remove unused nxt_vector_t API This is unused, yet a community member just spent time finding and fixing a bug in it only to be told it's unused. Just get rid of the thing. Link: Reviewed-by: Zhidao Hong Signed-off-by: Andrew Clayton --- auto/sources | 1 - 1 file changed, 1 deletion(-) (limited to 'auto') diff --git a/auto/sources b/auto/sources index 6ee4d87b..f34d7fd7 100644 --- a/auto/sources +++ b/auto/sources @@ -41,7 +41,6 @@ NXT_LIB_SRCS=" \ src/nxt_murmur_hash.c \ src/nxt_lvlhsh.c \ src/nxt_array.c \ - src/nxt_vector.c \ src/nxt_list.c \ src/nxt_buf.c \ src/nxt_buf_pool.c \ -- cgit From 5511593dacb771490f6d12d78e7485c5ff8a0b38 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Wed, 6 Mar 2024 21:00:38 +0000 Subject: Remove support for Microsoft's Visual C++ compiler We don't run on Windows and only really support compiling Unit with GCC and Clang. Cc: Dan Callahan Co-developed-by: Alejandro Colomar Signed-off-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index 9c9602db..c7adcfc0 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -69,19 +69,10 @@ then $echo " + using Intel C++ compiler" NXT_CC_VERSION=ICC -else -if `/bin/sh -c "($CC -v)" 2>&1 \ - | grep "Microsoft (R) 32-bit C/C" >> $NXT_AUTOCONF_ERR 2>&1` -then - NXT_CC_NAME=MSVC - $echo " + using MS Visual C++ compiler" - NXT_CC_VERSION=MSVC - else NXT_CC_NAME=cc NXT_CC_VERSION=cc -fi # MSVC fi # ICC fi # xlC fi # SunC @@ -197,9 +188,6 @@ case $NXT_CC_NAME in ICC) ;; - MSVC) - ;; - *) ;; -- cgit From 0c2d7786b1b79c952712179d271efd9c6057ffc7 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Wed, 6 Mar 2024 21:04:05 +0000 Subject: Remove support for Intel's icc compiler We only really support building Unit with GCC and Clang. Cc: Dan Callahan Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 11 ----------- 1 file changed, 11 deletions(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index c7adcfc0..b1745505 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -62,18 +62,10 @@ then NXT_CC_VERSION=`/bin/sh -c "($CC -qversion)" 2>&1 | grep "IBM XL" 2>&1` $echo " + $NXT_CC_VERSION" -else -if `/bin/sh -c "($CC -V)" 2>&1 | grep "Intel(R) C" >> $NXT_AUTOCONF_ERR 2>&1` -then - NXT_CC_NAME=ICC - $echo " + using Intel C++ compiler" - NXT_CC_VERSION=ICC - else NXT_CC_NAME=cc NXT_CC_VERSION=cc -fi # ICC fi # xlC fi # SunC fi # Apple LLVM clang @@ -185,9 +177,6 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -qsuppress=1506-159" ;; - ICC) - ;; - *) ;; -- cgit From e79e463556d6a08432a7008d185c958907fa4f40 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Wed, 6 Mar 2024 21:06:34 +0000 Subject: Remove support for IBM's XL C compiler We really only support building Unit with GCC and Clang. Cc: Dan Callahan Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/atomic | 49 ------------------------------------------------- auto/cc/test | 24 ------------------------ 2 files changed, 73 deletions(-) (limited to 'auto') diff --git a/auto/atomic b/auto/atomic index f99adf7e..7acd4667 100644 --- a/auto/atomic +++ b/auto/atomic @@ -65,55 +65,6 @@ if [ $nxt_found = no ]; then fi -# AIX xlC builtin atomic operations. - -if [ $nxt_found = no ]; then - - if [ $NXT_64BIT = 1 ]; then - nxt_feature_test="int main(void) { - long n = 0; - long o = 0; - - if (!__compare_and_swaplp(&n, &o, 3)) - return 1; - if (__fetch_and_addlp(&n, 1) != 3) - return 1; - if (__fetch_and_swaplp(&n, 5) != 4) - return 1; - if (n != 5) - return 1; - __isync(); - __lwsync(); - return 0; - }" - else - nxt_feature_test="int main(void) { - int n = 0; - int o = 0; - - if (!__compare_and_swap(&n, &o, 3)) - return 1; - if (__fetch_and_add(&n, 1) != 3) - return 1; - if (__fetch_and_swap(&n, 5) != 4) - return 1; - if (n != 5) - return 1; - __isync(); - __lwsync(); - return 0; - }" - fi - - nxt_feature="xlC builtin atomic operations" - nxt_feature_name=NXT_HAVE_XLC_ATOMIC - nxt_feature_run=yes - nxt_feature_incs= - nxt_feature_libs= - . auto/feature -fi - - if [ $nxt_found = no ]; then $echo $echo $0: error: no atomic operations found. diff --git a/auto/cc/test b/auto/cc/test index b1745505..499a2fb1 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -53,20 +53,10 @@ then NXT_CC_VERSION=`/bin/sh -c "($CC -V)" 2>&1 | grep "Sun C" 2>&1` $echo " + $NXT_CC_VERSION" -else -if `/bin/sh -c "($CC -qversion)" 2>&1 \ - | grep "^IBM XL" >> $NXT_AUTOCONF_ERR 2>&1` -then - NXT_CC_NAME=xlC - $echo " + using AIX xlC compiler" - NXT_CC_VERSION=`/bin/sh -c "($CC -qversion)" 2>&1 | grep "IBM XL" 2>&1` - $echo " + $NXT_CC_VERSION" - else NXT_CC_NAME=cc NXT_CC_VERSION=cc -fi # xlC fi # SunC fi # Apple LLVM clang fi # clang @@ -163,20 +153,6 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -g" ;; - xlC) - nxt_have=NXT_XLC . auto/have - - #NXT_CFLAGS="$NXT_CFLAGS -qalloca" - # alloca support. - NXT_CFLAGS="$NXT_CFLAGS -qlanglvl=extc99" - # __thread support. - NXT_CFLAGS="$NXT_CFLAGS -qtls" - # Suppress warning - # 1506-159 (E) Bit field type specified for XXX is not valid. - # Type unsigned assumed. - NXT_CFLAGS="$NXT_CFLAGS -qsuppress=1506-159" - ;; - *) ;; -- cgit From 9cd11133f9eaf4f31f7d1c477613d12c22774b09 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Wed, 6 Mar 2024 21:08:43 +0000 Subject: Remove support for Sun's Sun Studio/SunPro C compiler We really only support building Unit with GCC and Clang. Cc: Dan Callahan Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/atomic | 32 -------------------------------- auto/cc/deps | 12 ------------ auto/cc/test | 21 --------------------- 3 files changed, 65 deletions(-) (limited to 'auto') diff --git a/auto/atomic b/auto/atomic index 7acd4667..08061e9a 100644 --- a/auto/atomic +++ b/auto/atomic @@ -33,38 +33,6 @@ nxt_feature_test="int main(void) { . auto/feature -# Solaris 10 builtin atomic operations. - -if [ $nxt_found = no ]; then - - nxt_feature="Solaris builtin atomic operations" - nxt_feature_name=NXT_HAVE_SOLARIS_ATOMIC - nxt_feature_run=yes - nxt_feature_incs= - nxt_feature_libs= - nxt_feature_test="#include - - int main(void) { - ulong_t n = 0; - - if (atomic_cas_ulong(&n, 0, 3) != 0) - return 1; - if (atomic_add_long_nv(&n, 1) != 4) - return 1; - if (atomic_swap_ulong(&n, 5) != 4) - return 1; - if (n != 5) - return 1; - if (atomic_or_ulong_nv(&n, 2) != 7) - return 1; - if (atomic_and_ulong_nv(&n, 5) != 5) - return 1; - return 0; - }" - . auto/feature -fi - - if [ $nxt_found = no ]; then $echo $echo $0: error: no atomic operations found. diff --git a/auto/cc/deps b/auto/cc/deps index 11429788..8b4deca7 100644 --- a/auto/cc/deps +++ b/auto/cc/deps @@ -1,18 +1,6 @@ case "$NXT_CC_NAME" in - SunC): - nxt_gen_dep_flags() { - $echo "-xMMD -xMF $NXT_BUILD_DIR/$nxt_dep.tmp" - } - - nxt_gen_dep_post() { - $echo -n "@sed -e 's#^.*:#$NXT_BUILD_DIR/$nxt_obj:#' " - $echo -n "$NXT_BUILD_DIR/$nxt_dep.tmp > $NXT_BUILD_DIR/$nxt_dep" - $echo " && rm -f $NXT_BUILD_DIR/$nxt_dep.tmp" - } - ;; - *) nxt_gen_dep_flags() { $echo "-MMD -MF $NXT_BUILD_DIR/$nxt_dep -MT $NXT_BUILD_DIR/$nxt_obj" diff --git a/auto/cc/test b/auto/cc/test index 499a2fb1..dbaa7124 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -45,19 +45,10 @@ then NXT_CC_VERSION=`/bin/sh -c "($CC -v)" 2>&1 | grep "Apple LLVM version" 2>&1` $echo " + $NXT_CC_VERSION" -else -if `/bin/sh -c "($CC -V)" 2>&1 | grep "Sun C" >> $NXT_AUTOCONF_ERR 2>&1` -then - NXT_CC_NAME=SunC - $echo " + using Sun C compiler" - NXT_CC_VERSION=`/bin/sh -c "($CC -V)" 2>&1 | grep "Sun C" 2>&1` - $echo " + $NXT_CC_VERSION" - else NXT_CC_NAME=cc NXT_CC_VERSION=cc -fi # SunC fi # Apple LLVM clang fi # clang fi # gcc @@ -141,18 +132,6 @@ case $NXT_CC_NAME in fi ;; - SunC) - nxt_have=NXT_SUNC . auto/have - - NXT_CFLAGS="$NXT_CFLAGS -fPIC" - # Optimization. - NXT_CFLAGS="$NXT_CFLAGS -O -fast" - # Stop on warning. - NXT_CFLAGS="$NXT_CFLAGS -errwarn=%all" - # Debug. - NXT_CFLAGS="$NXT_CFLAGS -g" - ;; - *) ;; -- cgit From 806e209df541114f79033651271ef62d80bb69f5 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Wed, 28 Feb 2024 19:08:41 +0000 Subject: Remove -W from compiler flags This is what -Wextra used to be called, but any version of GCC or Clang in at least the last decade has -Wextra. Cc: Dan Callahan Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index dbaa7124..fdb84760 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -70,7 +70,7 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -O" #NXT_CFLAGS="$NXT_CFLAGS -O0" - NXT_CFLAGS="$NXT_CFLAGS -W -Wall -Wextra" + NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" #NXT_CFLAGS="$NXT_CFLAGS -Wunused-result" NXT_CFLAGS="$NXT_CFLAGS -Wno-unused-parameter" @@ -107,7 +107,7 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -O" #NXT_CFLAGS="$NXT_CFLAGS -O0" - NXT_CFLAGS="$NXT_CFLAGS -W -Wall -Wextra" + NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" #NXT_CFLAGS="$NXT_CFLAGS -Wunused-result" NXT_CFLAGS="$NXT_CFLAGS -Wno-unused-parameter" -- cgit From 1dcb5383319a2e41969234d838a20f6a4316334e Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Thu, 29 Feb 2024 02:41:59 +0000 Subject: Expand the comment about -Wstrict-overflow on GCC Expand on the comment on why we don't enable -Wstrict-overflow=5 on GCC. Link: Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index fdb84760..8c9f2fc1 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -84,7 +84,9 @@ case $NXT_CC_NAME in #NXT_CFLAGS="$NXT_CFLAGS -fomit-frame-pointer" #NXT_CFLAGS="$NXT_CFLAGS -momit-leaf-frame-pointer" - # -Wstrict-overflow is supported by GCC 4.2+. + # While -Wstrict-overflow is supported by GCC 4.2+, + # at level 3 and above it is prone to give false + # positives. #NXT_CFLAGS="$NXT_CFLAGS -Wstrict-overflow=5" NXT_CFLAGS="$NXT_CFLAGS -Wmissing-prototypes" -- cgit From 0b5223e1cda35addb1e3e1b8a6d0601b2ee9bab6 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Thu, 29 Feb 2024 15:32:00 +0000 Subject: Disable strict-aliasing in clang by default Aliasing is essentially when you access the same memory via different types. If the compiler knows this doesn't happen it can make some optimisations. There is however code in Unit, for example in the wasm language module and the websocket code that may fall foul of strict-aliasing rules. (For the wasm module I explicitly disable it there) In auto/cc/test for GCC we have NXT_CFLAGS="$NXT_CFLAGS -O" ... # -O2 enables -fstrict-aliasing and -fstrict-overflow. #NXT_CFLAGS="$NXT_CFLAGS -O2" #NXT_CFLAGS="$NXT_CFLAGS -Wno-strict-aliasing" So with GCC by default we effectively compile with -fno-strict-aliasing. For clang we have this NXT_CFLAGS="$NXT_CFLAGS -O" ... #NXT_CFLAGS="$NXT_CFLAGS -O2" ... NXT_CFLAGS="$NXT_CFLAGS -fstrict-aliasing" (In _clang_, -fstrict-aliasing is always enabled by default) So in clang we always build with -fstrict-aliasing. I don't think this is the best idea, building with something as fundamental as this disabled in one compiler and enabled in another. This patch adjusts the Clang side of things to match that of GCC. I.e compile with -fno-strict-aliasing. It also explicitly sets -fno-strict-aliasing for GCC, which is what we were getting anyway but lets be explicit about it. Cc: Dan Callahan Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index 8c9f2fc1..10588dac 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -79,7 +79,7 @@ case $NXT_CC_NAME in # -O2 enables -fstrict-aliasing and -fstrict-overflow. #NXT_CFLAGS="$NXT_CFLAGS -O2" - #NXT_CFLAGS="$NXT_CFLAGS -Wno-strict-aliasing" + NXT_CFLAGS="$NXT_CFLAGS -fno-strict-aliasing" #NXT_CFLAGS="$NXT_CFLAGS -fomit-frame-pointer" #NXT_CFLAGS="$NXT_CFLAGS -momit-leaf-frame-pointer" @@ -116,8 +116,10 @@ case $NXT_CC_NAME in #NXT_CFLAGS="$NXT_CFLAGS -Wshorten-64-to-32" NXT_CFLAGS="$NXT_CFLAGS -Wwrite-strings" #NXT_CFLAGS="$NXT_CFLAGS -O2" + # strict-aliasing is always enabled by default in clang + NXT_CFLAGS="$NXT_CFLAGS -fno-strict-aliasing" + #NXT_CFLAGS="$NXT_CFLAGS -fomit-frame-pointer" - NXT_CFLAGS="$NXT_CFLAGS -fstrict-aliasing" NXT_CFLAGS="$NXT_CFLAGS -Wstrict-overflow=5" NXT_CFLAGS="$NXT_CFLAGS -Wmissing-prototypes" -- cgit From c1e3f02f99a3cab181c36d1f55c552e2bcfba370 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Thu, 7 Mar 2024 00:43:37 +0000 Subject: Compile with -fno-strict-overflow This causes signed integer & pointer overflow to have a defined behaviour of wrapping according to two's compliment. I.e INT_MAX will wrap to INT_MIN and vice versa. This is mainly to cover existing cases, not an invitation to add more. Cc: Dan Callahan Suggested-by: Alejandro Colomar Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index 10588dac..5bd94d2f 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -65,6 +65,8 @@ case $NXT_CC_NAME in # Do not export symbols except explicitly marked with NXT_EXPORT. NXT_CFLAGS="$NXT_CFLAGS -fvisibility=hidden" + NXT_CFLAGS="$NXT_CFLAGS -fno-strict-overflow" + # c99/gnu99 conflict with Solaris XOPEN. #NXT_CFLAGS="$NXT_CFLAGS -std=gnu99" @@ -107,6 +109,8 @@ case $NXT_CC_NAME in # Do not export symbols except explicitly marked with NXT_EXPORT. NXT_CFLAGS="$NXT_CFLAGS -fvisibility=hidden" + NXT_CFLAGS="$NXT_CFLAGS -fno-strict-overflow" + NXT_CFLAGS="$NXT_CFLAGS -O" #NXT_CFLAGS="$NXT_CFLAGS -O0" NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" -- cgit From 280a978d9a82a654f5f5029e47b91a243a087f45 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 02:39:19 +0000 Subject: Add initial infrastructure for pretty printing make output The idea is rather than printing out the full compiler/linker etc command for each recipe e.g cc -c -pipe -fPIC -fvisibility=hidden -O0 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wno-strict-aliasing -Wmissing-prototypes -g -I src -I build/include \ \ \ -o build/src/nxt_cgroup.o \ -MMD -MF build/src/nxt_cgroup.dep -MT build/src/nxt_cgroup.o \ src/nxt_cgroup.c Print a clearer abbreviated message e.g the above becomes CC build/src/nxt_cgroup.o This vastly reduces the noise when compiling and most of the time you don't need to see the full command being executed. This also means that warnings etc show up much more clearly. You can still get the old verbose output by passing V=1 to make e.g $ make V=1 ... NOTE: With recent versions of make(1) you can get this same, verbose, behaviour by using the --debug=print option. This introduces the following message types CC Compiling a source file to an object file. AR Producing a static library, .a archive file. LD Producing a dynamic library, .so DSO, or executable. VER Writing version information. SED Running sed(1). All in all this improves the developer experience. Subsequent commits will make use of this in the core and modules. NOTE: This requires GNU make for which we check. On OpenIndiana/illumos we have to use gmake(1) (GNU make) anyway as the illumos make doesn't work with our Makefile as it is. Also macOS seems to generally install GNU make. We could make it work (probably) on other variants of make, but the complexity starts increasing exponentially. In fact we still print the abbreviated messages in the verbose output so you can still do $ make | grep ^" [A-Z]" on other makes to effectively get the same output. Co-developed-by: Alejandro Colomar Signed-off-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/make | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'auto') diff --git a/auto/make b/auto/make index abfd41ad..fc12d6bf 100644 --- a/auto/make +++ b/auto/make @@ -10,6 +10,13 @@ $echo "creating $NXT_MAKEFILE" cat << END > $NXT_MAKEFILE +# Pretty print compiler etc actions... +PP_CC := @echo ' CC ' +PP_AR := @echo ' AR ' +PP_LD := @echo ' LD ' +PP_VER := @echo ' VER ' +PP_SED := @echo ' SED ' + CC = $CC AR = $AR @@ -28,6 +35,28 @@ manpage: $NXT_BUILD_DIR/share/man/man8/unitd.8 END +NXT_OS=$(uname -s) +NXT_GNU_MAKE=$(make --version | grep GNU || true) + +# Requires GNU make. On OpenIndiana at least we have to use gmake +if [ -n "$NXT_GNU_MAKE" ] || [ $NXT_OS = "SunOS" ]; then + + cat << END >> $NXT_MAKEFILE +# By default compiler etc output is hidden, use +# make V=1 ... +# to show it. +V := 0 + +v := @ +ifeq (\$V,1) + v := +endif + +END + +fi + + # The include paths list. $echo -n "NXT_LIB_INCS =" >> $NXT_MAKEFILE -- cgit From 5d831af0b0c33582b598bd41b73c85ba7af2089b Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 02:52:20 +0000 Subject: Hook up make pretty printing to the Unit core and tests This makes use of the infrastructure introduced in the previous commit to pretty print the make output when building the Unit core and the C test programs. When building Unit the output now looks like VER build/include/nxt_version.h (NXT_VERSION) VER build/include/nxt_version.h (NXT_VERNUM) CC build/src/nxt_lib.o CC build/src/nxt_gmtime.o ... CC build/src/nxt_cgroup.o AR build/lib/libnxt.a CC build/src/nxt_main.o LD build/sbin/unitd SED build/share/man/man8/unitd.8 I'm sure you'll agree that looks much nicer! You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/make | 60 ++++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 40 insertions(+), 20 deletions(-) (limited to 'auto') diff --git a/auto/make b/auto/make index fc12d6bf..34335385 100644 --- a/auto/make +++ b/auto/make @@ -104,8 +104,10 @@ cat << END >> $NXT_MAKEFILE include version $NXT_VERSION_H: version - $echo '#define NXT_VERSION "\$(NXT_VERSION)"' > $NXT_VERSION_H - $echo '#define NXT_VERNUM \$(NXT_VERNUM)' >> $NXT_VERSION_H + \$(PP_VER) \$@ \(NXT_VERSION\) + \$(v)$echo '#define NXT_VERSION "\$(NXT_VERSION)"' > $NXT_VERSION_H + \$(PP_VER) \$@ \(NXT_VERNUM\) + \$(v)$echo '#define NXT_VERNUM \$(NXT_VERNUM)' >> $NXT_VERSION_H END @@ -117,16 +119,19 @@ cat << END >> $NXT_MAKEFILE libnxt: $NXT_BUILD_DIR/lib/$NXT_LIB_SHARED $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC $NXT_BUILD_DIR/lib/$NXT_LIB_SHARED: \$(NXT_LIB_OBJS) - \$(NXT_SHARED_LOCAL_LINK) -o \$@ \$(NXT_LIB_OBJS) \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_SHARED_LOCAL_LINK) -o \$@ \$(NXT_LIB_OBJS) \\ $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC: \$(NXT_LIB_OBJS) - $NXT_STATIC_LINK \$@ \$(NXT_LIB_OBJS) + \$(PP_AR) \$@ + \$(v)$NXT_STATIC_LINK \$@ \$(NXT_LIB_OBJS) $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC: \$(NXT_LIB_UNIT_OBJS) \\ $NXT_BUILD_DIR/share/pkgconfig/unit.pc \\ $NXT_BUILD_DIR/share/pkgconfig/unit-uninstalled.pc - $NXT_STATIC_LINK \$@ \$(NXT_LIB_UNIT_OBJS) + \$(PP_AR) \$@ + \$(v)$NXT_STATIC_LINK \$@ \$(NXT_LIB_UNIT_OBJS) END @@ -145,7 +150,8 @@ do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - \$(CC) -c \$(CFLAGS) \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ -o $NXT_BUILD_DIR/$nxt_obj \\ $nxt_dep_flags \\ $nxt_src @@ -165,7 +171,8 @@ nxt_dep_post=`nxt_gen_dep_post` cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - \$(CC) -c \$(CFLAGS) -DNXT_NCQ_TEST=1 \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) -DNXT_NCQ_TEST=1 \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ -o $NXT_BUILD_DIR/$nxt_obj \\ $nxt_dep_flags \\ $nxt_src @@ -183,7 +190,8 @@ nxt_dep_post=`nxt_gen_dep_post` cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - \$(CC) -c \$(CFLAGS) -DNXT_NCQ_TEST=0 \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) -DNXT_NCQ_TEST=0 \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ -o $NXT_BUILD_DIR/$nxt_obj \\ $nxt_dep_flags \\ $nxt_src @@ -221,14 +229,16 @@ tests: $NXT_BUILD_DIR/tests $NXT_BUILD_DIR/utf8_file_name_test \\ $NXT_BUILD_DIR/tests: \$(NXT_TEST_OBJS) \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC - \$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/tests \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/tests \\ \$(CFLAGS) \$(NXT_TEST_OBJS) \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS $NXT_BUILD_DIR/utf8_file_name_test: $NXT_LIB_UTF8_FILE_NAME_TEST_SRCS \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC - \$(CC) \$(CFLAGS) \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ + \$(PP_LD) \$@ + \$(v)\$(CC) \$(CFLAGS) \$(NXT_LIB_INCS) $NXT_LIB_AUX_CFLAGS \\ -o $NXT_BUILD_DIR/utf8_file_name_test \\ $NXT_LIB_UTF8_FILE_NAME_TEST_SRCS \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ @@ -236,21 +246,24 @@ $NXT_BUILD_DIR/utf8_file_name_test: $NXT_LIB_UTF8_FILE_NAME_TEST_SRCS \\ $NXT_BUILD_DIR/ncq_test: $NXT_BUILD_DIR/src/test/nxt_ncq_test.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC - \$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/ncq_test \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/ncq_test \\ \$(CFLAGS) $NXT_BUILD_DIR/src/test/nxt_ncq_test.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS $NXT_BUILD_DIR/vbcq_test: $NXT_BUILD_DIR/src/test/nxt_vbcq_test.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC - \$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/vbcq_test \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/vbcq_test \\ \$(CFLAGS) $NXT_BUILD_DIR/src/test/nxt_vbcq_test.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS $NXT_BUILD_DIR/unit_app_test: $NXT_BUILD_DIR/src/test/nxt_unit_app_test.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC - \$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/unit_app_test \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/unit_app_test \\ \$(CFLAGS) $NXT_BUILD_DIR/src/test/nxt_unit_app_test.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC \\ $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS @@ -258,7 +271,8 @@ $NXT_BUILD_DIR/unit_app_test: $NXT_BUILD_DIR/src/test/nxt_unit_app_test.o \\ $NXT_BUILD_DIR/unit_websocket_chat: \\ $NXT_BUILD_DIR/src/test/nxt_unit_websocket_chat.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC - \$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/unit_websocket_chat \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/unit_websocket_chat \\ \$(CFLAGS) $NXT_BUILD_DIR/src/test/nxt_unit_websocket_chat.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC \\ $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS @@ -266,7 +280,8 @@ $NXT_BUILD_DIR/unit_websocket_chat: \\ $NXT_BUILD_DIR/unit_websocket_echo: \\ $NXT_BUILD_DIR/src/test/nxt_unit_websocket_echo.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC - \$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/unit_websocket_echo \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/unit_websocket_echo \\ \$(CFLAGS) $NXT_BUILD_DIR/src/test/nxt_unit_websocket_echo.o \\ $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC \\ $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS @@ -325,7 +340,8 @@ cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/sbin/$NXT_DAEMON: $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ \$(NXT_OBJS) - \$(NXT_EXEC_LINK) -o \$@ \$(CFLAGS) \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o \$@ \$(CFLAGS) \\ \$(NXT_OBJS) $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS @@ -338,7 +354,8 @@ cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/share/man/man8/unitd.8: docs/man/man8/unitd.8.in \\ $NXT_BUILD_DIR/include/nxt_auto_config.h - sed -e "s|%%ERROR_LOG_PATH%%|$NXT_LOG|" \\ + \$(PP_SED) \$@ + \$(v)sed -e "s|%%ERROR_LOG_PATH%%|$NXT_LOG|" \\ -e "s|%%PID_PATH%%|$NXT_PID|" \\ -e "s|%%SOCKET_PATH%%|$NXT_CONTROL|" \\ < docs/man/man8/unitd.8.in > \$@ @@ -357,7 +374,8 @@ do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - \$(CC) -c \$(CFLAGS) \$(NXT_INCS) \\ + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) \$(NXT_INCS) \\ $NXT_LIB_AUX_CFLAGS \\ -o $NXT_BUILD_DIR/$nxt_obj \\ $nxt_dep_flags \\ @@ -470,7 +488,8 @@ END cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/share/pkgconfig/unit.pc: src/unit.pc.in - sed -e "s|@PREFIX@|$NXT_PREFIX|" \\ + \$(PP_SED) \$@ + \$(v)sed -e "s|@PREFIX@|$NXT_PREFIX|" \\ -e "s|@LIBDIR@|$NXT_LIBDIR|" \\ -e "s|@CFLAGS@|-I$NXT_INCLUDEDIR|" \\ -e "s|@VERSION@|\$(NXT_VERSION)|" \\ @@ -480,7 +499,8 @@ $NXT_BUILD_DIR/share/pkgconfig/unit.pc: src/unit.pc.in < src/unit.pc.in > \$@ $NXT_BUILD_DIR/share/pkgconfig/unit-uninstalled.pc: src/unit.pc.in - sed -e "s|@PREFIX@|$(pwd)/$NXT_BUILD_DIR|" \\ + \$(PP_SED) \$@ + \$(v)sed -e "s|@PREFIX@|$(pwd)/$NXT_BUILD_DIR|" \\ -e "s|@LIBDIR@|$(pwd)/$NXT_BUILD_DIR/lib|" \\ -e "s|@CFLAGS@|-I$(pwd)/src -I$(pwd)$NXT_BUILD_DIR/include|" \\ -e "s|@VERSION@|\$(NXT_VERSION)|" \\ -- cgit From da335bec08b550f2bd11d09b802942fe8788fd70 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 02:58:09 +0000 Subject: Pretty print the Java language module compiler output This makes use of the infrastructure introduced in a previous commit, to pretty print the make output when building the Java language module. You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/modules/java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'auto') diff --git a/auto/modules/java b/auto/modules/java index b5c8d70a..c7115ca5 100644 --- a/auto/modules/java +++ b/auto/modules/java @@ -371,8 +371,9 @@ for nxt_src in $NXT_JAVA_MODULE_SRCS; do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - mkdir -p $NXT_BUILD_DIR/src/java - \$(CC) -c \$(CFLAGS) -DNXT_JAVA_MOUNTS_H=\"$NXT_JAVA_MOUNTS_HEADER\" \\ + \$(v)mkdir -p $NXT_BUILD_DIR/src/java + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) -DNXT_JAVA_MOUNTS_H=\"$NXT_JAVA_MOUNTS_HEADER\" \\ \$(NXT_INCS) $NXT_JAVA_INCLUDE \\ $nxt_dep_flags \\ -o $NXT_BUILD_DIR/$nxt_obj $nxt_src @@ -525,7 +526,8 @@ ${NXT_JAVA_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/${NXT_JAVA_MODULE}.unit.so \ $NXT_BUILD_DIR/$NXT_WS_API_JAR $NXT_BUILD_DIR/lib/unit/modules/${NXT_JAVA_MODULE}.unit.so: $nxt_objs - \$(NXT_MODULE_LINK) -o \$@ $nxt_objs $NXT_JAVA_LDFLAGS $NXT_LD_OPT + \$(PP_LD) \$@ + \$(v)\$(NXT_MODULE_LINK) -o \$@ $nxt_objs $NXT_JAVA_LDFLAGS $NXT_LD_OPT install: ${NXT_JAVA_MODULE}-install -- cgit From 574528f7a18e42666dd7d23130f8f17244a071f6 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 03:01:23 +0000 Subject: Pretty print the Perl language module compiler output This makes use of the infrastructure introduced in a previous commit, to pretty print the make output when building the Perl language module. You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/modules/perl | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'auto') diff --git a/auto/modules/perl b/auto/modules/perl index 3c88ef0e..4e3ff49e 100644 --- a/auto/modules/perl +++ b/auto/modules/perl @@ -165,8 +165,9 @@ for nxt_src in $NXT_PERL_MODULE_SRCS; do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - mkdir -p $NXT_BUILD_DIR/src/perl - \$(CC) -c \$(CFLAGS) $NXT_PERL_CFLAGS \$(NXT_INCS) $NXT_PERL_INCLUDE \\ + \$(v)mkdir -p $NXT_BUILD_DIR/src/perl + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) $NXT_PERL_CFLAGS \$(NXT_INCS) $NXT_PERL_INCLUDE \\ $nxt_dep_flags \\ -o $NXT_BUILD_DIR/$nxt_obj $nxt_src $nxt_dep_post @@ -188,7 +189,8 @@ all: ${NXT_PERL_MODULE} ${NXT_PERL_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/${NXT_PERL_MODULE}.unit.so $NXT_BUILD_DIR/lib/unit/modules/${NXT_PERL_MODULE}.unit.so: $nxt_objs - \$(NXT_MODULE_LINK) -o \$@ $nxt_objs $NXT_PERL_LDOPTS $NXT_LD_OPT + \$(PP_LD) \$@ + \$(v)\$(NXT_MODULE_LINK) -o \$@ $nxt_objs $NXT_PERL_LDOPTS $NXT_LD_OPT install: ${NXT_PERL_MODULE}-install -- cgit From 0a0dcf91a56b896bbbde0c7b45c9fc130807c979 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 03:03:09 +0000 Subject: Pretty print the PHP language module compiler output This makes use of the infrastructure introduced in a previous commit, to pretty print the make output when building the PHP language module. You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/modules/php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/modules/php b/auto/modules/php index a0f5379c..5bc7401b 100644 --- a/auto/modules/php +++ b/auto/modules/php @@ -244,7 +244,8 @@ for nxt_src in $NXT_PHP_MODULE_SRCS; do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - \$(CC) -c \$(CFLAGS) $NXT_PHP_ADDITIONAL_FLAGS \$(NXT_INCS) \\ + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) $NXT_PHP_ADDITIONAL_FLAGS \$(NXT_INCS) \\ $NXT_PHP_INCLUDE -DNXT_ZEND_SIGNAL_STARTUP=$NXT_ZEND_SIGNAL_STARTUP \\ $nxt_dep_flags \\ -o $NXT_BUILD_DIR/$nxt_obj $nxt_src @@ -268,7 +269,8 @@ all: ${NXT_PHP_MODULE} ${NXT_PHP_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/${NXT_PHP_MODULE}.unit.so $NXT_BUILD_DIR/lib/unit/modules/${NXT_PHP_MODULE}.unit.so: $nxt_objs - \$(NXT_MODULE_LINK) -o \$@ \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_MODULE_LINK) -o \$@ \\ $nxt_objs ${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS} $NXT_LD_OPT -- cgit From caaa1d288ca944aa29316174a90e3e3de7f125ab Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 03:04:55 +0000 Subject: Pretty print the Python language module compiler output This makes use of the infrastructure introduced in a previous commit, to pretty print the make output when building the Python language module. You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/modules/python | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'auto') diff --git a/auto/modules/python b/auto/modules/python index dfd632a1..05dc5132 100644 --- a/auto/modules/python +++ b/auto/modules/python @@ -191,8 +191,9 @@ for nxt_src in $NXT_PYTHON_MODULE_SRCS; do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - mkdir -p $NXT_BUILD_DIR/src/python - \$(CC) -c \$(CFLAGS) -DNXT_PYTHON_MOUNTS_H=\"$NXT_PYTHON_MOUNTS_HEADER\" \\ + \$(v)mkdir -p $NXT_BUILD_DIR/src/python + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) -DNXT_PYTHON_MOUNTS_H=\"$NXT_PYTHON_MOUNTS_HEADER\" \\ \$(NXT_INCS) $NXT_PYTHON_INCLUDE \\ $nxt_dep_flags \\ -o $NXT_BUILD_DIR/$nxt_obj $nxt_src @@ -216,7 +217,8 @@ all: ${NXT_PYTHON_MODULE} ${NXT_PYTHON_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/${NXT_PYTHON_MODULE}.unit.so $NXT_BUILD_DIR/lib/unit/modules/${NXT_PYTHON_MODULE}.unit.so: $nxt_objs - \$(NXT_MODULE_LINK) -o \$@ \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_MODULE_LINK) -o \$@ \\ $nxt_objs $NXT_PYTHON_LIBS $NXT_PYTHON_LDFLAGS $NXT_LD_OPT -- cgit From 133f75fd1b29c7e41f4f362d13eebe6f61463b6d Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 03:05:34 +0000 Subject: Pretty print the Ruby language module compiler output This makes use of the infrastructure introduced in a previous commit, to pretty print the make output when building the Ruby language module. You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/modules/ruby | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'auto') diff --git a/auto/modules/ruby b/auto/modules/ruby index 7a7c9bd3..331e2085 100644 --- a/auto/modules/ruby +++ b/auto/modules/ruby @@ -230,8 +230,9 @@ for nxt_src in $NXT_RUBY_MODULE_SRCS; do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - mkdir -p $NXT_BUILD_DIR/src/ruby - \$(CC) -c \$(CFLAGS) $NXT_RUBY_CFLAGS -DNXT_RUBY_MOUNTS_H=\"$NXT_RUBY_MOUNTS_HEADER\" \\ + \$(v)mkdir -p $NXT_BUILD_DIR/src/ruby + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) $NXT_RUBY_CFLAGS -DNXT_RUBY_MOUNTS_H=\"$NXT_RUBY_MOUNTS_HEADER\" \\ \$(NXT_INCS) $NXT_RUBY_INCPATH \\ $nxt_dep_flags \\ -o \$@ $nxt_src @@ -254,7 +255,8 @@ all: ${NXT_RUBY_MODULE} ${NXT_RUBY_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/${NXT_RUBY_MODULE}.unit.so $NXT_BUILD_DIR/lib/unit/modules/${NXT_RUBY_MODULE}.unit.so: $nxt_objs - \$(NXT_MODULE_LINK) -o \$@ $nxt_objs $NXT_RUBY_LIBS $NXT_LD_OPT + \$(PP_LD) \$@ + \$(v)\$(NXT_MODULE_LINK) -o \$@ $nxt_objs $NXT_RUBY_LIBS $NXT_LD_OPT install: ${NXT_RUBY_MODULE}-install -- cgit From b763ba7eccf9abbd2bc7a52050c051c4842e8f9e Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 1 Mar 2024 03:06:14 +0000 Subject: Pretty print the wasm language module compiler output This makes use of the infrastructure introduced in a previous commit, to pretty print the make output when building the wasm language module. You can still get the old verbose output with $ make V=1 ... Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/modules/wasm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'auto') diff --git a/auto/modules/wasm b/auto/modules/wasm index 1f388de6..86ae7c56 100644 --- a/auto/modules/wasm +++ b/auto/modules/wasm @@ -161,8 +161,9 @@ for nxt_src in $NXT_WASM_MODULE_SRCS; do cat << END >> $NXT_MAKEFILE $NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H - mkdir -p $NXT_BUILD_DIR/src/wasm - \$(CC) -c \$(CFLAGS) $NXT_WASM_ADDITIONAL_FLAGS \$(NXT_INCS) \\ + \$(v)mkdir -p $NXT_BUILD_DIR/src/wasm + \$(PP_CC) \$@ + \$(v)\$(CC) -c \$(CFLAGS) $NXT_WASM_ADDITIONAL_FLAGS \$(NXT_INCS) \\ -I$NXT_WASM_INCLUDE_PATH \\ $nxt_dep_flags \\ -o $NXT_BUILD_DIR/$nxt_obj $nxt_src @@ -186,7 +187,8 @@ all: ${NXT_WASM_MODULE} ${NXT_WASM_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/${NXT_WASM_MODULE}.unit.so $NXT_BUILD_DIR/lib/unit/modules/${NXT_WASM_MODULE}.unit.so: $nxt_objs - \$(NXT_MODULE_LINK) -o \$@ \\ + \$(PP_LD) \$@ + \$(v)\$(NXT_MODULE_LINK) -o \$@ \\ $nxt_objs -L${NXT_WASM_LIB_PATH} ${NXT_WASM_LDFLAGS} $NXT_LD_OPT -- cgit From 15072fbde9b7d451aa4fde815d59a7454604036c Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Sat, 2 Mar 2024 03:45:00 +0000 Subject: Enable optional 'debuggable' builds One issue you have when trying to debug Unit under say GDB is that at the default optimisation level we use of -O (-O1) the compiler will often optimise things out which means they are not available for inspection in the debugger. This patch allows you to pass 'D=1' to make, e.g $ make D=1 ... Which will set -O0 overriding the previously set -O, basically disabling optimisations, we could use -Og, but the clang(1) man page says this is best and it seems to not cause any issues when debugging GCC generated code. Co-developed-by: Alejandro Colomar Signed-off-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/cc/test | 2 -- auto/make | 11 +++++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index 5bd94d2f..4d6d5a43 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -71,7 +71,6 @@ case $NXT_CC_NAME in #NXT_CFLAGS="$NXT_CFLAGS -std=gnu99" NXT_CFLAGS="$NXT_CFLAGS -O" - #NXT_CFLAGS="$NXT_CFLAGS -O0" NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" #NXT_CFLAGS="$NXT_CFLAGS -Wunused-result" @@ -112,7 +111,6 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -fno-strict-overflow" NXT_CFLAGS="$NXT_CFLAGS -O" - #NXT_CFLAGS="$NXT_CFLAGS -O0" NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" #NXT_CFLAGS="$NXT_CFLAGS -Wunused-result" diff --git a/auto/make b/auto/make index 34335385..1d54ab40 100644 --- a/auto/make +++ b/auto/make @@ -52,6 +52,17 @@ ifeq (\$V,1) v := endif +# Optionally enable debugging builds with +# make D=1 ... +# -g is always used, this just changes the optimisation level. +# On GCC this would be -Og, however according to the clang(1) +# man page, -O0 'generates the most debuggable code'. +D := 0 + +ifeq (\$D,1) + CFLAGS += -O0 +endif + END fi -- cgit From d23812b8f4376ab05af701e07ad16ff7b1d3bbea Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Sat, 2 Mar 2024 04:49:28 +0000 Subject: Allow to disable -Werror at 'make' time Having -Werror enabled all the time when developing can be a nuisance, allow to disable it by passing E=0 to make, e.g $ make E=0 ... This will set -Wno-error overriding the previously set -Werror. Co-developed-by: Alejandro Colomar Signed-off-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/make | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'auto') diff --git a/auto/make b/auto/make index 1d54ab40..6c6d7e94 100644 --- a/auto/make +++ b/auto/make @@ -63,6 +63,14 @@ ifeq (\$D,1) CFLAGS += -O0 endif +# Optionally disable -Werror with +# make E=0 ... +E := 1 + +ifeq (\$E,0) + CFLAGS += -Wno-error +endif + END fi -- cgit From f55fa70c6935f0fa0ab5964830de83ae44006edb Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Tue, 5 Mar 2024 15:03:40 +0000 Subject: Add a help target to the root Makefile This adds a help target to the Makefile in the repository root that shows what variables are available to control the make/build behaviour. It currently looks like $ make help Variables to control make/build behaviour: make V=1 ... - Enables verbose output make D=1 ... - Enables debug builds (-O0) make E=0 ... - Disables -Werror Variables can be combined. Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/make | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'auto') diff --git a/auto/make b/auto/make index 6c6d7e94..28f8bec5 100644 --- a/auto/make +++ b/auto/make @@ -540,4 +540,14 @@ include $NXT_MAKEFILE clean: rm -rf $NXT_BUILD_DIR *.dSYM Makefile +.PHONY: help +help: + @echo "Variables to control make/build behaviour:" + @echo + @echo " make V=1 ... - Enables verbose output" + @echo " make D=1 ... - Enables debug builds (-O0)" + @echo " make E=0 ... - Disables -Werror" + @echo + @echo " Variables can be combined." + END -- cgit From a171b399220b69d4b526769481a089a117265902 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Fri, 8 Mar 2024 15:05:35 +0000 Subject: Add an EXTRA_CFLAGS make variable This variable is _appended_ to the main CFLAGS variable and allows setting extra compiler options at make time. E.g $ make EXTRA_CFLAGS="..." ... Useful for quickly testing various extra warning flags. Suggested-by: Alejandro Colomar Reviewed-by: Alejandro Colomar Signed-off-by: Andrew Clayton --- auto/make | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'auto') diff --git a/auto/make b/auto/make index 28f8bec5..2788b9f5 100644 --- a/auto/make +++ b/auto/make @@ -20,7 +20,8 @@ PP_SED := @echo ' SED ' CC = $CC AR = $AR -CFLAGS = $NXT_CFLAGS $NXT_CC_OPT $CFLAGS +EXTRA_CFLAGS = +CFLAGS = $NXT_CFLAGS $NXT_CC_OPT $CFLAGS \$(EXTRA_CFLAGS) NXT_EXEC_LINK = $NXT_EXEC_LINK $NXT_LD_OPT NXT_SHARED_LOCAL_LINK = $NXT_SHARED_LOCAL_LINK $NXT_LD_OPT @@ -548,6 +549,8 @@ help: @echo " make D=1 ... - Enables debug builds (-O0)" @echo " make E=0 ... - Disables -Werror" @echo + @echo " make EXTRA_CFLAGS= ... - Add extra compiler options" + @echo @echo " Variables can be combined." END -- cgit From 9993814d14fa693dc8641c31bca70223895d2055 Mon Sep 17 00:00:00 2001 From: Andrei Zeliankou Date: Fri, 16 Feb 2024 18:22:35 +0000 Subject: NJS: loader should be registered using njs_vm_set_module_loader() This change makes NJS module incompatible with NJS older than 0.8.3. Therefore, the configuration version check has been adjusted accordingly. This change was introduced in NJS 0.8.3 here: --- auto/njs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'auto') diff --git a/auto/njs b/auto/njs index c54a27c7..e5314d31 100644 --- a/auto/njs +++ b/auto/njs @@ -25,8 +25,8 @@ nxt_feature_incs="$NXT_NJS_CFLAGS $NXT_NJS_AUX_CFLAGS" nxt_feature_libs="$NXT_NJS_LIBS $NXT_NJS_AUX_LIBS" nxt_feature_test="#include - #if NJS_VERSION_NUMBER < 0x000800 - # error NJS < 0.8.0 is not supported. + #if NJS_VERSION_NUMBER < 0x000803 + # error NJS < 0.8.3 is not supported. #endif int main(void) { @@ -44,7 +44,7 @@ nxt_feature_test="#include if [ $nxt_found = no ]; then $echo - $echo $0: error: no NJS library \>= 0.8.0 found. + $echo $0: error: no NJS library \>= 0.8.3 found. $echo exit 1; fi -- cgit From b65e49c5d6b4c9395d84257b71d380f10bb5823f Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Fri, 28 Oct 2022 01:49:55 +0200 Subject: Build with -std=gnu11 (C11 with GNU extensions) Currently Unit doesn't specify any specific C standard for compiling and will thus be compiled under whatever the compiler happens to default to. Current releases of GCC and Clang (13.x & 17.x respectively at the time of writing) default to gnu17 (C17 + GNU extensions). Our oldest still-supported system is RHEL/CentOS 7, that comes with GCC 4.8.5 which defaults to gnu90. Up until now this hasn't really been an issue and we have been able to use some C99 features that are implemented as GNU extensions in older compilers, e.g - designated initializers - flexible array members - trailing comma in enum declaration (compiles with -std=c89, warns with -std=c89 -pedantic) - snprintf(3) - long long (well we test for it but don't actually use it) - bool / stdbool.h - variadic macros However there are a couple of C99 features that aren't GNU extensions that would be handy to be able to use, i.e - The ability to declare variables inside for () loops, e.g for (int i = 0; ...; ...) - C99 inline functions (not to be confused with what's available with -std=gnu89). However, if we are going to switch up to C99, then perhaps we should just leap frog to C11 instead (the Linux Kernel did in fact make the switch from gnu89 to gnu11 in March '22). C17 is perhaps still a little new and is really just C11 + errata. GCC 4.8 as in RHEL 7 has *some* support for C11, so while we can make full use of C99, we couldn't yet make full use of C11, However RHEL 7 is EOL on June 30th 2024, after which we will no longer have that restriction and in the meantime we can restrict ourselves to the supported set of features (or implement fallbacks where appropriate). It can only be a benefit that we would be compiling Unit consistently under the same language standard. This will also help give the impression that Unit is a modern C code base. It is also worth noting the following regarding GCC "A version with corrections integrated was prepared in 2017 and published in 2018 as ISO/IEC 9899:2018; it is known as C17 and is supported with -std=c17 or -std=iso9899:2017; the corrections are also applied with - std=c11, and the only difference between the options is the value of STDC_VERSION." Suggested-by: Andrew Clayton Acked-by: Andrew Clayton [ Andrew wrote the commit message ] Signed-off-by: Alejandro Colomar Link: Link: Link: Cc: Dan Callahan Signed-off-by: Andrew Clayton --- auto/cc/test | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/cc/test b/auto/cc/test index 4d6d5a43..34e4379e 100644 --- a/auto/cc/test +++ b/auto/cc/test @@ -67,8 +67,7 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -fno-strict-overflow" - # c99/gnu99 conflict with Solaris XOPEN. - #NXT_CFLAGS="$NXT_CFLAGS -std=gnu99" + NXT_CFLAGS="$NXT_CFLAGS -std=gnu11" NXT_CFLAGS="$NXT_CFLAGS -O" NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" @@ -110,6 +109,8 @@ case $NXT_CC_NAME in NXT_CFLAGS="$NXT_CFLAGS -fno-strict-overflow" + NXT_CFLAGS="$NXT_CFLAGS -std=gnu11" + NXT_CFLAGS="$NXT_CFLAGS -O" NXT_CFLAGS="$NXT_CFLAGS -Wall -Wextra" -- cgit From a8cfea8b68b3734725faed366f9bea402596c20b Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Thu, 7 Mar 2024 16:14:52 +0000 Subject: Rebuild wasm-wasi-component when any of its dependencies change Have cargo run if for example src/wasm-wasi-component/src/lib.rs is changed, or any of the other files that should perhaps trigger a rebuild. Signed-off-by: Andrew Clayton --- auto/modules/wasm-wasi-component | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'auto') diff --git a/auto/modules/wasm-wasi-component b/auto/modules/wasm-wasi-component index 6c8258d7..7bcb8f72 100644 --- a/auto/modules/wasm-wasi-component +++ b/auto/modules/wasm-wasi-component @@ -91,6 +91,13 @@ else fi +NXT_WCM_DEPS=" \ + build/src/nxt_unit.o \ + src/wasm-wasi-component/build.rs \ + src/wasm-wasi-component/wrapper.h \ + src/wasm-wasi-component/src/lib.rs \ +" + cat << END >> $NXT_MAKEFILE .PHONY: ${NXT_WCM_MODULE} @@ -101,7 +108,7 @@ all: ${NXT_WCM_MODULE} ${NXT_WCM_MODULE}: ${NXT_WCM_MOD_CARGO} -${NXT_WCM_MOD_CARGO}: build/src/nxt_unit.o +${NXT_WCM_MOD_CARGO}: ${NXT_WCM_DEPS} $NXT_CARGO_CMD install: ${NXT_WCM_MODULE}-install -- cgit From e6d8fc6614364e54eb0d69ff4cba21f8cad2e2a9 Mon Sep 17 00:00:00 2001 From: Andrei Zeliankou Date: Mon, 8 Apr 2024 16:37:20 +0100 Subject: njs (lowercase) is more preferred way to mention --- auto/help | 2 +- auto/njs | 6 +++--- auto/summary | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'auto') diff --git a/auto/help b/auto/help index d23c67ed..8f7553f3 100644 --- a/auto/help +++ b/auto/help @@ -50,7 +50,7 @@ cat << END --openssl enable OpenSSL library usage - --njs enable NJS library usage + --njs enable njs library usage --debug enable debug logging diff --git a/auto/njs b/auto/njs index e5314d31..0a911ec2 100644 --- a/auto/njs +++ b/auto/njs @@ -18,7 +18,7 @@ else NXT_NJS_LIBS="-lnjs" fi -nxt_feature="NJS" +nxt_feature="njs" nxt_feature_name=NXT_HAVE_NJS nxt_feature_run=no nxt_feature_incs="$NXT_NJS_CFLAGS $NXT_NJS_AUX_CFLAGS" @@ -26,7 +26,7 @@ nxt_feature_libs="$NXT_NJS_LIBS $NXT_NJS_AUX_LIBS" nxt_feature_test="#include #if NJS_VERSION_NUMBER < 0x000803 - # error NJS < 0.8.3 is not supported. + # error njs < 0.8.3 is not supported. #endif int main(void) { @@ -44,7 +44,7 @@ nxt_feature_test="#include if [ $nxt_found = no ]; then $echo - $echo $0: error: no NJS library \>= 0.8.3 found. + $echo $0: error: no njs library \>= 0.8.3 found. $echo exit 1; fi diff --git a/auto/summary b/auto/summary index 3aa41669..dd7a60a0 100644 --- a/auto/summary +++ b/auto/summary @@ -29,7 +29,7 @@ Unit configuration summary: Unix domain sockets support: $NXT_UNIX_DOMAIN TLS support: ............... $NXT_OPENSSL Regex support: ............. $NXT_REGEX - NJS support: ............... $NXT_NJS + njs support: ............... $NXT_NJS process isolation: ......... $NXT_ISOLATION cgroupv2: .................. $NXT_HAVE_CGROUP -- cgit From 5b01bd652a8ec4854535a9bc70b64fe7db625b51 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Tue, 30 Apr 2024 00:02:55 +0100 Subject: auto/wasm: No need to explicitly set -fno-strict-aliasing now Since commit 0b5223e1c ("Disable strict-aliasing in clang by default") we explicitly always build with -fno-strict-aliasing so there's no need to set it independently in auto/modules/wasm Signed-off-by: Andrew Clayton --- auto/modules/wasm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/modules/wasm b/auto/modules/wasm index 86ae7c56..ad672a1e 100644 --- a/auto/modules/wasm +++ b/auto/modules/wasm @@ -63,8 +63,7 @@ NXT_WASM_LDFLAGS= if [ "$NXT_WASM_RUNTIME" = "wasmtime" ]; then NXT_WASM_LDFLAGS=-lwasmtime fi -NXT_WASM_ADDITIONAL_FLAGS="-fno-strict-aliasing \ - -Wno-missing-field-initializers \ +NXT_WASM_ADDITIONAL_FLAGS="-Wno-missing-field-initializers \ -DNXT_HAVE_WASM_$(echo ${NXT_WASM_RUNTIME} | tr 'a-z' 'A-Z') \ " -- cgit From 5d1ce5c4475f8d126b61650f3c678e3f94549f6b Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Mon, 22 Apr 2024 20:29:53 +0100 Subject: auto, perl: Fix building the Perl language module with clang When we added -fno-strict-overflow to the CFLAGS back in c1e3f02f9 ("Compile with -fno-strict-overflow") we inadvertently broke building the Perl language module with clang, e.g $ make CC build/src/perl/nxt_perl_psgi-perl.o clang: error: argument unused during compilation: '-fno-strict-overflow' [-Werror,-Wunused-command-line-argument] This is due to for example on Apline $ perl -MExtUtils::Embed -e ccflags -D_REENTRANT -D_GNU_SOURCE -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 Where on clang the -fwrapv causes the -fno-strict-overflow to be discarded resulting in the above error. We can get around that by simply appending -Qunused-arguments to the Perl CFLAGS. This fixes things for _some_ systems, as there is actually another issue with building this with clang on Fedora (and probably Red Hat) in that there the Perl ccflags & ldopts have been heavily modified and uses flags simply not only not in clang (which we can work around as above) but also incompatible flags, e.g $ make perl CC build/src/perl/nxt_perl_psgi-perl.o clang: error: optimization flag '-ffat-lto-objects' is not supported [-Werror,-Wignored-optimization-argument] There doesn't seem to be an easy workaround like -Qunused-arguments for this. While we could work around it in some way, I'm not sure it's worth the effort right now. On Red Hat & Fedora GCC _is_ the system compiler. This could be revisited if we find people trying to build this on Red Hat/Fedora with clang... For comparison this is the Alpine Perl ccflags & ldops $ perl -MExtUtils::Embed -e ccflags -D_REENTRANT -D_GNU_SOURCE -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 alpine:~$ $ perl -MExtUtils::Embed -e ldopts -rdynamic -Wl,-rpath,/usr/lib/perl5/core_perl/CORE -fstack-protector-strong -L/usr/local/lib -L/usr/lib/perl5/core_perl/CORE -lperl -lpthread -ldl -lm -lcrypt -lutil -lc Fedora $ perl -MExtUtils::Embed -e ccflags -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $ perl -MExtUtils::Embed -e ldopts -Wl,--enable-new-dtags -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -fstack-protector-strong -L/usr/local/lib -L/usr/lib64/perl5/CORE -lperl -lpthread -lresolv -ldl -lm -lcrypt -lutil -lc Fixes: c1e3f02f9 ("Compile with -fno-strict-overflow") Signed-off-by: Andrew Clayton --- auto/modules/perl | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'auto') diff --git a/auto/modules/perl b/auto/modules/perl index 4e3ff49e..86232adc 100644 --- a/auto/modules/perl +++ b/auto/modules/perl @@ -67,6 +67,12 @@ if /bin/sh -c "$NXT_PERL -MConfig -e 'print \"Perl version: \", | sed -e 's/-arch i386//' -e 's/-arch x86_64//'` fi + if [ "$NXT_CC_NAME" = "clang" ]; then + # Perl's CFLAGS has -fwrapv which under clang discards our + # -fno-strict-overflow resulting in an unused argument error + NXT_PERL_CFLAGS="$NXT_PERL_CFLAGS -Qunused-arguments" + fi + nxt_feature="Perl" nxt_feature_name="" nxt_feature_run=no -- cgit From da43f4434a6ed257cf6e07ca7b4d00108ffeaf1b Mon Sep 17 00:00:00 2001 From: "Sergey A. Osokin" Date: Wed, 8 May 2024 17:18:48 -0400 Subject: java: Update third-party components [ Tweaked subject - Andrew ] Signed-off-by: Andrew Clayton --- auto/modules/java | 4 ++-- auto/modules/java_jar.sha512 | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) (limited to 'auto') diff --git a/auto/modules/java b/auto/modules/java index c7115ca5..54d934e2 100644 --- a/auto/modules/java +++ b/auto/modules/java @@ -238,7 +238,7 @@ cat << END > $NXT_JAVA_JARS static const char *nxt_java_system_jars[] = { END -NXT_TOMCAT_VERSION=9.0.86 +NXT_TOMCAT_VERSION=9.0.89 NXT_JAR_VERSION=$NXT_TOMCAT_VERSION @@ -297,7 +297,7 @@ NXT_JAR_NAME=jetty-http . auto/modules/java_get_jar NXT_JAR_NAME=classgraph -NXT_JAR_VERSION=4.8.165 +NXT_JAR_VERSION=4.8.172 NXT_JAR_NAMESPACE=io/github/classgraph/ . auto/modules/java_get_jar diff --git a/auto/modules/java_jar.sha512 b/auto/modules/java_jar.sha512 index a689b901..10058264 100644 --- a/auto/modules/java_jar.sha512 +++ b/auto/modules/java_jar.sha512 @@ -1,14 +1,14 @@ -d0c17607eee55e181baa03f1abb2cf77f50e5114c471c2031607206768d8549c74ebb0a276d87dd3f8ea44db5e54e56087311c229ba18ad6013c388fc861beed classgraph-4.8.165.jar +e9902308f706e94989132825ceecb5401e8440ab3c092270e248f24a604ec9aa964f32b87a249e0cf98a303cd12b895ba57793efc55d782c575f2086dd04695e classgraph-4.8.172.jar ab441acf5551a7dc81c353eaccb3b3df9e89a48987294d19e39acdb83a5b640fcdff7414cee29f5b96eaa8826647f1d5323e185018fe33a64c402d69c73c9158 ecj-3.26.0.jar 6e1d6fdffcb2acf8daa9ce5b3ad973526a30b3556dc8e950254c68c64cd70e101b28a8acac41b3bd74de6b9c8eac10676afdc3c58ccb1f61a74323721592e0b5 jetty-http-9.4.54.v20240208.jar 780ee47a8722bdfb4b159f440acbfb69afdb73cc329906392b10eba8d30c564aa6377fab129e61b85a56945f01c4403913c80b6ce3158d108d88a3ad64527f06 jetty-server-9.4.54.v20240208.jar fbe9cf7efeba9f29297f75de3f1c2d98f0e02816a1dc9e6eaddcabb84c3a699a9332218c532017a3707ec57f4f99066bc671708bde4ec84dd873b8403422d7e9 jetty-util-9.4.54.v20240208.jar -1aa9024f49f74b44252f7c90d00bbfdd6aae4e96866708a0c2325def0314c8b7e5ad2fd17bb6b4b135eb2c513fe74b5b591d4b0fe3d1921192cfecadf140b7fa tomcat-api-9.0.86.jar -60a9991ff7b95ef4edfac57cd7c18b6c5177d9aee4f775b5794b5833246b928e1a685b80785babd2f450e3cd18383c58b843b0b5e742252a37044494bc90d608 tomcat-el-api-9.0.86.jar -b09cbfb834564cc7025ffad7bf069569989d3efa3bd176696045aea08bfb53622aa1aece5c84ea4371f0193d4fd477b9179999399e75d04205b219a3ab19bb66 tomcat-jasper-9.0.86.jar -1431469e91debc0ffcf820df2973782221be955dac0739a77d9030ac619cde96320970cb27eb2ff9de1e6bde3227a70b1645d1934da8e10fe2b32c069d33afec tomcat-jasper-el-9.0.86.jar -1ad9ebc1c49beb243c18ab2c459dbd54cab9514223c44b5c7e05d53d290c64c49990fc0fe276c66b1f6f6625acca651fdcb4b7df9e23fb0cc43bc05ad3900798 tomcat-jsp-api-9.0.86.jar -d30055aabf5d45ad350e01702ed0ff4bfbcdd14bee40e1e8a9a7690719816aff019ca961b7970234eaba673c3c13f5cea5dbf1bc0612ce4e8f7de795af2f170d tomcat-juli-9.0.86.jar -d7fa7d7bf35b35b7bb925cce6284e2f750e8e94ee54057daff4e369a32b361e6044e9011048a9dff54b12371ee785d34e82306b60ffae8add76602071e5fc9c5 tomcat-servlet-api-9.0.86.jar -b4a268b79fbfcd610ea5d14446ef71ad5f2ad3da247ae148669e3082ff5fd7f7256a2ecdf2529e4280ed393f53c3a7f6d09a5c38d5653b30b25ab3c4b74ed732 tomcat-util-9.0.86.jar -f2086356c8eca5cfe890232056ce30378422d3994c499845f52ec8641453af02041ae31ffdcb567bb998f0f24465d1ab65456b23e8f781058efdc01658c7252d tomcat-util-scan-9.0.86.jar +f52247c8ede15330b83de6947852ccad85b00e58a877693a7a6b1240e5965a7576227dc02a9bd0e499fb84b2d6c9ed8f3e893fc777843bcc9fca07eb1e89673e tomcat-api-9.0.89.jar +1de5e968568355f5bcd8efe1cf7fad5c427436d9307f2822636ce82d888033d01247e63a7b45941d7823c9eaa7204663281fe3a0d4ed765305ba3071d3525fb6 tomcat-el-api-9.0.89.jar +aa9af50b2198a2fa772691f867ecadaeb582381fce8324523e73f4a766b526866447450a5c62184fcfe8ed0b9def7f6268a7296aad628fcd5442b426f62e3cbb tomcat-jasper-9.0.89.jar +40448f3fe8cdd920d0f81c2b8bd1322f3f308a1ba3598050d4623941056061485c26fb9aad53caffe433de8fd98a92d4c101d63ad876eb2700b052f6c50e9e84 tomcat-jasper-el-9.0.89.jar +0b174cf2b3dde3bb768ec9af60429572bd1e1c1a009173406f60113c3ca0165216f1d235d505b295fad95b8298bac759c0e36715a111a91c4ec759a738a27a29 tomcat-jsp-api-9.0.89.jar +f4ebbb1a57b3f797c272d99e67474dad5f7eba7649a2d33a18c4ca8fb4b03f7f83dfe37363b6e6029eefbda3615982d23383f9dee35bfb45b2e882f3f3216839 tomcat-juli-9.0.89.jar +ff646b3afce76efd7385434866ee9b9b55fe24c561c0eb1666656b87acd4bb3efb822e81b578bee5b1e4a1dbe5f5ddf39e7f3ccf009ec95982874b24e72cd00e tomcat-servlet-api-9.0.89.jar +ee1d45adf8be50a941c553dcf2edfb479f0bae9bc07223578ae490f7ffd362db8d1ad0b0e6d08dc839737c3b25995a99e66df909b4501898388b09df42a38d6c tomcat-util-9.0.89.jar +8364c2fa7beb5a4bf0d5766e9081eb80a7b7160f89944af3889a14daffb9566b25ce9d91cc193b62b6def357a19f6ab18d75f856c7cb6f4190faf5ff66808eaf tomcat-util-scan-9.0.89.jar -- cgit From 965fc94e4910da14d13a2f10d997cc720b3f6127 Mon Sep 17 00:00:00 2001 From: Arjun Date: Sat, 25 May 2024 17:52:02 +0530 Subject: fuzzing: add fuzzing infrastructure in build system Signed-off-by: Arjun Reviewed-by: Andrew Clayton Signed-off-by: Andrew Clayton --- auto/fuzzing | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ auto/help | 2 ++ auto/make | 2 +- auto/options | 4 ++++ auto/sources | 9 ++++++++ auto/summary | 2 ++ 6 files changed, 93 insertions(+), 1 deletion(-) create mode 100644 auto/fuzzing (limited to 'auto') diff --git a/auto/fuzzing b/auto/fuzzing new file mode 100644 index 00000000..f792941b --- /dev/null +++ b/auto/fuzzing @@ -0,0 +1,75 @@ +# Copyright (C) NGINX, Inc. + + +if [ -n "$NXT_FUZZ" ]; then + + # Fuzz-Test object files list. + + $echo "NXT_FUZZ_OBJS = \\" >> $NXT_MAKEFILE + + for nxt_src in $NXT_FUZZ_SRCS + do + nxt_obj=${nxt_src%.c}.o + $echo " $NXT_BUILD_DIR/$nxt_obj \\" >> $NXT_MAKEFILE + done + + + # Fuzz-Test executables. + + cat << END >> $NXT_MAKEFILE + +.PHONY: fuzz +fuzz: $NXT_BUILD_DIR/fuzz_basic \\ + $NXT_BUILD_DIR/fuzz_http_controller \\ + $NXT_BUILD_DIR/fuzz_http_h1p \\ + $NXT_BUILD_DIR/fuzz_http_h1p_peer \\ + $NXT_BUILD_DIR/fuzz_json + +$NXT_BUILD_DIR/fuzz_basic: \$(NXT_FUZZ_OBJS) \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/fuzz_basic \\ + \$(CFLAGS) $NXT_BUILD_DIR/fuzzing/nxt_basic_fuzz.o \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ + $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS \\ + $NXT_FUZZ + +$NXT_BUILD_DIR/fuzz_http_controller: \$(NXT_FUZZ_OBJS) \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/fuzz_http_controller \\ + \$(CFLAGS) $NXT_BUILD_DIR/fuzzing/nxt_http_controller_fuzz.o \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ + $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS \\ + $NXT_FUZZ + +$NXT_BUILD_DIR/fuzz_http_h1p: \$(NXT_FUZZ_OBJS) \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/fuzz_http_h1p \\ + \$(CFLAGS) $NXT_BUILD_DIR/fuzzing/nxt_http_h1p_fuzz.o \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ + $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS \\ + $NXT_FUZZ + +$NXT_BUILD_DIR/fuzz_http_h1p_peer: \$(NXT_FUZZ_OBJS) \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/fuzz_http_h1p_peer \\ + \$(CFLAGS) $NXT_BUILD_DIR/fuzzing/nxt_http_h1p_peer_fuzz.o \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ + $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS \\ + $NXT_FUZZ + +$NXT_BUILD_DIR/fuzz_json: \$(NXT_FUZZ_OBJS) \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC + \$(PP_LD) \$@ + \$(v)\$(NXT_EXEC_LINK) -o $NXT_BUILD_DIR/fuzz_json \\ + \$(CFLAGS) $NXT_BUILD_DIR/fuzzing/nxt_json_fuzz.o \\ + $NXT_BUILD_DIR/lib/$NXT_LIB_STATIC \\ + $NXT_LD_OPT $NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS \\ + $NXT_FUZZ + +END + +fi diff --git a/auto/help b/auto/help index 8f7553f3..6a6aee19 100644 --- a/auto/help +++ b/auto/help @@ -54,6 +54,8 @@ cat << END --debug enable debug logging + --fuzz=ENGINE enable fuzz testing + python OPTIONS configure Python module run "./configure python --help" to see available options diff --git a/auto/make b/auto/make index 2788b9f5..de904a43 100644 --- a/auto/make +++ b/auto/make @@ -158,7 +158,7 @@ END # Object files. -for nxt_src in $NXT_LIB_SRCS $NXT_TEST_SRCS $NXT_LIB_UNIT_SRCS \ +for nxt_src in $NXT_LIB_SRCS $NXT_TEST_SRCS $NXT_FUZZ_SRCS $NXT_LIB_UNIT_SRCS \ src/test/nxt_unit_app_test.c \ src/test/nxt_unit_websocket_chat.c \ src/test/nxt_unit_websocket_echo.c diff --git a/auto/options b/auto/options index 0550c699..5be1ebe1 100644 --- a/auto/options +++ b/auto/options @@ -42,6 +42,8 @@ NXT_TEST_BUILD_HPUX_SENDFILE=NO NXT_TESTS=NO +NXT_FUZZ= + NXT_HELP=NO for nxt_option @@ -125,6 +127,8 @@ do --tests) NXT_TESTS=YES ;; + --fuzz=*) NXT_FUZZ="$value" ;; + --help) . auto/help exit 0 diff --git a/auto/sources b/auto/sources index f34d7fd7..dfabf7cf 100644 --- a/auto/sources +++ b/auto/sources @@ -307,6 +307,15 @@ if [ $NXT_TESTS = YES ]; then fi +NXT_FUZZ_SRCS=" \ + fuzzing/nxt_basic_fuzz.c \ + fuzzing/nxt_http_controller_fuzz.c \ + fuzzing/nxt_http_h1p_fuzz.c \ + fuzzing/nxt_http_h1p_peer_fuzz.c \ + fuzzing/nxt_json_fuzz.c \ +" + + NXT_SRCS=" \ src/nxt_main.c \ " diff --git a/auto/summary b/auto/summary index dd7a60a0..b6caee6c 100644 --- a/auto/summary +++ b/auto/summary @@ -36,4 +36,6 @@ Unit configuration summary: debug logging: ............. $NXT_DEBUG + fuzz engine: ............... "$NXT_FUZZ" + END -- cgit From 2e2e5d1e8e862c5d55cda0035eef90c5b6596112 Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Mon, 22 Apr 2024 20:59:38 +0200 Subject: auto: Don't install $runstatedir This directory should exist already in the system, and if not, it should (and will) be created at run time, not at install time. It triggered a warning in Alpine Linux's packaging system: ERROR: unit*: Packages must not put anything under /var/run Fixes: 5a37171f733f ("Added default values for pathnames.") Fixes: 57fc9201cb91 ("Socket: Created control socket & pid file directories.") Closes: Reported-by: Andy Postnikov Tested-by: Andy Postnikov Tested-by: Andrew Clayton Reviewed-by: Andrew Clayton Cc: Liam Crilly Cc: Konstantin Pavlov Signed-off-by: Alejandro Colomar --- auto/make | 2 -- 1 file changed, 2 deletions(-) (limited to 'auto') diff --git a/auto/make b/auto/make index de904a43..f21a2dfc 100644 --- a/auto/make +++ b/auto/make @@ -434,8 +434,6 @@ ${NXT_DAEMON}-install: $NXT_DAEMON install-check || install -d \$(DESTDIR)$NXT_STATEDIR test -d \$(DESTDIR)$NXT_LOGDIR \ || install -d \$(DESTDIR)$NXT_LOGDIR - test -d \$(DESTDIR)$NXT_RUNSTATEDIR \ - || install -d \$(DESTDIR)$NXT_RUNSTATEDIR manpage-install: manpage install-check test -d \$(DESTDIR)$NXT_MANDIR/man8 \ -- cgit From d96d583328f614c658d42f5bb0d2a0f81621327e Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Wed, 24 Apr 2024 23:31:54 +0200 Subject: Use octal instead of mode macros They are more readable. And we had a mix of both styles; there wasn't really a consistent style. Tested-by: Andrew Clayton Reviewed-by: Andrew Clayton Signed-off-by: Alejandro Colomar --- auto/shmem | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'auto') diff --git a/auto/shmem b/auto/shmem index c434a58f..cc85d140 100644 --- a/auto/shmem +++ b/auto/shmem @@ -24,8 +24,7 @@ nxt_feature_test="#include shm_unlink(name); - int fd = shm_open(name, O_CREAT | O_EXCL | O_RDWR, - S_IRUSR | S_IWUSR); + int fd = shm_open(name, O_CREAT | O_EXCL | O_RDWR, 0600); if (fd == -1) return 1; @@ -68,7 +67,7 @@ if [ $nxt_found = no ]; then shm_unlink(name); int fd = shm_open(name, O_CREAT | O_EXCL | O_RDWR, - S_IRUSR | S_IWUSR); + 0600); if (fd == -1) return 1; @@ -95,7 +94,7 @@ nxt_feature_test="#include #include int main(void) { - int fd = shm_open(SHM_ANON, O_RDWR, S_IRUSR | S_IWUSR); + int fd = shm_open(SHM_ANON, O_RDWR, 0600); if (fd == -1) return 1; -- cgit From 0e6cc6dcfbd0c019bcd1b264252aeb88303b7362 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Tue, 2 Jul 2024 17:01:33 +0100 Subject: auto: Fix some indentation in auto/modules/wasm-wasi-component Signed-off-by: Andrew Clayton --- auto/modules/wasm-wasi-component | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'auto') diff --git a/auto/modules/wasm-wasi-component b/auto/modules/wasm-wasi-component index 7bcb8f72..e0b211de 100644 --- a/auto/modules/wasm-wasi-component +++ b/auto/modules/wasm-wasi-component @@ -85,9 +85,9 @@ $echo " + $NXT_WCM_MODULE module: $NXT_WCM_MOD_NAME" NXT_OS=$(uname -s) if [ $NXT_OS = "Darwin" ]; then - NXT_CARGO_CMD="cargo rustc --release --manifest-path src/wasm-wasi-component/Cargo.toml -- --emit link=target/release/libwasm_wasi_component.so -C link-args='-undefined dynamic_lookup'" + NXT_CARGO_CMD="cargo rustc --release --manifest-path src/wasm-wasi-component/Cargo.toml -- --emit link=target/release/libwasm_wasi_component.so -C link-args='-undefined dynamic_lookup'" else - NXT_CARGO_CMD="cargo build --release --manifest-path src/wasm-wasi-component/Cargo.toml" + NXT_CARGO_CMD="cargo build --release --manifest-path src/wasm-wasi-component/Cargo.toml" fi -- cgit From b5fe3eaf1a0bcbc98d274902f5e38f2c2ad71dbc Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Tue, 2 Jul 2024 17:02:16 +0100 Subject: auto, wasm-wc: Copy the .so into build/lib/unit/modules/ Normally when the language modules are built, they are built directly into the build/lib/unit/modules/ directory. This then allows Unit to find them without being installed. This is useful for things like the pytests. This wasn't happening for the wasm-wasi-component language module. So we now copy it over and give it the right name as part of the make/build process. Reported-by: Andrei Zeliankou Fixes: 4e6d7e876 ("Wasm-wc: Wire it up to the build system") Signed-off-by: Andrew Clayton --- auto/modules/wasm-wasi-component | 2 ++ 1 file changed, 2 insertions(+) (limited to 'auto') diff --git a/auto/modules/wasm-wasi-component b/auto/modules/wasm-wasi-component index e0b211de..287d2707 100644 --- a/auto/modules/wasm-wasi-component +++ b/auto/modules/wasm-wasi-component @@ -110,6 +110,8 @@ ${NXT_WCM_MODULE}: ${NXT_WCM_MOD_CARGO} ${NXT_WCM_MOD_CARGO}: ${NXT_WCM_DEPS} $NXT_CARGO_CMD + @install -p $NXT_WCM_MOD_CARGO \\ + build/lib/unit/modules/${NXT_WCM_MOD_NAME} install: ${NXT_WCM_MODULE}-install -- cgit From f38201c2a144fb28978eabb32a3a080874f92775 Mon Sep 17 00:00:00 2001 From: Andrew Clayton Date: Sun, 11 Aug 2024 16:46:05 +0100 Subject: auto: Add a check for Linux's sched_getaffinity(2) This will help to better determine the number of router threads to create in certain situations. Unlike sysconf(_SC_NPROCESSORS_ONLN) this takes into account per-process cpu allowed masks as set by sched_setaffinity(2)/cpusets etc. So while a system may have 64 on-line cpu's, Unit itself may be limited to using just four of them in which case we should create four extra router threads, not sixty-four! Signed-off-by: Andrew Clayton --- auto/sched | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 auto/sched (limited to 'auto') diff --git a/auto/sched b/auto/sched new file mode 100644 index 00000000..a6a4499b --- /dev/null +++ b/auto/sched @@ -0,0 +1,19 @@ +# Copyright (C) Andrew Clayton +# Copyright (C) NGINX, Inc. + + +nxt_feature="Linux sched_getaffinity()" +nxt_feature_name=NXT_HAVE_LINUX_SCHED_GETAFFINITY +nxt_feature_run=no +nxt_feature_incs= +nxt_feature_libs= +nxt_feature_test="#define _GNU_SOURCE + #include + + int main(void) { + cpu_set_t set; + + sched_getaffinity(0, sizeof(set), &set); + return 0; + }" +. auto/feature -- cgit From 27d3a5c7c0d9b9fc03b69871aea6b3c9ab16aaa0 Mon Sep 17 00:00:00 2001 From: "Sergey A. Osokin" Date: Sat, 7 Sep 2024 11:43:10 -0400 Subject: java: Update third-party components [ Tweaked subject - Andrew ] Signed-off-by: Andrew Clayton --- auto/modules/java | 6 +++--- auto/modules/java_jar.sha512 | 26 +++++++++++++------------- 2 files changed, 16 insertions(+), 16 deletions(-) (limited to 'auto') diff --git a/auto/modules/java b/auto/modules/java index 54d934e2..4bb34ae7 100644 --- a/auto/modules/java +++ b/auto/modules/java @@ -238,7 +238,7 @@ cat << END > $NXT_JAVA_JARS static const char *nxt_java_system_jars[] = { END -NXT_TOMCAT_VERSION=9.0.89 +NXT_TOMCAT_VERSION=9.0.93 NXT_JAR_VERSION=$NXT_TOMCAT_VERSION @@ -284,7 +284,7 @@ static const char *nxt_java_unit_jars[] = { "$NXT_UNIT_JAR", END -NXT_JAR_VERSION=9.4.54.v20240208 +NXT_JAR_VERSION=9.4.56.v20240826 NXT_JAR_NAMESPACE=org/eclipse/jetty/ NXT_JAR_NAME=jetty-util @@ -297,7 +297,7 @@ NXT_JAR_NAME=jetty-http . auto/modules/java_get_jar NXT_JAR_NAME=classgraph -NXT_JAR_VERSION=4.8.172 +NXT_JAR_VERSION=4.8.175 NXT_JAR_NAMESPACE=io/github/classgraph/ . auto/modules/java_get_jar diff --git a/auto/modules/java_jar.sha512 b/auto/modules/java_jar.sha512 index 10058264..14516b8c 100644 --- a/auto/modules/java_jar.sha512 +++ b/auto/modules/java_jar.sha512 @@ -1,14 +1,14 @@ -e9902308f706e94989132825ceecb5401e8440ab3c092270e248f24a604ec9aa964f32b87a249e0cf98a303cd12b895ba57793efc55d782c575f2086dd04695e classgraph-4.8.172.jar +75eb34c016ce4eb4c7a8413ed06570b491f9f2fb852b19097d0e7692c746052da466d6e86810a9c899890a87f49d5c94cffd724b15d47b006e34e7c334437efc classgraph-4.8.175.jar ab441acf5551a7dc81c353eaccb3b3df9e89a48987294d19e39acdb83a5b640fcdff7414cee29f5b96eaa8826647f1d5323e185018fe33a64c402d69c73c9158 ecj-3.26.0.jar -6e1d6fdffcb2acf8daa9ce5b3ad973526a30b3556dc8e950254c68c64cd70e101b28a8acac41b3bd74de6b9c8eac10676afdc3c58ccb1f61a74323721592e0b5 jetty-http-9.4.54.v20240208.jar -780ee47a8722bdfb4b159f440acbfb69afdb73cc329906392b10eba8d30c564aa6377fab129e61b85a56945f01c4403913c80b6ce3158d108d88a3ad64527f06 jetty-server-9.4.54.v20240208.jar -fbe9cf7efeba9f29297f75de3f1c2d98f0e02816a1dc9e6eaddcabb84c3a699a9332218c532017a3707ec57f4f99066bc671708bde4ec84dd873b8403422d7e9 jetty-util-9.4.54.v20240208.jar -f52247c8ede15330b83de6947852ccad85b00e58a877693a7a6b1240e5965a7576227dc02a9bd0e499fb84b2d6c9ed8f3e893fc777843bcc9fca07eb1e89673e tomcat-api-9.0.89.jar -1de5e968568355f5bcd8efe1cf7fad5c427436d9307f2822636ce82d888033d01247e63a7b45941d7823c9eaa7204663281fe3a0d4ed765305ba3071d3525fb6 tomcat-el-api-9.0.89.jar -aa9af50b2198a2fa772691f867ecadaeb582381fce8324523e73f4a766b526866447450a5c62184fcfe8ed0b9def7f6268a7296aad628fcd5442b426f62e3cbb tomcat-jasper-9.0.89.jar -40448f3fe8cdd920d0f81c2b8bd1322f3f308a1ba3598050d4623941056061485c26fb9aad53caffe433de8fd98a92d4c101d63ad876eb2700b052f6c50e9e84 tomcat-jasper-el-9.0.89.jar -0b174cf2b3dde3bb768ec9af60429572bd1e1c1a009173406f60113c3ca0165216f1d235d505b295fad95b8298bac759c0e36715a111a91c4ec759a738a27a29 tomcat-jsp-api-9.0.89.jar -f4ebbb1a57b3f797c272d99e67474dad5f7eba7649a2d33a18c4ca8fb4b03f7f83dfe37363b6e6029eefbda3615982d23383f9dee35bfb45b2e882f3f3216839 tomcat-juli-9.0.89.jar -ff646b3afce76efd7385434866ee9b9b55fe24c561c0eb1666656b87acd4bb3efb822e81b578bee5b1e4a1dbe5f5ddf39e7f3ccf009ec95982874b24e72cd00e tomcat-servlet-api-9.0.89.jar -ee1d45adf8be50a941c553dcf2edfb479f0bae9bc07223578ae490f7ffd362db8d1ad0b0e6d08dc839737c3b25995a99e66df909b4501898388b09df42a38d6c tomcat-util-9.0.89.jar -8364c2fa7beb5a4bf0d5766e9081eb80a7b7160f89944af3889a14daffb9566b25ce9d91cc193b62b6def357a19f6ab18d75f856c7cb6f4190faf5ff66808eaf tomcat-util-scan-9.0.89.jar +48d5512d378d58c3df93bbe1c68d5a4b097e2dc7466992393e0731414dc0fe449312e067d0874e503dd27cb9b6a1f2da0d1f1569a7b484c1f12bd533afbe2723 jetty-http-9.4.56.v20240826.jar +dc0d1f05a7f8477e1f7f57adb307224aadcb1e1fed6f7e5df72d9b84437bf75276c3b0f13da9d079c541ad94601bdbd7314c61477b224dbbdc93a6d5b9f98478 jetty-server-9.4.56.v20240826.jar +025751c45cd8a23f1b436eaa1849af2421f78a2a82bc07c4175df8b4ec5dfc15247036194156897aafb8b0ec83406bbaa25e4092fea5ddd3b900da0ffdfaae19 jetty-util-9.4.56.v20240826.jar +9ea72285b395592dbee58339e3a2a9a8e9d9b623f9c37eace3cb45842107469880d3556a18023f870ef4fcad007705652ff300c12f57fa13af9a8cd666f545de tomcat-api-9.0.93.jar +3a91b9dda9d015aaf0c931847ba40a17bd77102ec0b596a1406142dfac556ab95fa5e0fe554743757d80f28436bcd05f28d2716ca62204bded81f0ed98ac2bf8 tomcat-el-api-9.0.93.jar +d50a0d26c6b8ee2b855df54e7a2647f423181f7fa45fe67daf33b8828122b891cacc7bd8312ae72c05a20708f2b405053045d71939427e1526796b02432db72d tomcat-jasper-9.0.93.jar +4886719cbe70ec7bd9190f691d0a85bc84a343ecdb969eb946b0718f0a8bd670f9bc771a309d2d90b23dae06be1f51d3049df7ed157c90b8f4d724a1064eb21b tomcat-jasper-el-9.0.93.jar +17696c91cb90c71dbebac36cebd5205c001a4ebd4df22eeef0762d818dde16f8b6e8ccfa28301ea2fa6efb001ea2f428a813a2aea1b593f08c7c62d31884571c tomcat-jsp-api-9.0.93.jar +cf9582e6fbc3dae8bdc55e4e687fd2dbc6f44d1bfce77e2117f8673b011d69c07ade7f715493e1d14e205d122284114edc2fe9f19888933645931a093dd26a01 tomcat-juli-9.0.93.jar +280c000ec81893a87feaf7db46702d0b13599e82aedf1540597f69c609bd20a48d04f887131bc464c7f715911aa8c3b44a3502e1c736e5c7575765c419fdb064 tomcat-servlet-api-9.0.93.jar +55a47b7bc9cc3dc47d93f7850d60375d900f7aac3a7b16bdd06e01e4523672ea93cdac8660825307c6699bda8bb5e4f668b2d1d42967194dddceeb56b1acc004 tomcat-util-9.0.93.jar +db933442c1cbbc1e277cce2a374b17b37aea14b3a7f1a42f1bf7152af8edc0d876ee25ae5087f31e0b06474d1e2a134de36f3e3eaca0f04dac734deeecfd773e tomcat-util-scan-9.0.93.jar -- cgit