After latest yesterday update (I guess), the build of devel/nasm (2.16.0.1) managed to almost bring my machine to it's knees. The prometheus node_exporter even managed to capture a load of 750... Lots of unresponsive stuff! After I managed to login and managed to execute ps, I saw thousands of procs named gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time After su'ing and eventually managing to killall gmake, it all came down. Looking at the log file, I can see that 17641 gmake processes was Terminated by the kill... Feels like something is broken in this latest update. Log file is attached. 13.1-RELEASE-p3 FreeBSD 13.1-RELEASE-p3 GENERIC amd64 poudriere-git-3.3.99.20220831 devel/nasm 2.16.0.1
Created attachment 238986 [details] poudriere build log Had to gzip the log since it was too large..
Yep, same thing here on Poudriere. This is like a gmake fork() bomb, it halts a 30 processor CPU builder within minutes (technically it still runs and Poudriere logs are updating, but doing anything on the CLI (ssh or console) hangs. Runaway train somewhere. =>> Building devel/nasm build started at Fri Dec 23 18:38:40 CET 2022 port directory: /usr/ports/devel/nasm package name: nasm-2.16.01,1 building for: FreeBSD Tepucom_FreeBSD13amd64-default-job-01 13.1-RELEASE-p4 FreeBSD 13.1-RELEASE-p4 amd64 maintained by: salvadore@FreeBSD.org Makefile datestamp: -rw-r--r-- 1 root wheel 1072 Dec 23 03:01 /usr/ports/devel/nasm/Makefile Ports top last git commit: addedbc5ae Ports top unclean checkout: no Port dir last git commit: 7fd00ba8fd Port dir unclean checkout: no Poudriere version: poudriere-git-3.3.99.20220831 Host OSVERSION: 1301000 Jail OSVERSION: 1301000 Job Id: 01 ---Begin Environment--- SHELL=/bin/csh OSVERSION=1301000 UNAME_v=FreeBSD 13.1-RELEASE-p4 UNAME_r=13.1-RELEASE-p4 BLOCKSIZE=K MAIL=/var/mail/root MM_CHARSET=UTF-8 LANG=C.UTF-8 STATUS=1 HOME=/root PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin LOCALBASE=/usr/local USER=root POUDRIERE_NAME=poudriere-git LIBEXECPREFIX=/usr/local/libexec/poudriere POUDRIERE_VERSION=3.3.99.20220831 MASTERMNT=/data/poudriere/data/.m/Tepucom_FreeBSD13amd64-default/ref LC_COLLATE=C POUDRIERE_BUILD_TYPE=bulk PACKAGE_BUILDING=yes SAVED_TERM=tmux-256color OUTPUT_REDIRECTED_STDERR=4 OUTPUT_REDIRECTED=1 PWD=/data/poudriere/data/.m/Tepucom_FreeBSD13amd64-default/01/.p OUTPUT_REDIRECTED_STDOUT=3 P_PORTS_FEATURES=FLAVORS SELECTED_OPTIONS MASTERNAME=Tepucom_FreeBSD13amd64-default SCRIPTPREFIX=/usr/local/share/poudriere SCRIPTNAME=bulk.sh OLDPWD=/data/poudriere/data/.m/Tepucom_FreeBSD13amd64-default/ref/.p/pool POUDRIERE_PKGNAME=poudriere-git-3.3.99.20220831 SCRIPTPATH=/usr/local/share/poudriere/bulk.sh POUDRIEREPATH=/usr/local/bin/poudriere ---End Environment--- ---Begin Poudriere Port Flags/Env--- PORT_FLAGS= PKGENV= FLAVOR= DEPENDS_ARGS= MAKE_ARGS= ---End Poudriere Port Flags/Env--- ---Begin OPTIONS List--- ===> The following configuration options are available for nasm-2.16.01,1: DOCS=on: Build and/or install documentation RDOFF=on: Install tools to handle RDOFF object files ===> Use 'make config' to modify these settings ---End OPTIONS List--- --MAINTAINER-- salvadore@FreeBSD.org --End MAINTAINER-- --CONFIGURE_ARGS-- --prefix=/usr/local ${_LATE_CONFIGURE_ARGS} --End CONFIGURE_ARGS-- --CONFIGURE_ENV-- ac_cv_func_strspn=yes MAKE=gmake ac_cv_path_PERL=/usr/local/bin/perl ac_cv_path_PERL_PATH=/usr/local/bin/perl PERL_USE_UNSAFE_INC=1 XDG_DATA_HOME=/wrkdirs/usr/ports/devel/nasm/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/devel/nasm/work XDG_CACHE_HOME=/wrkdirs/usr/ports/devel/nasm/work/.cache HOME=/wrkdirs/usr/ports/devel/nasm/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/devel/nasm/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/devel/nasm/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig SHELL=/bin/sh CONFIG_SHELL=/bin/sh CONFIG_SITE=/usr/ports/Templates/config.site lt_cv_sys_max_cmd_len=524288 --End CONFIGURE_ENV-- --MAKE_ENV-- PERL_USE_UNSAFE_INC=1 XDG_DATA_HOME=/wrkdirs/usr/ports/devel/nasm/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/devel/nasm/work XDG_CACHE_HOME=/wrkdirs/usr/ports/devel/nasm/work/.cache HOME=/wrkdirs/usr/ports/devel/nasm/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/devel/nasm/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/devel/nasm/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local CC="cc" CFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " CPP="cpp" CPPFLAGS="" LDFLAGS=" -fstack-protector-strong " LIBS="" CXX="c++" CXXFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 0644" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" --End MAKE_ENV-- --PLIST_SUB-- PORTDOCS="" DOCS="" NO_DOCS="@comment " RDOFF="" NO_RDOFF="@comment " OSREL=13.1 PREFIX=%D LOCALBASE=/usr/local RESETPREFIX=/usr/local LIB32DIR=lib PERL_VERSION=5.32.1 PERL_VER=5.32 PERL5_MAN1=lib/perl5/site_perl/man/man1 PERL5_MAN3=lib/perl5/site_perl/man/man3 SITE_PERL=lib/perl5/site_perl SITE_ARCH=lib/perl5/site_perl/mach/5.32 DOCSDIR="share/doc/nasm" EXAMPLESDIR="share/examples/nasm" DATADIR="share/nasm" WWWDIR="www/nasm" ETCDIR="etc/nasm" --End PLIST_SUB-- --SUB_LIST-- DOCS="" NO_DOCS="@comment " RDOFF="" NO_RDOFF="@comment " PREFIX=/usr/local LOCALBASE=/usr/local DATADIR=/usr/local/share/nasm DOCSDIR=/usr/local/share/doc/nasm EXAMPLESDIR=/usr/local/share/examples/nasm WWWDIR=/usr/local/www/nasm ETCDIR=/usr/local/etc/nasm --End SUB_LIST-- ---Begin make.conf--- USE_PACKAGE_DEPENDS=yes BATCH=yes WRKDIRPREFIX=/wrkdirs PORTSDIR=/usr/ports PACKAGES=/packages DISTDIR=/distfiles FORCE_PACKAGE=yes PACKAGE_BUILDING=yes PACKAGE_BUILDING_FLAVORS=yes #### #### USE_PACKAGE_DEPENDS=yes BATCH=yes WRKDIRPREFIX=/wrkdirs OPTIONS_UNSET=X11 WITH_PKGNG=yes .if ${.CURDIR:M*/mail/sendmail*} SENDMAIL_CF_DIR= /usr/local/share/sendmail/cf SENDMAIL_CFLAGS+= -I/usr/local/include -DSASL=2 SENDMAIL_LDFLAGS+= -L/usr/local/lib SENDMAIL_LDADD+= -lsasl2 # Adding to enable alternate port (smtps) for sendmail... SENDMAIL_CFLAGS+= -D_FFR_SMTP_SSL .endif DEFAULT_VERSIONS= php=74 apache=2.4 mysql=57 ssl=openssl python=3.9 python3=3.9 WITH_SSP_PORTS=yes LICENSES_ACCEPTED+= PDFlib #MAKE_JOBS_UNSAFE=yes WITH_CCACHE_BUILD=yes CCACHE_DIR=/root/.ccache #### Misc Poudriere #### .include "/etc/make.conf.ports_env" GID=0 UID=0 ---End make.conf--- --Resource limits-- cpu time (seconds, -t) unlimited file size (512-blocks, -f) unlimited data seg size (kbytes, -d) 33554432 stack size (kbytes, -s) 524288 core file size (512-blocks, -c) unlimited max memory size (kbytes, -m) unlimited locked memory (kbytes, -l) unlimited max user processes (-u) 89999 open files (-n) 1024 virtual mem size (kbytes, -v) unlimited swap limit (kbytes, -w) unlimited socket buffer size (bytes, -b) unlimited pseudo-terminals (-p) unlimited kqueues (-k) unlimited umtx shared locks (-o) unlimited --End resource limits-- =======================<phase: check-sanity >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> License BSD2CLAUSE accepted by the user =========================================================================== =======================<phase: pkg-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> nasm-2.16.01,1 depends on file: /usr/local/sbin/pkg - not found ===> Installing existing package /packages/All/pkg-1.19.0.pkg [Tepucom_FreeBSD13amd64-default-job-01] Installing pkg-1.19.0... [Tepucom_FreeBSD13amd64-default-job-01] Extracting pkg-1.19.0: .......... done ===> nasm-2.16.01,1 depends on file: /usr/local/sbin/pkg - found ===> Returning to build of nasm-2.16.01,1 =========================================================================== =======================<phase: fetch-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =======================<phase: fetch >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> License BSD2CLAUSE accepted by the user ===> Fetching all distfiles required by nasm-2.16.01,1 for building =========================================================================== =======================<phase: checksum >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> License BSD2CLAUSE accepted by the user ===> Fetching all distfiles required by nasm-2.16.01,1 for building => SHA256 Checksum OK for nasm-2.16.01.tar.xz. => SHA256 Checksum OK for nasm-2.16.01-xdoc.tar.xz. =========================================================================== =======================<phase: extract-depends>============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =======================<phase: extract >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> License BSD2CLAUSE accepted by the user ===> Fetching all distfiles required by nasm-2.16.01,1 for building ===> Extracting for nasm-2.16.01,1 => SHA256 Checksum OK for nasm-2.16.01.tar.xz. => SHA256 Checksum OK for nasm-2.16.01-xdoc.tar.xz. =========================================================================== =======================<phase: patch-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =======================<phase: patch >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Patching for nasm-2.16.01,1 ===> Applying FreeBSD patches for nasm-2.16.01,1 from /usr/ports/devel/nasm/files =========================================================================== =======================<phase: build-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> nasm-2.16.01,1 depends on package: gmake>=4.3 - not found ===> Installing existing package /packages/All/gmake-4.3_2.pkg [Tepucom_FreeBSD13amd64-default-job-01] Installing gmake-4.3_2... [Tepucom_FreeBSD13amd64-default-job-01] `-- Installing gettext-runtime-0.21.1... [Tepucom_FreeBSD13amd64-default-job-01] | `-- Installing indexinfo-0.3.1... [Tepucom_FreeBSD13amd64-default-job-01] | `-- Extracting indexinfo-0.3.1: .... done [Tepucom_FreeBSD13amd64-default-job-01] `-- Extracting gettext-runtime-0.21.1: .......... done [Tepucom_FreeBSD13amd64-default-job-01] Extracting gmake-4.3_2: .......... done ===> nasm-2.16.01,1 depends on package: gmake>=4.3 - found ===> Returning to build of nasm-2.16.01,1 ===> nasm-2.16.01,1 depends on package: perl5>=5.32.r0<5.33 - not found ===> Installing existing package /packages/All/perl5-5.32.1_3.pkg [Tepucom_FreeBSD13amd64-default-job-01] Installing perl5-5.32.1_3... [Tepucom_FreeBSD13amd64-default-job-01] Extracting perl5-5.32.1_3: .......... done ===> nasm-2.16.01,1 depends on package: perl5>=5.32.r0<5.33 - found ===> Returning to build of nasm-2.16.01,1 ===> nasm-2.16.01,1 depends on file: /usr/local/bin/ccache - not found ===> Installing existing package /packages/All/ccache-3.7.12_4.pkg [Tepucom_FreeBSD13amd64-default-job-01] Installing ccache-3.7.12_4... [Tepucom_FreeBSD13amd64-default-job-01] Extracting ccache-3.7.12_4: .......... done Create compiler links... create symlink for cc create symlink for cc (world) create symlink for c++ create symlink for c++ (world) create symlink for CC create symlink for CC (world) create symlink for clang create symlink for clang (world) create symlink for clang++ create symlink for clang++ (world) ===== Message from ccache-3.7.12_4: -- NOTE: Please read /usr/local/share/doc/ccache/ccache-howto-freebsd.txt for information on using ccache with FreeBSD ports and src. ===> nasm-2.16.01,1 depends on file: /usr/local/bin/ccache - found ===> Returning to build of nasm-2.16.01,1 =========================================================================== =======================<phase: lib-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =======================<phase: configure >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Configuring for nasm-2.16.01,1 configure: loading site script /usr/ports/Templates/config.site checking build system type... amd64-portbld-freebsd13.1 checking host system type... amd64-portbld-freebsd13.1 checking for gcc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether cc accepts -g... yes checking for cc option to enable C11 features... none needed checking for stdio.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for inttypes.h... (cached) yes checking for stdint.h... (cached) yes checking for strings.h... (cached) yes checking for sys/stat.h... (cached) yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for wchar.h... (cached) yes checking for minix/config.h... (cached) no checking for sys/param.h... (cached) yes checking whether it is safe to define __EXTENSIONS__... yes checking whether _XOPEN_SOURCE should be defined... no checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking if cc accepts -std=c17... yes checking for size_t... (cached) yes checking whether byte ordering is bigendian... no checking if cc accepts -Werror=unknown-warning-option... yes checking if cc accepts -fwrapv... yes checking if cc accepts -ftrivial-auto-var-init=zero... no checking if cc accepts -U__STRICT_ANSI__... yes checking if cc accepts -fno-common... yes checking for suffix of library files... a checking whether ln -s works... yes checking whether gmake sets $(MAKE)... yes checking for a BSD-compatible install... /usr/bin/install -c checking for a race-free mkdir -p... (cached) /bin/mkdir -p checking for nroff... no checking for asciidoc... no checking for xmlto... no checking for xz... xz configure: WARNING: No asciidoc package found, cannot build man pages configure: WARNING: No xmlto package found, cannot build man pages checking for ar... ar checking for ranlib... ranlib checking for strip... strip checking for an ANSI C-conforming const... yes checking for inline... inline checking for C/C++ restrict keyword... __restrict__ checking for string.h... (cached) yes checking for stdarg.h... (cached) yes checking for inttypes.h... (cached) yes checking for strings.h... (cached) yes checking for _Bool... (cached) yes checking for stdbool.h that conforms to C99... (cached) yes checking for stdnoreturn.h... yes checking for io.h... no checking for fcntl.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/mman.h... (cached) yes checking for sys/types.h... (cached) yes checking for sys/stat.h... (cached) yes checking for sys/resource.h... (cached) yes checking for strcasecmp... (cached) yes checking for stricmp... no checking for strncasecmp... (cached) yes checking for strnicmp... no checking for strsep... (cached) yes checking for strnlen... (cached) yes checking for strrchrnul... no checking for iscntrl... yes checking for isascii... (cached) yes checking for mempcpy... yes checking for mempset... no checking for getuid... (cached) yes checking for getgid... (cached) yes checking for getrlimit... (cached) yes checking for realpath... (cached) yes checking for canonicalize_file_name... no checking for _fullpath... no checking for pathconf... (cached) yes checking for _LARGEFILE_SOURCE value needed for large files... no checking for _fseeki64... no checking for ftruncate... yes checking for _chsize... no checking for _chsize_s... no checking for fileno... (cached) yes checking for _fileno... no checking for getpagesize... (cached) yes checking for working mmap... (cached) yes checking for getpagesize... (cached) yes checking for sysconf... (cached) yes checking for access... yes checking for _access... yes checking for faccessat... yes checking for __builtin_expect... yes checking for intrin.h... no checking for __builtin_clz... yes checking for __builtin_clzl... yes checking for __builtin_clzll... yes checking for _BitScanReverse... no checking for _BitScanReverse64... no checking for sprintf... snprintf checking for vsnprintf... vsnprintf checking for strlcpy... (cached) yes checking for strrchrnul... (cached) no checking for struct _stati64... no checking for struct stat... yes checking for stat... (cached) yes checking for _stati64... no checking for fstat... (cached) yes checking for _fstati64... no checking for S_ISREG... no checking for cc options needed to detect all undeclared functions... -fno-builtin checking whether strcasecmp is declared... yes checking whether stricmp is declared... no checking whether strncasecmp is declared... yes checking whether strnicmp is declared... no checking whether strsep is declared... (cached) yes checking whether strlcpy is declared... yes checking whether strnlen is declared... (cached) yes checking whether strrchrnul is declared... no checking for uintptr_t... (cached) yes checking for endian.h... no checking for sys/endian.h... yes checking for machine/endian.h... yes checking for cpu_to_le16... no checking for cpu_to_le32... no checking for cpu_to_le64... no checking for __cpu_to_le16... no checking for __cpu_to_le32... no checking for __cpu_to_le64... no checking for htole16... yes checking for htole32... yes checking for htole64... yes checking for __bswap_16... no checking for __bswap_32... no checking for __bswap_64... no checking for __builtin_bswap16... yes checking for __builtin_bswap32... yes checking for __builtin_bswap64... yes checking for _byteswap_ushort... no checking for _byteswap_ulong... no checking for _byteswap_uint64... no checking for __builtin_constant_p... yes checking for __builtin_choose_expr... yes checking if cc accepts -Werror=attributes... yes checking if cc supports the noreturn function attribute... yes checking if cc supports the noreturn function attribute on pointers... yes checking if cc supports the returns_nonnull function attribute... yes checking if cc supports the returns_nonnull function attribute on pointers... no checking if cc supports the malloc function attribute... yes checking if cc supports the malloc function attribute on pointers... no checking if cc supports the alloc_size(1) function attribute... yes checking if cc supports the alloc_size(1) function attribute on pointers... yes checking if cc supports the alloc_size(1,2) function attribute... no checking if cc supports the alloc_size(1,2) function attribute on pointers... no checking if cc supports the sentinel function attribute... yes checking if cc supports the sentinel function attribute on pointers... no checking if cc supports the format(printf,1,2) function attribute... yes checking if cc supports the format(printf,1,2) function attribute on pointers... yes checking if cc supports the const function attribute... yes checking if cc supports the const function attribute on pointers... yes checking if cc supports the pure function attribute... yes checking if cc supports the pure function attribute on pointers... yes checking if cc supports the cold function attribute... yes checking if cc supports the cold function attribute on pointers... no checking if cc supports the unused function attribute... yes checking if cc supports the unused function attribute on pointers... yes checking if cc supports the error function attribute... no checking if cc accepts -ffunction-sections... yes checking if cc accepts -fdata-sections... yes checking if cc accepts -Wl,--gc-sections... yes checking if cc accepts -fvisibility=hidden... yes checking if cc accepts -Wall... yes checking if cc accepts -W... yes checking if cc accepts -pedantic... yes checking if cc accepts -Wc90-c99-compat... no checking if cc accepts -Wc99-compat... yes checking if cc accepts -Wc99-extensions... yes checking if cc accepts -Wpedantic-ms-format... no checking if cc accepts -Wlong-long... yes checking if cc accepts -Wstringop-truncation... no checking if cc accepts -Wshift-negative-value... yes checking if cc accepts -Werror=implicit... yes checking if cc accepts -Werror=missing-braces... yes checking if cc accepts -Werror=return-type... yes checking if cc accepts -Werror=trigraphs... yes checking if cc accepts -Werror=pointer-arith... yes checking if cc accepts -Werror=strict-prototypes... yes checking if cc accepts -Werror=missing-prototypes... yes checking if cc accepts -Werror=missing-declarations... yes checking if cc accepts -Werror=comment... yes checking if cc accepts -Werror=vla... yes checking if cc supports C99 external inlines... yes checking if cc supports typeof... __typeof configure: creating ./config.status config.status: creating Makefile config.status: creating doc/Makefile config.status: creating config/config.h =========================================================================== =======================<phase: build >============================ ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Building for nasm-2.16.01,1 gmake[1]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' /bin/mkdir -p stdlib nasmlib output asm disasm x86 common macros test doc nsis gmake nasm ndisasm gmake[2]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o stdlib/snprintf.o stdlib/snprintf.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o stdlib/strlcpy.o stdlib/strlcpy.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o stdlib/strnlen.o stdlib/strnlen.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o stdlib/strrchrnul.o stdlib/strrchrnul.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/ver.o nasmlib/ver.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/asprintf.o nasmlib/asprintf.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/errfile.o nasmlib/errfile.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/crc32.o nasmlib/crc32.c gmake[3]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/crc64.o nasmlib/crc64.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/md5c.o nasmlib/md5c.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/string.o nasmlib/string.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/nctype.o nasmlib/nctype.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/ilog2.o nasmlib/ilog2.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/realpath.o nasmlib/realpath.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/rlimit.o nasmlib/rlimit.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/zerobuf.o nasmlib/zerobuf.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/bsi.o nasmlib/bsi.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/rbtree.o nasmlib/rbtree.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/raa.o nasmlib/raa.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/saa.o nasmlib/saa.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/strlist.o nasmlib/strlist.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/perfhash.o nasmlib/perfhash.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o nasmlib/badenum.o nasmlib/badenum.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o x86/insnsn.o x86/insnsn.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o x86/regs.o x86/regs.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o x86/regvals.o x86/regvals.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o x86/regdis.o x86/regdis.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o x86/iflag.o x86/iflag.c cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o asm/directbl.o asm/directbl.c : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[4]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o asm/pptok.o asm/pptok.c gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[5]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[6]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[7]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[8]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[9]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[10]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[11]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[12]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' nasmlib/rlimit.c:65:29: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'rlim_t' (aka 'long') [-Wsign-compare] (size_t)rl.rlim_cur != rl.rlim_cur) ~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~ 1 warning generated. : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[13]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[14]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[15]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[16]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o asm/srcfile.o asm/srcfile.c gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[17]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' cc -c -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=c17 -Werror=unknown-warning-option -fwrapv -U__STRICT_ANSI__ -fno-common -Werror=attributes -ffunction-sections -fdata-sections -fvisibility=hidden -Wall -W -pedantic -Wc99-compat -Wc99-extensions -Wno-long-long -Wno-shift-negative-value -Werror=implicit -Werror=missing-braces -Werror=return-type -Werror=trigraphs -Werror=pointer-arith -Werror=strict-prototypes -Werror=missing-prototypes -Werror=missing-declarations -Werror=comment -Werror=vla -DHAVE_CONFIG_H -I. -I. -I./include -I./include -I./x86 -I./x86 -I./asm -I./asm -I./disasm -I./disasm -I./output -I./output -o disasm/sync.o disasm/sync.c : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[18]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[19]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time gmake asm/warnings.c.time include/warnings.h.time doc/warnings.src.time gmake[20]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' : > asm/warnings.time etc etc
Added to poudriere.conf USE_TMPFS="all" (was already there) TMPFS_BLACKLIST="rust nasm" TMPFS_BLACKLIST_TMPDIR=/data/cache/tmp That built nasm in 10 seconds or so. Thanks for that tip/pointer.
Oh sorry, that pointer was actually on ports@ Oh well: ports-mgmt/poudriere-devel seems to have it, but ports-mgmt/poudriere doesn't. [1] https://github.com/freebsd/poudriere/issues/888 [2] https://github.com/freebsd/poudriere/commit/56233a1aaea1be59dcc111e7b3f97b6e891bb06a
I am sorry for the issue. I had tested the port with default options on {i386,amd64} {12.4,13.1,14.0}, but my builds were successfull: I probably missed the issue because I use poudriere-devel with USE_TMPFS=data. I will investigate the issue. In the meantime, please note that the commit breaking nasm has been reverted in https://cgit.freebsd.org/ports/commit/?id=102f7173426ac4122afd355205aa141bb50b2803 . I add poudriere's maintainer to CC in case he is able to help.
Adding nasm to TMPFS_BLACKLIST (yeah, I'm running poudriere-git too, too bad the TMPFS feature is not released yet, as I have problems building alot without that feature), seems to help with build. But staging fails, probably some other error though. With default option RDOFF=on: =======================<phase: stage >============================ ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Staging for nasm-2.16.01,1 ===> Generating temporary packing list gmake[1]: Entering directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' /bin/mkdir -p /wrkdirs/usr/ports/devel/nasm/work/stage/usr/local/bin install -s -m 555 nasm ndisasm /wrkdirs/usr/ports/devel/nasm/work/stage/usr/local/bin/ /bin/mkdir -p /wrkdirs/usr/ports/devel/nasm/work/stage/usr/local/man/man1 install -m 0644 ./nasm.1 /wrkdirs/usr/ports/devel/nasm/work/stage/usr/local/man/man1/nasm.1 install -m 0644 ./ndisasm.1 /wrkdirs/usr/ports/devel/nasm/work/stage/usr/local/man/man1/ndisasm.1 gmake[1]: *** No rule to make target 'install_rdf'. Stop. gmake[1]: Leaving directory '/wrkdirs/usr/ports/devel/nasm/work/nasm-2.16.01' *** Error code 2 Stop. make: stopped in /usr/ports/devel/nasm =>> Cleaning up wrkdir ===> Cleaning for nasm-2.16.01,1 build of devel/nasm | nasm-2.16.01,1 ended at Fri Dec 23 20:07:51 CET 2022 build time: 00:00:26 !!! build failure encountered !!! With RDOFF=off, it builds fine.
(In reply to Johan Ström from comment #6) Yes, the issue about RDOFF has been reported as well, but this should be easier to fix hopefully. I should have tested non-default options too. Sorry about that as well. As written in comment #5 the commit has been reverted and this fixes RDOFF too for now. I will be much more careful next time I attempt the update, sorry.
Great, thanks for quick fix & response!
Here is what is going on (manually entered commands, not a script). First under a tmpfs: # df -m Filesystem 1M-blocks Used Avail Capacity Mounted on /dev/ufs/rootfs 221683 97879 106068 48% / devfs 0 0 0 100% /dev /dev/msdosfs/MSDOSBOOT 49 31 18 62% /boot/msdos tmpfs 7716 0 7716 0% /tmp # cd /tmp # : > mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 08:56:53 2022 mmjnk.test # : > mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 08:56:53 2022 mmjnk.test (no time change). The makefile involved is using ": > NAME" notation to try to update timestamps on deliberately empty files. Vs. under (for example) UFS: # cd ~/ # : > mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:00:45 2022 mmjnk.test # : > mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:00:54 2022 mmjnk.test (time changed). Back in tmpfs land . . . Part of this is that the file is already of size zero and continues to be so. By contrast, starting with a file with 15 bytes in it: # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 15 Mar 9 09:07:38 2022 mmjnk.test # : > mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:07:49 2022 mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:07:49 2022 mmjnk.test The lack of a timestamp change when the file already has size zero looks like an example of a bug to me. truncate for tmpfs files behaves similarly (showing just the lack of timestamp change context): # truncate -s 0 mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:11:31 2022 mmjnk.test # truncate -s 0 mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:11:31 2022 mmjnk.test (UFS got a timestamp update from such a sequence.) I'll note that touch does not get this tmpfs behavior: # touch mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:11:26 2022 mmjnk.test # touch mmjnk.test # ls -Tld mmjnk.test -rw-r--r-- 1 root wheel 0 Mar 9 09:11:31 2022 mmjnk.test (But it would not force size zero on its down.) I did these tests on: # uname -apKU FreeBSD generic 13.1-STABLE FreeBSD 13.1-STABLE #0 stable/13-n253133-b51ee7ac252c: Wed Nov 23 03:36:16 UTC 2022 root@releng3.nyi.freebsd.org:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC arm64 aarch64 1301509 1301509 However, I previously did a devel/nasm bulk test with with USE_TMPFS=all on: # uname -apKU FreeBSD amd64_ZFS 14.0-CURRENT FreeBSD 14.0-CURRENT #55 main-n259064-f83db6441a2f-dirty: Sun Nov 6 16:31:55 PST 2022 root@amd64_ZFS:/usr/obj/BUILDs/main-amd64-nodbg-clang/usr/main-src/amd64.amd64/sys/GENERIC-NODBG amd64 amd64 1400073 1400073 and it got the problem. (I normally use USE_TMPFS=data , which does not get the problem because the files in question end up not on a tmpfs.) So: not specific to amd64 , not specific to stable/13 , existed in early November in main. This may have been around for some time.
FYI: kib@ created review D37866 on Phablicator. See discussions on freebsd-stable ML [1] for details, starting from [1]. *Beware! The thread is broken twice. [1] https://lists.freebsd.org/archives/freebsd-stable/2022-December/001008.html [2] https://lists.freebsd.org/archives/freebsd-stable/2022-December/001002.html
(In reply to Tomoaki AOKI from comment #10) I'll note that when I looked at the source code involved, it appears to go back to when tmpfs was added (2007). So it appears that all all versions of FreeBSD since then have the issue. The "bringing machine down" risk in build activity that tries to use tmpfs file time relationships for driving dependency related activity has been there for a very long time.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=860399eb86cc431412bfbce0ab76c6652e5b6c07 commit 860399eb86cc431412bfbce0ab76c6652e5b6c07 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2022-12-24 00:11:05 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2022-12-24 06:32:48 +0000 tmpfs: update changed/modified timestamps for truncates that do not change size While there, move all error checks into the common place at the start, and eliminate the 'out' label. PR: 268528 Analyzed and tested by: Mark Millard <marklmi@yahoo.com> Reviewed by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D37866 sys/fs/tmpfs/tmpfs_subr.c | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-)
(In reply to Mark Millard from comment #9) Thanks for your analysis. Back to devel/nasm: I guess we will need s/: >/touch/ in Makefile.in for the time being.
Created attachment 239118 [details] nasm update Here is a second attempt to update devel/nasm. I have tested it succeffully on my machine both with and without poudriere, both with USE_TMPFS=data and with USE_TMPFS=all. If anyone would like to test it before I commit it, please do it and let me know if everything is fine.
testbuild using poudriere for 13.1amd looks fine. 14.0amd: also fine. USE_TMPFS=all is used. 14.0i386: fine as well. 12.4amd: fine. 12.3amd: fine. Thank you for working on this issue!
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=43e38d62eaa0b2dc1abf84e81ae18673ae619576 commit 43e38d62eaa0b2dc1abf84e81ae18673ae619576 Author: Lorenzo Salvadore <salvadore@FreeBSD.org> AuthorDate: 2022-12-29 10:48:39 +0000 Commit: Lorenzo Salvadore <salvadore@FreeBSD.org> CommitDate: 2022-12-30 23:11:48 +0000 devel/nasm: Update to 2.16.01 (second attempt) - The first attempt to update devel/nasm to version 2.16.01 failed due to a bug in tmpfs with updating timestamps using ": >". In particular, the bug is reproduced in poudriere using default configuration due to USE_TMPFS=all. The bug in tmpfs is being fixed, starting with commit 860399eb86cc431412bfbce0ab76c6652e5b6c07 in the src repository. Until the commit is merged in all officially supported FreeBSD versions, the patch files/patch-Makefile.in is necessary: it is a workaround that replaces ": >" with "touch" in Makefile.in [1]. - The file files/patch-d85890aa.c is being removed as it is now obsolete: the commit from which the patch was taken is already included in the update. - The RDOFF option has been removed as, according to the 2.16 changelog, "Support for the rdf format has been discontinued and all the RDOFF utilities has been removed." [2] Because of the RDOFF option removal, the list of installed files is now much shorter and pkg-plist has been replaced by PLIST_FILES as suggest by portlint. Changes: https://nasm.us/doc/nasmdocc.html PR: 268528 [1,2] Reported by: yasu, Johan Ström <johan@stromnet.se> and many others [1,2] Analyzed by: yasu and Mark Millard <marklmi26-fbsd@yahoo.com> [1] Tested by: pi devel/nasm/Makefile | 13 +- devel/nasm/distinfo | 10 +- devel/nasm/files/patch-Makefile.in (new) | 33 ++++ devel/nasm/files/patch-d85890aa.c (gone) | 301 ------------------------------- devel/nasm/pkg-plist (gone) | 22 --- 5 files changed, 44 insertions(+), 335 deletions(-)
Hopefully this commit updates devel/nasm without any more issues. Thanks to everyone for helping with this update.
A commit in branch stable/13 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=2c88fb783f754982d1ef964e6c73386d152e9d03 commit 2c88fb783f754982d1ef964e6c73386d152e9d03 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2022-12-24 00:11:05 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2022-12-31 01:02:42 +0000 tmpfs: update changed/modified timestamps for truncates that do not change size PR: 268528 (cherry picked from commit 860399eb86cc431412bfbce0ab76c6652e5b6c07) sys/fs/tmpfs/tmpfs_subr.c | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-)