|
@@ -0,0 +1,44 @@
|
|
|
+Add support for static-only build
|
|
|
+
|
|
|
+Instead of unconditionally building shared libraries, this patch
|
|
|
+improves the libsepol build system with a "STATIC" variable, which
|
|
|
+when defined to some non-empty value, will disable the build of shared
|
|
|
+libraries. It allows to support cases where the target architecture
|
|
|
+does not have support for shared libraries.
|
|
|
+
|
|
|
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
|
+
|
|
|
+Index: b/src/Makefile
|
|
|
+===================================================================
|
|
|
+--- a/src/Makefile
|
|
|
++++ b/src/Makefile
|
|
|
+@@ -17,7 +17,12 @@
|
|
|
+ CFLAGS ?= -Werror -Wall -W -Wundef -Wshadow -Wmissing-noreturn -Wmissing-format-attribute
|
|
|
+ override CFLAGS += -I. -I../include -D_GNU_SOURCE
|
|
|
+
|
|
|
+-all: $(LIBA) $(LIBSO) $(LIBPC)
|
|
|
++ALL_TARGETS = $(LIBA) $(LIBPC)
|
|
|
++ifeq ($(STATIC),)
|
|
|
++ALL_TARGETS += $(LIBSO)
|
|
|
++endif
|
|
|
++
|
|
|
++all: $(ALL_TARGETS)
|
|
|
+
|
|
|
+ $(LIBA): $(OBJS)
|
|
|
+ $(AR) rcs $@ $^
|
|
|
+@@ -39,11 +44,13 @@
|
|
|
+ install: all
|
|
|
+ test -d $(LIBDIR) || install -m 755 -d $(LIBDIR)
|
|
|
+ install -m 644 $(LIBA) $(LIBDIR)
|
|
|
+- test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
|
|
|
+- install -m 755 $(LIBSO) $(SHLIBDIR)
|
|
|
+ test -d $(LIBDIR)/pkgconfig || install -m 755 -d $(LIBDIR)/pkgconfig
|
|
|
+ install -m 644 $(LIBPC) $(LIBDIR)/pkgconfig
|
|
|
++ifeq ($(STATIC),)
|
|
|
++ test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
|
|
|
++ install -m 755 $(LIBSO) $(SHLIBDIR)
|
|
|
+ cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET)
|
|
|
++endif
|
|
|
+
|
|
|
+ relabel:
|
|
|
+ /sbin/restorecon $(SHLIBDIR)/$(LIBSO)
|