Module Name: src Committed By: uwe Date: Sun Apr 23 02:01:33 UTC 2023
Modified Files: src: build.sh Log Message: build.sh: tweak rumptest and RUMP_LIBSETS Use --no-whole-archive to keep us as honest as currently possible. PR kern/56599 To generate a diff of this commit: cvs rdiff -u -r1.366 -r1.367 src/build.sh Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/build.sh diff -u src/build.sh:1.366 src/build.sh:1.367 --- src/build.sh:1.366 Mon Mar 13 11:52:29 2023 +++ src/build.sh Sun Apr 23 02:01:33 2023 @@ -1,5 +1,5 @@ #! /usr/bin/env sh -# $NetBSD: build.sh,v 1.366 2023/03/13 11:52:29 martin Exp $ +# $NetBSD: build.sh,v 1.367 2023/04/23 02:01:33 uwe Exp $ # # Copyright (c) 2001-2022 The NetBSD Foundation, Inc. # All rights reserved. @@ -2010,7 +2010,7 @@ createmakewrapper() eval cat <<EOF ${makewrapout} #! ${HOST_SH} # Set proper variables to allow easy "make" building of a NetBSD subtree. -# Generated from: \$NetBSD: build.sh,v 1.366 2023/03/13 11:52:29 martin Exp $ +# Generated from: \$NetBSD: build.sh,v 1.367 2023/04/23 02:01:33 uwe Exp $ # with these arguments: ${_args} # @@ -2256,21 +2256,42 @@ installworld() # Above all, note that THIS IS NOT A SUBSTITUTE FOR A FULL BUILD. # -RUMP_LIBSETS=' - -lrumpvfs_nofifofs -lrumpvfs -lrump, - -lrumpvfs_nofifofs -lrumpvfs -lrumpdev -lrump, - -lrumpvfs_nofifofs -lrumpvfs - -lrumpnet_virtif -lrumpnet_netinet -lrumpnet_net -lrumpnet -lrump, - -lrumpkern_tty -lrumpvfs_nofifofs -lrumpvfs -lrump, - -lrumpfs_tmpfs -lrumpvfs_nofifofs -lrumpvfs -lrump, - -lrumpfs_ffs -lrumpfs_msdos -lrumpvfs_nofifofs -lrumpvfs -lrumpdev_disk -lrumpdev -lrump, +# XXX: uwe: kern/56599 - while riastradh addressed librump problems, +# there are still unwanted dependencies: +# net -> net_net +# vfs -> fifo +# dev -> vfs + +# -lrumpvfs -> $LRUMPVFS for now +LRUMPVFS="-lrumpvfs -lrumpvfs_nofifofs" + +# -lrumpdev -> $LRUMPDEV +# XXX: this may hide problems with other rump libraries that are not +# supposed to depend on vfs but accidentally do +LRUMPDEV="-lrumpdev $LRUMPVFS" + +RUMP_LIBSETS=" + -lrump, + -lrumpvfs + --no-whole-archive -lrumpvfs_nofifofs -lrump, + -lrumpdev + --no-whole-archive $LRUMPVFS -lrump, + -lrumpkern_tty + --no-whole-archive $LRUMPVFS -lrump, + -lrumpfs_tmpfs + --no-whole-archive $LRUMPVFS -lrump, + -lrumpfs_ffs -lrumpfs_msdos + --no-whole-archive $LRUMPVFS -lrumpdev_disk $LRUMPDEV -lrump, -lrumpnet_virtif -lrumpnet_netinet -lrumpnet_net -lrumpnet - -lrumpdev -lrumpvfs_nofifofs -lrumpvfs -lrump, - -lrumpnet_sockin -lrumpfs_nfs - -lrumpnet_virtif -lrumpnet_netinet -lrumpnet_net -lrumpnet - -lrumpvfs_nofifofs -lrumpvfs -lrump, - -lrumpdev_cgd -lrumpdev_raidframe -lrumpdev_disk -lrumpdev_rnd - -lrumpdev_dm -lrumpdev -lrumpvfs_nofifofs -lrumpvfs -lrumpkern_crypto -lrump' + --no-whole-archive -lrump, + -lrumpfs_nfs + --no-whole-archive $LRUMPVFS + -lrumpnet_sockin -lrumpnet_virtif -lrumpnet_netinet + --start-group -lrumpnet_net -lrumpnet --end-group -lrump, + -lrumpdev_cgd -lrumpdev_raidframe -lrumpdev_rnd -lrumpdev_dm + --no-whole-archive $LRUMPVFS -lrumpdev_disk $LRUMPDEV -lrumpkern_crypto -lrump +" + dorump() { local doclean="" @@ -2312,7 +2333,7 @@ dorump() for set in ${RUMP_LIBSETS} ; do IFS="${oIFS}" ${runcmd} ${tool_ld} -nostdlib -L${DESTDIR}/usr/lib \ - -static --whole-archive -lpthread -lc ${set} 2>&1 -o /tmp/rumptest.$$ | \ + -static --whole-archive ${set} --no-whole-archive -lpthread -lc 2>&1 -o /tmp/rumptest.$$ | \ awk -v quirks="${md_quirks}" ' /undefined reference/ && !/more undefined references.*follow/{