From 2140db697c7f1da2a0a3f7bbcb14c1a0dade84e5 Mon Sep 17 00:00:00 2001
From: Adam Duskett <Adamduskett@outlook.com>
Date: Mon, 9 Oct 2017 16:28:12 -0400
Subject: [PATCH] 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>
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
---
 src/Makefile | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff -durNw libsepol-2.7.orig/src/Makefile libsepol-2.7/src/Makefile
--- libsepol-2.7.orig/src/Makefile	2018-01-15 21:07:51.285183415 +0100
+++ libsepol-2.7/src/Makefile	2018-01-15 21:08:56.515182717 +0100
@@ -39,7 +39,12 @@
 LN=gln
 endif
 
-all: $(LIBA) $(LIBSO) $(LIBPC)
+ALL_TARGETS = $(LIBA) $(LIBPC)
+ifeq ($(STATIC),)
+ALL_TARGETS += $(LIBSO)
+endif
+
+all: $(ALL_TARGETS)
 
 
 $(LIBA):  $(OBJS)
@@ -81,8 +86,10 @@
 install: all
 	test -d $(LIBINSTALL) || install -m 755 -d $(LIBINSTALL)
 	install -m 644 $(LIBA) $(LIBINSTALL)
+ifeq ($(STATIC),)
 	test -d $(LIBINSTALL) || install -m 755 -d $(LIBINSTALL)
 	install -m 755 $(LIBSO) $(LIBINSTALL)
+endif
 	test -d $(LIBINSTALL)/pkgconfig || install -m 755 -d $(LIBINSTALL)/pkgconfig
 	install -m 644 $(LIBPC) $(LIBINSTALL)/pkgconfig
 	$(LN) -sf --relative $(LIBINSTALL)/$(LIBSO) $(LIBINSTALL)/$(TARGET)
