diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2015-09-14 14:51:07 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2015-09-14 14:51:07 +0000 |
commit | cf77766e64dfba8c72906edc3fdedaf71684ebc1 (patch) | |
tree | 35f5d7830942af7d275b7f333ba4d180d93b90de | |
parent | b4e49ad8f0c75f2c3f22e6bc8a8c1af7fddff258 (diff) | |
download | upstream-cf77766e64dfba8c72906edc3fdedaf71684ebc1.tar.gz upstream-cf77766e64dfba8c72906edc3fdedaf71684ebc1.tar.bz2 upstream-cf77766e64dfba8c72906edc3fdedaf71684ebc1.zip |
tools/mtd-utils: prefer static linking
- Add patch for optional static linking preference
- Prefer static linking on Linux systems
- Enable verbose compiler messages when building with V=c
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 46908
-rw-r--r-- | tools/mtd-utils/Makefile | 7 | ||||
-rw-r--r-- | tools/mtd-utils/patches/310-add-static-linking-option.patch | 23 |
2 files changed, 29 insertions, 1 deletions
diff --git a/tools/mtd-utils/Makefile b/tools/mtd-utils/Makefile index f831e3c348..e06d1379a1 100644 --- a/tools/mtd-utils/Makefile +++ b/tools/mtd-utils/Makefile @@ -25,6 +25,9 @@ HOST_CFLAGS += -I$(STAGING_DIR_HOST)/include/e2fsprogs CFLAGS := $(HOST_CFLAGS) -I$(HOST_BUILD_DIR)/include -L$(HOST_BUILD_DIR) -L$(STAGING_DIR_HOST)/lib -DNO_NATIVE_SUPPORT ifneq ($(HOST_OS),Linux) CFLAGS += -Dloff_t=off_t -D__BYTE_ORDER=BYTE_ORDER -include getline.h -include endian.h -I$(CURDIR)/include -include fls.h +MTD_STATIC := 0 +else +MTD_STATIC := 1 endif MTD_MAKEOPTS = \ @@ -32,7 +35,9 @@ MTD_MAKEOPTS = \ LDFLAGS="$(HOST_LDFLAGS)" \ WITHOUT_LZO=1 WITHOUT_XATTR=1 \ SUBDIRS="" \ - BUILDDIR="$(HOST_BUILD_DIR)" + BUILDDIR="$(HOST_BUILD_DIR)" \ + STATIC=$(MTD_STATIC) \ + V=$(if $(findstring c,$(OPENWRT_VERBOSE)),1) define Host/Compile $(MAKE) -C $(HOST_BUILD_DIR) \ diff --git a/tools/mtd-utils/patches/310-add-static-linking-option.patch b/tools/mtd-utils/patches/310-add-static-linking-option.patch new file mode 100644 index 0000000000..273aa85e14 --- /dev/null +++ b/tools/mtd-utils/patches/310-add-static-linking-option.patch @@ -0,0 +1,23 @@ +--- a/common.mk ++++ b/common.mk +@@ -2,6 +2,11 @@ CC := $(CROSS)gcc + AR := $(CROSS)ar + RANLIB := $(CROSS)ranlib + ++ifeq ($(STATIC),1) ++ LD_STATIC_ON := -Wl,-Bstatic ++ LD_STATIC_OFF := -Wl,-Bdynamic ++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 + + %: %.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) + + $(BUILDDIR)/%.a: + $(call BECHO,AR) |