lib: allow to disable shared libraries
authorBaruch Siach <baruch@tkos.co.il>
Thu, 19 Apr 2018 09:28:11 +0000 (12:28 +0300)
committerBaruch Siach <baruch@tkos.co.il>
Thu, 19 Apr 2018 09:28:11 +0000 (12:28 +0300)
Just like BUILD_STATIC=no disables static libraries, BUILD_SHARED=no
disabled shared libraries. This is useful to support toolchains that do
not support shared libraries.

lib/Makefile

index dd33f50..976d57c 100644 (file)
@@ -42,6 +42,7 @@ LIBVER_MINOR := $(shell echo $(LIBVER_MINOR_SCRIPT))
 LIBVER_PATCH := $(shell echo $(LIBVER_PATCH_SCRIPT))
 LIBVER  := $(shell echo $(LIBVER_SCRIPT))
 
+BUILD_SHARED:=yes
 BUILD_STATIC:=yes
 
 CPPFLAGS+= -DXXH_NAMESPACE=LZ4_
@@ -92,6 +93,7 @@ ifeq ($(BUILD_STATIC),yes)  # can be disabled on command line
 endif
 
 $(LIBLZ4): $(SRCFILES)
+ifeq ($(BUILD_SHARED),yes)  # can be disabled on command line
        @echo compiling dynamic library $(LIBVER)
 ifneq (,$(filter Windows%,$(OS)))
        @$(CC) $(FLAGS) -DLZ4_DLL_EXPORT=1 -shared $^ -o dll\$@.dll
@@ -102,6 +104,7 @@ else
        @ln -sf $@ liblz4.$(SHARED_EXT_MAJOR)
        @ln -sf $@ liblz4.$(SHARED_EXT)
 endif
+endif
 
 liblz4: $(LIBLZ4)
 
@@ -159,9 +162,11 @@ ifeq ($(BUILD_STATIC),yes)
        @$(INSTALL_DATA) liblz4.a $(DESTDIR)$(LIBDIR)/liblz4.a
        @$(INSTALL_DATA) lz4frame_static.h $(DESTDIR)$(INCLUDEDIR)/lz4frame_static.h
 endif
+ifeq ($(BUILD_SHARED),yes)
        @$(INSTALL_PROGRAM) liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)
        @ln -sf liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_MAJOR)
        @ln -sf liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT)
+endif
        @echo Installing headers in $(INCLUDEDIR)
        @$(INSTALL_DATA) lz4.h $(DESTDIR)$(INCLUDEDIR)/lz4.h
        @$(INSTALL_DATA) lz4hc.h $(DESTDIR)$(INCLUDEDIR)/lz4hc.h