Bug 260132

Summary: 12-STABLE and 12.2-RELEASE, and 12.3-RELEASE fail to build with all WITHOUT_* build options enabled
Product: Base System Reporter: Michael Dexter <editor>
Component: binAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Some People    
Priority: ---    
Version: 12.2-STABLE   
Hardware: Any   
OS: Any   

Description Michael Dexter 2021-11-30 06:10:30 UTC
The 12-STABLE branch fails to build if all WITHOUT_* build options are enabled minus those which do not support build targets: WITHOUT_AUTO_OBJ WITHOUT_UNIFIED_OBJDIR WITHOUT_INSTALLLIB

Build host: 13.0-RELEASE

Exact commit tested: 8facf7082d4973aedc30cdd8e90fbd33beb17d7f

Clues:

-- wcsxfrm.nossppico ---
In file included from /b/12-STABLE/src/lib/libc/string/wcsxfrm.c:42:
In file included from /b/12-STABLE/src/lib/libc/locale/collate.h:44:
/b/12-STABLE/src/lib/libc/locale/xlocale_private.h:170:18: warning: passing 'long *' to parameter of type 'volatile u_long *' (aka 'volatile unsigned long *') converts between pointers to integer types with different sign [-Wpointer-sign]
        atomic_add_long(&(obj->retain_count), 1);
                        ^~~~~~~~~~~~~~~~~~~~
/b/12-STABLE/obj/b/12-STABLE/src/amd64.amd64/tmp/usr/include/machine/atomic.h:451:1: note: passing argument to parameter 'p' here
ATOMIC_ASM(add,      long,  "addq %1,%0",  "er",  v);
^
/b/12-STABLE/obj/b/12-STABLE/src/amd64.amd64/tmp/usr/include/machine/atomic.h:148:43: note: expanded from macro 'ATOMIC_ASM'
atomic_##NAME##_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\
                                          ^
In file included from /b/12-STABLE/src/lib/libc/string/wcsxfrm.c:42:
In file included from /b/12-STABLE/src/lib/libc/locale/collate.h:44:
/b/12-STABLE/src/lib/libc/locale/xlocale_private.h:183:31: warning: passing 'long *' to parameter of type 'volatile u_long *' (aka 'volatile unsigned long *') converts between pointers to integer types with different sign [-Wpointer-sign]
        count = atomic_fetchadd_long(&(obj->retain_count), -1) - 1;
                                     ^~~~~~~~~~~~~~~~~~~~
/b/12-STABLE/obj/b/12-STABLE/src/amd64.amd64/tmp/usr/include/machine/atomic.h:246:39: note: passing argument to parameter 'p' here
atomic_fetchadd_long(volatile u_long *p, u_long v)
                                      ^
--- wcswidth.nossppico ---
2 warnings generated.
--- wcsxfrm.nossppico ---
2 warnings generated.
--- libc_pic.a ---
ranlib -D libc_pic.a
--- libc.a ---
ranlib -D libc.a
--- libc.so.7 ---
ld: error: freebsd11_mknodat.pico: symbol mknodat@FBSD_1.1 has undefined version FBSD_1.1
ld: error: freebsd11_fstatat.pico: symbol fstatat@FBSD_1.1 has undefined version FBSD_1.1
ld: error: freebsd11_fhstatfs.pico: symbol fhstatfs@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_fstatfs.pico: symbol fstatfs@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_statfs.pico: symbol statfs@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_getfsstat.pico: symbol getfsstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_kevent.pico: symbol kevent@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_fhstat.pico: symbol fhstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_nlstat.pico: symbol nlstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_nfstat.pico: symbol nfstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_nstat.pico: symbol nstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_getdents.pico: symbol getdents@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd7_shmctl.pico: symbol shmctl@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd7_msgctl.pico: symbol msgctl@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_getdirentries.pico: symbol getdirentries@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_lstat.pico: symbol lstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_fstat.pico: symbol fstat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_stat.pico: symbol stat@FBSD_1.0 has undefined version FBSD_1.0
ld: error: freebsd11_mknod.pico: symbol mknod@FBSD_1.0 has undefined version FBSD_1.0
ld: error: swapcontext.pico: symbol swapcontext@@FBSD_1.2 has undefined version FBSD_1.2
ld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** [libc.so.7] Error code 1

make[4]: stopped in /b/12-STABLE/src/lib/libc
1 error

Full build output: https://callfortesting.org/results/bos-ci/1637108704-12-STABLE.log
Comment 1 Michael Dexter 2021-11-30 06:49:42 UTC
Also confirmed on 12.2-RELEASE and 12.3-RELEASE. Build logs:

https://callfortesting.org/results/bos-ci/1635972800-12.2-RELEASE.log

https://callfortesting.org/results/bos-ci/1637334870-12.3-RELEASE.log