From: Theodore Ts'o Date: Mon, 31 Jan 2022 20:24:54 +0000 (-0500) Subject: xfsprogs: fix static build problems caused by liburcu X-Git-Tag: v5.15.0-rc0~45 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b3aba5752d11f2a01d79ca88fee9cd5ed3cf616a;p=thirdparty%2Fxfsprogs-dev.git xfsprogs: fix static build problems caused by liburcu The liburcu library has a dependency on pthreads. Hence, in order for static builds of xfsprogs to work, $(LIBPTHREAD) needs to appear *after* $(LUBURCU) in LLDLIBS. Otherwise, static links of xfs_* will fail due to undefined references of pthread_create, pthread_exit, et. al. Signed-off-by: Theodore Ts'o Reviewed-by: Darrick J. Wong Signed-off-by: Darrick J. Wong Signed-off-by: Eric Sandeen --- diff --git a/copy/Makefile b/copy/Makefile index 1b00cd0d5..55160f848 100644 --- a/copy/Makefile +++ b/copy/Makefile @@ -9,8 +9,8 @@ LTCOMMAND = xfs_copy CFILES = xfs_copy.c HFILES = xfs_copy.h -LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBPTHREAD) $(LIBRT) \ - $(LIBURCU) +LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBURCU) \ + $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) $(LIBFROG) LLDFLAGS = -static-libtool-libs diff --git a/db/Makefile b/db/Makefile index 5c0178982..b2e011745 100644 --- a/db/Makefile +++ b/db/Makefile @@ -18,8 +18,8 @@ CFILES = $(HFILES:.h=.c) btdump.c btheight.c convert.c info.c namei.c \ timelimit.c LSRCFILES = xfs_admin.sh xfs_ncheck.sh xfs_metadump.sh -LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) \ - $(LIBURCU) +LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBURCU) \ + $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) $(LIBFROG) LLDFLAGS += -static-libtool-libs diff --git a/growfs/Makefile b/growfs/Makefile index 08601de77..2f4cc66a7 100644 --- a/growfs/Makefile +++ b/growfs/Makefile @@ -9,8 +9,8 @@ LTCOMMAND = xfs_growfs CFILES = xfs_growfs.c -LLDLIBS = $(LIBXFS) $(LIBXCMD) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) \ - $(LIBURCU) +LLDLIBS = $(LIBXFS) $(LIBXCMD) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBURCU) \ + $(LIBPTHREAD) ifeq ($(ENABLE_EDITLINE),yes) LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) diff --git a/logprint/Makefile b/logprint/Makefile index cdedbd0db..bbbed5d25 100644 --- a/logprint/Makefile +++ b/logprint/Makefile @@ -12,8 +12,8 @@ CFILES = logprint.c \ log_copy.c log_dump.c log_misc.c \ log_print_all.c log_print_trans.c log_redo.c -LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) \ - $(LIBURCU) +LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBURCU) \ + $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) $(LIBFROG) LLDFLAGS = -static-libtool-libs diff --git a/mdrestore/Makefile b/mdrestore/Makefile index 8f28ddab3..4a932efb8 100644 --- a/mdrestore/Makefile +++ b/mdrestore/Makefile @@ -8,8 +8,7 @@ include $(TOPDIR)/include/builddefs LTCOMMAND = xfs_mdrestore CFILES = xfs_mdrestore.c -LLDLIBS = $(LIBXFS) $(LIBFROG) $(LIBRT) $(LIBPTHREAD) $(LIBUUID) \ - $(LIBURCU) +LLDLIBS = $(LIBXFS) $(LIBFROG) $(LIBRT) $(LIBUUID) $(LIBURCU) $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBFROG) LLDFLAGS = -static diff --git a/mkfs/Makefile b/mkfs/Makefile index 811ba9dbe..9f6a4fadb 100644 --- a/mkfs/Makefile +++ b/mkfs/Makefile @@ -10,8 +10,8 @@ LTCOMMAND = mkfs.xfs HFILES = CFILES = proto.c xfs_mkfs.c -LLDLIBS += $(LIBXFS) $(LIBXCMD) $(LIBFROG) $(LIBRT) $(LIBPTHREAD) $(LIBBLKID) \ - $(LIBUUID) $(LIBINIH) $(LIBURCU) +LLDLIBS += $(LIBXFS) $(LIBXCMD) $(LIBFROG) $(LIBRT) $(LIBBLKID) \ + $(LIBUUID) $(LIBINIH) $(LIBURCU) $(LIBPTHREAD) LTDEPENDENCIES += $(LIBXFS) $(LIBXCMD) $(LIBFROG) LLDFLAGS = -static-libtool-libs diff --git a/repair/Makefile b/repair/Makefile index 47536ca1c..2c40e59a3 100644 --- a/repair/Makefile +++ b/repair/Makefile @@ -72,7 +72,7 @@ CFILES = \ xfs_repair.c LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBXCMD) $(LIBFROG) $(LIBUUID) $(LIBRT) \ - $(LIBPTHREAD) $(LIBBLKID) $(LIBURCU) + $(LIBBLKID) $(LIBURCU) $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) $(LIBXCMD) $(LIBFROG) LLDFLAGS = -static-libtool-libs diff --git a/scrub/Makefile b/scrub/Makefile index 849e3afd5..fd6bb6796 100644 --- a/scrub/Makefile +++ b/scrub/Makefile @@ -71,8 +71,8 @@ spacemap.c \ vfs.c \ xfs_scrub.c -LLDLIBS += $(LIBHANDLE) $(LIBFROG) $(LIBPTHREAD) $(LIBICU_LIBS) $(LIBRT) \ - $(LIBURCU) +LLDLIBS += $(LIBHANDLE) $(LIBFROG) $(LIBICU_LIBS) $(LIBRT) $(LIBURCU) \ + $(LIBPTHREAD) LTDEPENDENCIES += $(LIBHANDLE) $(LIBFROG) LLDFLAGS = -static