1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
--- a/common.mk
+++ b/common.mk
@@ -2,6 +2,16 @@ CC := $(CROSS)gcc
AR := $(CROSS)ar
RANLIB := $(CROSS)ranlib
+ifeq ($(STATIC),1)
+ 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)")
--- 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))
LDFLAGS_jffs2reader = $(ZLIBLDFLAGS) $(LZOLDFLAGS)
-LDLIBS_jffs2reader = -lz $(LZOLDLIBS)
+LDLIBS_jffs2reader = $(call static_link,-lz $(LZOLDLIBS))
$(foreach v,$(MTD_BINS),$(eval $(call mkdep,,$(v))))
@@ -114,7 +114,7 @@ else
LZOLDLIBS = -llzo2
endif
-LDLIBS_mkfs.ubifs = -lz $(LZOLDLIBS) -lm -luuid
+LDLIBS_mkfs.ubifs = $(call static_link,-lz $(LZOLDLIBS)) -lm $(call static_link,-luuid)
$(call mkdep,mkfs.ubifs/,mkfs.ubifs,,ubi-utils/libubi.a)
#
|