[PATCH] libsepol compilation fixes for macOS.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



ln on macOS doesn't support --relative, so use the gnu version by default.

Also document how to build on macOS.

Signed-off-by: Karl MacMillan <karlwmacmillan@xxxxxxxxx>
---
 README                | 5 +++++
 libsepol/src/Makefile | 4 +++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/README b/README
index e6f7276..7fc7b17 100644
--- a/README
+++ b/README
@@ -17,3 +17,8 @@ make install install-pywrap relabel
 This may render your system unusable if the upstream SELinux userspace
 lacks library functions or other dependencies relied upon by your
 distribution.  If it breaks, you get to keep both pieces.
+
+To install libsepol on macOS (mainly for policy analysis):
+cd libsepol; make DESTDIR=/usr/local PREFIX=/usr/local install
+
+This requires GNU coreutils (brew install coreutils).
diff --git a/libsepol/src/Makefile b/libsepol/src/Makefile
index 497cd56..819d261 100644
--- a/libsepol/src/Makefile
+++ b/libsepol/src/Makefile
@@ -32,10 +32,12 @@ endif
 
 LD_SONAME_FLAGS=-soname,$(LIBSO),--version-script=$(LIBMAP),-z,defs
 
+LN=ln
 OS := $(shell uname)
 ifeq ($(OS), Darwin)
 LD_SONAME_FLAGS=-install_name,$(LIBSO)
 LDFLAGS += -undefined dynamic_lookup
+LN=gln
 endif
 
 all: $(LIBA) $(LIBSO) $(LIBPC)
@@ -84,7 +86,7 @@ install: all
 	install -m 755 $(LIBSO) $(SHLIBDIR)
 	test -d $(LIBDIR)/pkgconfig || install -m 755 -d $(LIBDIR)/pkgconfig
 	install -m 644 $(LIBPC) $(LIBDIR)/pkgconfig
-	ln -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET)
+	$(LN) -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET)
 
 relabel:
 	/sbin/restorecon $(SHLIBDIR)/$(LIBSO)
-- 
2.6.2

_______________________________________________
Selinux mailing list
Selinux@xxxxxxxxxxxxx
To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx.
To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.



[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux