[PATCH 3/3] rump: Fix rumptest target && enable separate rump target

Damien Zammit <[email protected]>
Newsgroups gmane.os.netbsd.devel.toolchain,gmane.os.netbsd.devel.userlevel
Message-ID <[email protected]>
Signed-off-by: Damien Zammit <[email protected]>
---
 build.sh | 42 ++++++++++++++++++++++++------------------
 1 file changed, 24 insertions(+), 18 deletions(-)

diff --git a/build.sh b/build.sh
index 4d1f8685e142..be70b3bfc4e5 100755
--- a/build.sh
+++ b/build.sh
@@ -2212,29 +2212,25 @@ installworld()
 #
 
 RUMP_LIBSETS='
-	-lrump,
-	-lrumpvfs -lrump,
-	-lrumpvfs -lrumpdev -lrump,
-	-lrumpnet -lrump,
-	-lrumpkern_tty -lrumpvfs -lrump,
-	-lrumpfs_tmpfs -lrumpvfs -lrump,
-	-lrumpfs_ffs -lrumpfs_msdos -lrumpvfs -lrumpdev_disk -lrumpdev -lrump,
+	-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,
 	-lrumpnet_virtif -lrumpnet_netinet -lrumpnet_net -lrumpnet
-	    -lrumpdev -lrumpvfs -lrump,
-	-lrumpnet_sockin -lrumpfs_smbfs -lrumpdev_netsmb
-	    -lrumpkern_crypto -lrumpdev -lrumpnet -lrumpvfs -lrump,
-	-lrumpnet_sockin -lrumpfs_nfs -lrumpnet -lrumpvfs -lrump,
+	    -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 -lrumpkern_crypto -lrump'
+	    -lrumpdev_dm -lrumpdev -lrumpvfs_nofifofs -lrumpvfs -lrumpkern_crypto -lrump'
 dorump()
 {
 	local doclean=""
 	local doobjs=""
 
-	# we cannot link libs without building csu, and that leads to lossage
-	[ "${1}" != "rumptest" ] && bomb 'build.sh rump not yet functional. ' \
-	    'did you mean "rumptest"?'
-
 	export RUMPKERN_ONLY=1
 	# create obj and distrib dirs
 	if [ "${MKOBJDIRS}" != "no" ]; then
@@ -2271,7 +2267,7 @@ dorump()
 	for set in ${RUMP_LIBSETS} ; do
 		IFS="${oIFS}"
 		${runcmd} ${tool_ld} -nostdlib -L${DESTDIR}/usr/lib	\
-		    -static --whole-archive ${set} 2>&1 -o /tmp/rumptest.$$ | \
+		    -static --whole-archive -lpthread -lc ${set} 2>&1 -o /tmp/rumptest.$$ | \
 		      awk -v quirks="${md_quirks}" '
 			/undefined reference/ &&
 			    !/more undefined references.*follow/{
@@ -2488,7 +2484,17 @@ main()
 			installworld "${arg}"
 			;;
 
-		rump|rumptest)
+		rump)
+			make_in_dir . do-distrib-dirs
+			make_in_dir . includes
+			make_in_dir lib/csu dependall
+			make_in_dir lib/csu install
+			make_in_dir external/gpl3/gcc/lib/libgcc dependall
+			make_in_dir external/gpl3/gcc/lib/libgcc install
+			dorump "${op}"
+			;;
+
+		rumptest)
 			dorump "${op}"
 			;;
 
-- 
2.25.2
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.