diff options
author | Josh Boyer <jwboyer@linux.vnet.ibm.com> | 2009-01-02 08:20:34 -0500 |
---|---|---|
committer | Jon Loeliger <jdl@jdl.com> | 2009-01-02 09:00:52 -0600 |
commit | 6272182b417a903a6b5c0d5d6a470957e919d8f4 (patch) | |
tree | e06191ef08ba39b8a58a0781c472dda7323dde17 /Makefile | |
parent | 787b599c8108f514645d9ee6256ee53dccc9db84 (diff) | |
download | dtc-6272182b417a903a6b5c0d5d6a470957e919d8f4.zip dtc-6272182b417a903a6b5c0d5d6a470957e919d8f4.tar.gz dtc-6272182b417a903a6b5c0d5d6a470957e919d8f4.tar.bz2 |
libfdt: Introduce libfdt shared library
Build a libfdt shared library in addition to the existing .a that is
created. Symbol versioning is used from the libfdt/version.lds script.
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -16,7 +16,7 @@ LOCAL_VERSION = CONFIG_LOCALVERSION = CPPFLAGS = -I libfdt -CFLAGS = -Wall -g -Os -Wpointer-arith -Wcast-qual +CFLAGS = -Wall -g -Os -fPIC -Wpointer-arith -Wcast-qual BISON = bison LEX = flex @@ -115,19 +115,23 @@ endif # LIBFDT_objdir = libfdt LIBFDT_srcdir = libfdt -LIBFDT_lib = $(LIBFDT_objdir)/libfdt.a +LIBFDT_archive = $(LIBFDT_objdir)/libfdt.a +LIBFDT_lib = $(LIBFDT_objdir)/libfdt.so LIBFDT_include = $(addprefix $(LIBFDT_srcdir)/,$(LIBFDT_INCLUDES)) +LIBFDT_version = $(addprefix $(LIBFDT_srcdir)/,$(LIBFDT_VERSION)) include $(LIBFDT_srcdir)/Makefile.libfdt .PHONY: libfdt -libfdt: $(LIBFDT_lib) +libfdt: $(LIBFDT_archive) $(LIBFDT_lib) +$(LIBFDT_archive): $(addprefix $(LIBFDT_objdir)/,$(LIBFDT_OBJS)) $(LIBFDT_lib): $(addprefix $(LIBFDT_objdir)/,$(LIBFDT_OBJS)) libfdt_clean: @$(VECHO) CLEAN "(libfdt)" rm -f $(addprefix $(LIBFDT_objdir)/,$(STD_CLEANFILES)) + rm -f $(LIBFDT_objdir)/*.so ifneq ($(DEPTARGETS),) -include $(LIBFDT_OBJS:%.o=$(LIBFDT_objdir)/%.d) @@ -215,6 +219,11 @@ clean: libfdt_clean tests_clean @$(VECHO) AR $@ $(AR) $(ARFLAGS) $@ $^ +$(LIBFDT_lib): + @$(VECHO) LD $@ + $(CC) $(LDFLAGS) -fPIC -Wl,--version-script=$(LIBFDT_version) -Wl,-soname,$(notdir $@) -shared -o $(LIBFDT_objdir)/libfdt-$(DTC_VERSION).so $^ + ln -s libfdt-$(DTC_VERSION).so $(LIBFDT_objdir)/libfdt.so + %.lex.c: %.l @$(VECHO) LEX $@ $(LEX) -o$@ $< |