summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2015-09-17 13:07:48 +0000
committerJo-Philipp Wich <jow@openwrt.org>2015-09-17 13:07:48 +0000
commit1ca571b6c2978bec66f897b6665ddbdaba82a26e (patch)
treec54066f2c16ce05c155730bcf0d212672a1c109b
parentd6408aa9b4a2280a3b017ca9959e6f39dd18684b (diff)
downloadmtk-20170518-1ca571b6c2978bec66f897b6665ddbdaba82a26e.zip
mtk-20170518-1ca571b6c2978bec66f897b6665ddbdaba82a26e.tar.gz
mtk-20170518-1ca571b6c2978bec66f897b6665ddbdaba82a26e.tar.bz2
tools/mtd-utils: avoid linking libm statically
Rework static linker flags to not link libm statically, this should fix the build on CentOS where libm.a is not provided by the libc devel package. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 46989
-rw-r--r--tools/mtd-utils/patches/310-add-static-linking-option.patch40
1 files changed, 30 insertions, 10 deletions
diff --git a/tools/mtd-utils/patches/310-add-static-linking-option.patch b/tools/mtd-utils/patches/310-add-static-linking-option.patch
index 273aa85..810aea9 100644
--- a/tools/mtd-utils/patches/310-add-static-linking-option.patch
+++ b/tools/mtd-utils/patches/310-add-static-linking-option.patch
@@ -1,23 +1,43 @@
--- a/common.mk
+++ b/common.mk
-@@ -2,6 +2,11 @@ CC := $(CROSS)gcc
+@@ -2,6 +2,16 @@ CC := $(CROSS)gcc
AR := $(CROSS)ar
RANLIB := $(CROSS)ranlib
+ifeq ($(STATIC),1)
-+ LD_STATIC_ON := -Wl,-Bstatic
-+ LD_STATIC_OFF := -Wl,-Bdynamic
++ define static_link
++ -Wl,-Bstatic $(1) -Wl,-Bdynamic
++ endef
++else
++ define static_link
++ $(1)
++ endef
+endif
+
# Stolen from Linux build system
comma = ,
try-run = $(shell set -e; ($(1)) >/dev/null 2>&1 && echo "$(2)" || echo "$(3)")
-@@ -68,7 +73,7 @@ endef
+--- a/Makefile
++++ b/Makefile
+@@ -89,10 +89,10 @@ obj-mkfs.jffs2 = compr_rtime.o compr_zli
+ compr_lzma.o lzma/LzFind.o lzma/LzmaEnc.o lzma/LzmaDec.o \
+ compr.o rbtree.o
+ LDFLAGS_mkfs.jffs2 = $(ZLIBLDFLAGS) $(LZOLDFLAGS)
+-LDLIBS_mkfs.jffs2 = -lz $(LZOLDLIBS)
++LDLIBS_mkfs.jffs2 = $(call static_link,-lz $(LZOLDLIBS))
- %: %.o $(LDDEPS)
- $(call BECHO,LD)
-- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_$(notdir $@)) -g -o $@ $^ $(LDLIBS) $(LDLIBS_$(notdir $@))
-+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_$(notdir $@)) -g -o $@ $(LD_STATIC_ON) $^ $(LDLIBS) $(LDLIBS_$(notdir $@)) $(LD_STATIC_OFF)
+ LDFLAGS_jffs2reader = $(ZLIBLDFLAGS) $(LZOLDFLAGS)
+-LDLIBS_jffs2reader = -lz $(LZOLDLIBS)
++LDLIBS_jffs2reader = $(call static_link,-lz $(LZOLDLIBS))
- $(BUILDDIR)/%.a:
- $(call BECHO,AR)
+ $(foreach v,$(MTD_BINS),$(eval $(call mkdep,,$(v))))
+
+@@ -119,7 +119,7 @@ else
+ XZLDLIBS = -llzma
+ endif
+
+-LDLIBS_mkfs.ubifs = -lz $(LZOLDLIBS) $(XZLDLIBS) -lm -luuid
++LDLIBS_mkfs.ubifs = $(call static_link,-lz $(LZOLDLIBS) $(XZLDLIBS)) -lm $(call static_link,-luuid)
+ $(call mkdep,mkfs.ubifs/,mkfs.ubifs,,ubi-utils/libubi.a)
+
+ #