libsemanage-2.6-4

- Follow upstream and rename _semanage.so to _semanage.cpython-36m-x86_64-linux-gnu.so
This commit is contained in:
Petr Lautrbach 2017-04-28 12:30:00 +02:00
parent 4a5295e883
commit df2d1e28f9
2 changed files with 60 additions and 4 deletions

View File

@ -1,5 +1,5 @@
diff --git libsemanage-2.6/src/Makefile libsemanage-2.6/src/Makefile
index 68aab72..ccaa29d 100644
index 68aab72..913fc0a 100644
--- libsemanage-2.6/src/Makefile
+++ libsemanage-2.6/src/Makefile
@@ -2,7 +2,7 @@
@ -7,10 +7,63 @@ index 68aab72..ccaa29d 100644
# targets with "PYPREFIX":
PYTHON ?= python
-PYPREFIX ?= $(notdir $(PYTHON))
+PYPREFIX ?= $(shell $(PYTHON) -c 'import sys;print("python%d" % sys.version_info[0])')
+PYPREFIX ?= $(shell $(PYTHON) -c 'import sys;print("python-%d.%d" % sys.version_info[:2])')
RUBY ?= ruby
RUBYPREFIX ?= $(notdir $(RUBY))
PKG_CONFIG ?= pkg-config
@@ -14,11 +14,12 @@ SHLIBDIR ?= $(DESTDIR)/lib
INCLUDEDIR ?= $(PREFIX)/include
PYLIBVER ?= $(shell $(PYTHON) -c 'import sys;print("python%d.%d" % sys.version_info[0:2])')
PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX))
-PYLIBDIR ?= $(LIBDIR)/$(PYLIBVER)
-RUBYLIBVER ?= $(shell $(RUBY) -e 'print RUBY_VERSION.split(".")[0..1].join(".")')
-RUBYPLATFORM ?= $(shell $(RUBY) -e 'print RUBY_PLATFORM')
-RUBYINC ?= $(shell $(PKG_CONFIG) --cflags ruby-$(RUBYLIBVER))
-RUBYINSTALL ?= $(LIBDIR)/ruby/site_ruby/$(RUBYLIBVER)/$(RUBYPLATFORM)
+PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX))
+PYSITEDIR ?= $(DESTDIR)$(shell $(PYTHON) -c 'import site; print(site.getsitepackages()[0])')
+PYCEXT ?= $(shell $(PYTHON) -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])')
+RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]')
+RUBYLIBS ?= $(shell $(RUBY) -e 'puts "-L" + RbConfig::CONFIG["libdir"] + " -lruby"')
+RUBYINSTALL ?= $(DESTDIR)$(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]')
LIBBASE=$(shell basename $(LIBDIR))
@@ -81,10 +82,10 @@ $(SWIGRUBYLOBJ): $(SWIGRUBYCOUT)
$(CC) $(CFLAGS) $(SWIG_CFLAGS) $(RUBYINC) -fPIC -DSHARED -c -o $@ $<
$(SWIGSO): $(SWIGLOBJ)
- $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $< -L. -lsemanage -L$(LIBDIR)
+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $< -L. -lsemanage $(PYLIBS) -L$(LIBDIR)
$(SWIGRUBYSO): $(SWIGRUBYLOBJ)
- $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $^ -L. -lsemanage -L$(LIBDIR)
+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $^ -L. -lsemanage $(RUBYLIBS) -L$(LIBDIR)
$(LIBA): $(OBJS)
$(AR) rcs $@ $^
@@ -98,7 +99,7 @@ $(LIBPC): $(LIBPC).in ../VERSION
sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):' < $< > $@
semanageswig_python_exception.i: ../include/semanage/semanage.h
- bash exception.sh > $@
+ bash -e exception.sh > $@ || (rm -f $@ ; false)
conf-scan.c: conf-scan.l conf-parse.h
$(LEX) $(LFLAGS) -t $< > $@
@@ -145,9 +146,9 @@ install: all
cd $(LIBDIR) && ln -sf $(LIBSO) $(TARGET)
install-pywrap: pywrap
- test -d $(PYLIBDIR)/site-packages || install -m 755 -d $(PYLIBDIR)/site-packages
- install -m 755 $(SWIGSO) $(PYLIBDIR)/site-packages/_semanage.so
- install -m 755 semanage.py $(PYLIBDIR)/site-packages
+ test -d $(PYSITEDIR) || install -m 755 -d $(PYSITEDIR)
+ install -m 755 $(SWIGSO) $(PYSITEDIR)/_semanage$(PYCEXT)
+ install -m 644 semanage.py $(PYSITEDIR)
install-rubywrap: rubywrap
diff --git libsemanage-2.6/src/direct_api.c libsemanage-2.6/src/direct_api.c
index e5c72cd..9c3149b 100644
--- libsemanage-2.6/src/direct_api.c

View File

@ -7,14 +7,14 @@
Summary: SELinux binary policy manipulation library
Name: libsemanage
Version: 2.6
Release: 3%{?dist}
Release: 4%{?dist}
License: LGPLv2+
Group: System Environment/Libraries
Source: https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014/libsemanage-2.6.tar.gz
# download https://raw.githubusercontent.com/fedora-selinux/scripts/master/selinux/make-fedora-selinux-patch.sh
# run:
# $ VERSION=2.6 ./make-fedora-selinux-patch.sh libsemanage
# HEAD https://github.com/fedora-selinux/selinux/commit/de207e979af0e22d7f6908a3c3fb2d6d1f2dbc8e
# HEAD https://github.com/fedora-selinux/selinux/commit/55c710487a365122fc1c961c7b05620defbfe65a
Patch1: libsemanage-fedora.patch
URL: https://github.com/SELinuxProject/selinux/wiki
Source1: semanage.conf
@ -195,6 +195,9 @@ rm -rf ${RPM_BUILD_ROOT}
%endif # if with_python3
%changelog
* Fri Apr 28 2017 Petr Lautrbach <plautrba@redhat.com> - 2.6-4
- Follow upstream and rename _semanage.so to _semanage.cpython-36m-x86_64-linux-gnu.so
* Tue Apr 18 2017 Petr Lautrbach <plautrba@redhat.com> - 2.6-3
- Do not list duplicate port entries after setting a boolean (#1439875)