[Buildroot] [PATCH] package/libsepol|libselinux: fix build on ancient distros
Yann E. MORIN
yann.morin.1998 at free.fr
Sat Jul 2 07:47:15 UTC 2016
Ancient distros (especially enterprise-grade still in use) do not accept
ln --relative.
Revert the upstream commit, since the problem it was trying to fix is
not applicable in the cntext of Buildroot (even with a merged /usr).
Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
Cc: Adam Duskett <Aduskett at gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
---
package/libselinux/0003-revert-ln-relative.patch | 24 ++++++++++++++++++++++++
package/libsepol/0004-revert-ln-relative.patch | 24 ++++++++++++++++++++++++
2 files changed, 48 insertions(+)
create mode 100644 package/libselinux/0003-revert-ln-relative.patch
create mode 100644 package/libsepol/0004-revert-ln-relative.patch
diff --git a/package/libselinux/0003-revert-ln-relative.patch b/package/libselinux/0003-revert-ln-relative.patch
new file mode 100644
index 0000000..b8ad070
--- /dev/null
+++ b/package/libselinux/0003-revert-ln-relative.patch
@@ -0,0 +1,24 @@
+Makefile: revert libselinux: use ln --relative to create .so symlinks
+
+This reverts 71393a181d63c9baae5fe8dcaeb9411d1f253998
+
+ln --relative is too recent to be available in all distributions,
+especially enterprise-grade distros that can stick around as long as
+they are maintained (up to 10 years in some cases?).
+
+For the sake of Buildroot, revert the upstream patch.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
+
+diff -durN a/src/Makefile b/src/Makefile
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -151,7 +151,7 @@
+ 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)
++ cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET)
+
+ install-pywrap: pywrap
+ test -d $(PYLIBDIR)/site-packages/selinux || install -m 755 -d $(PYLIBDIR)/site-packages/selinux
diff --git a/package/libsepol/0004-revert-ln-relative.patch b/package/libsepol/0004-revert-ln-relative.patch
new file mode 100644
index 0000000..0902d8d
--- /dev/null
+++ b/package/libsepol/0004-revert-ln-relative.patch
@@ -0,0 +1,24 @@
+Makefile: revert libsepol: use ln --relative to create .so symlinks
+
+This reverts 71393a181d63c9baae5fe8dcaeb9411d1f253998
+
+ln --relative is too recent to be available in all distributions,
+especially enterprise-grade distros that can stick around as long as
+they are maintained (up to 10 years in some cases?).
+
+For the sake of Buildroot, revert the upstream patch.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
+
+diff -durN a/src/Makefile b/src/Makefile
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -77,7 +77,7 @@
+ ifeq ($(STATIC),)
+ test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
+ install -m 755 $(LIBSO) $(SHLIBDIR)
+- ln -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET)
++ cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET)
+ endif
+
+ relabel:
--
2.7.4
More information about the buildroot
mailing list