From 837e0a3bfe4b414a48c77aaf930b5e04b4e2c5e5 Mon Sep 17 00:00:00 2001 From: Romain Naour Date: Tue, 16 Dec 2014 22:06:26 +0100 Subject: [PATCH 1/1] xfsprogs: replaces -static with -static-libtool-libs xfsprogs relies on the original behaviour of -static which was modified by [1]. But since commit [2] the build of xfsprogs tools is broken because they try to link statically with the static libuuid library (util-linux), which is not built for shared only builds. The use of -static-libtool-libs allows to fallback to the dynamic linking for libuuid only: LD_TRACE_LOADED_OBJECTS=1 xfs_copy linux-gate.so.1 => (0xf7793000) libuuid.so.1 => /lib/libuuid.so.1 (0x465e1000) libpthread.so.0 => /lib/libpthread.so.0 (0x46db1000) librt.so.1 => /lib/librt.so.1 (0x46f21000) libc.so.6 => /lib/libc.so.6 (0x46bf1000) /lib/ld-linux.so.2 (0x46bce000) [1] http://git.buildroot.net/buildroot/commit/?id=97703978ac870ce2b14ad144f8e082de82aa2c64 [2] http://git.buildroot.net/buildroot/commit/?id=f1d3e09895b245da9d54bbaef36e5de95269034e Signed-off-by: Romain Naour --- copy/Makefile | 2 +- db/Makefile | 2 +- growfs/Makefile | 2 +- io/Makefile | 2 +- logprint/Makefile | 2 +- mkfs/Makefile | 2 +- repair/Makefile | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/copy/Makefile b/copy/Makefile index 54f6dfb..beabbd4 100644 --- a/copy/Makefile +++ b/copy/Makefile @@ -11,7 +11,7 @@ HFILES = xfs_copy.h LLDLIBS = $(LIBXFS) $(LIBUUID) $(LIBPTHREAD) $(LIBRT) LTDEPENDENCIES = $(LIBXFS) -LLDFLAGS = -static +LLDFLAGS = -static-libtool-libs default: depend $(LTCOMMAND) diff --git a/db/Makefile b/db/Makefile index 5c7d054..b4c49c6 100644 --- a/db/Makefile +++ b/db/Makefile @@ -18,7 +18,7 @@ LSRCFILES = xfs_admin.sh xfs_check.sh xfs_ncheck.sh xfs_metadump.sh LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) -LLDFLAGS += -static +LLDFLAGS += -static-libtool-libs ifeq ($(ENABLE_READLINE),yes) LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) diff --git a/growfs/Makefile b/growfs/Makefile index 88cbf4f..19616de 100644 --- a/growfs/Makefile +++ b/growfs/Makefile @@ -19,7 +19,7 @@ LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) endif LTDEPENDENCIES = $(LIBXFS) $(LIBXCMD) -LLDFLAGS = -static +LLDFLAGS = -static-libtool-libs LSRCFILES = xfs_info.sh default: depend $(LTCOMMAND) diff --git a/io/Makefile b/io/Makefile index 50edf91..89b465b 100644 --- a/io/Makefile +++ b/io/Makefile @@ -14,7 +14,7 @@ CFILES = init.c \ LLDLIBS = $(LIBXCMD) $(LIBHANDLE) LTDEPENDENCIES = $(LIBXCMD) $(LIBHANDLE) -LLDFLAGS = -static +LLDFLAGS = -static-libtool-libs ifeq ($(HAVE_FADVISE),yes) CFILES += fadvise.c diff --git a/logprint/Makefile b/logprint/Makefile index 2d656a4..7bcf27f 100644 --- a/logprint/Makefile +++ b/logprint/Makefile @@ -14,7 +14,7 @@ CFILES = logprint.c \ LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) -LLDFLAGS = -static +LLDFLAGS = -static-libtool-libs default: depend $(LTCOMMAND) diff --git a/mkfs/Makefile b/mkfs/Makefile index 75da633..fd1f615 100644 --- a/mkfs/Makefile +++ b/mkfs/Makefile @@ -21,7 +21,7 @@ endif LLDLIBS += $(LIBXFS) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) LTDEPENDENCIES += $(LIBXFS) -LLDFLAGS = -static +LLDFLAGS = -static-libtool-libs LSRCFILES = $(FSTYP).c LDIRT = $(FSTYP) diff --git a/repair/Makefile b/repair/Makefile index b0e03f8..e9db30f 100644 --- a/repair/Makefile +++ b/repair/Makefile @@ -22,7 +22,7 @@ CFILES = agheader.c attr_repair.c avl.c avl64.c bmap.c btree.c \ LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) -LLDFLAGS = -static +LLDFLAGS = -static-libtool-libs default: depend $(LTCOMMAND) -- 1.9.3