This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 3.x development tree".
The branch, master has been updated via 7ed3355c04f0978ec16f7c83214172add4e8adad (commit) via da448bcf253baf4a2cfdffe71e6199b05c113fa1 (commit) via 9f4adeab0b7a75095a7b5854ef09d63f1da8d284 (commit) via 3994a93eea904c62d810e4c11d4248c168ec3e01 (commit) via 7d1a3678e59dca54180cba43772f8be543032df2 (commit) via b9dbe6d36daaf77760e1c54f1f958ae429b96c59 (commit) via 49317de5f456741d218f43bfaf3193d3f8fd735b (commit) via c35dff53c2e0b45e988d163528ef21d507e07392 (commit) from a8a8fc6638fa4a2a4a6810821fcc3d6c843d2861 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 7ed3355c04f0978ec16f7c83214172add4e8adad Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 19:49:23 2023 +0100
glibc: Fix RUNPATH in gconv libraries
Those libraries uses a special RUNPATH called $ORIGIN which we do not support in IPFire. So changing this to the directory where the are installed.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit da448bcf253baf4a2cfdffe71e6199b05c113fa1 Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 20:42:41 2023 +0100
chrpath: Drop package
This package has seen no updates for a long time and has been replaced by the similar and better supported patchelf.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
commit 9f4adeab0b7a75095a7b5854ef09d63f1da8d284 Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 20:41:37 2023 +0100
gettext: Switch to patchelf to remove the RPATH
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
commit 3994a93eea904c62d810e4c11d4248c168ec3e01 Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 20:33:36 2023 +0100
libldb: Switch to patchelf to remove the RPATH
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
commit 7d1a3678e59dca54180cba43772f8be543032df2 Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 20:23:41 2023 +0100
libdb: Switch to patchelf to remove the RPATH
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
commit b9dbe6d36daaf77760e1c54f1f958ae429b96c59 Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 20:17:46 2023 +0100
net-snmp: Switch to patchelf to remove the RPATH
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
commit 49317de5f456741d218f43bfaf3193d3f8fd735b Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 20:09:35 2023 +0100
tcpdump: Switch to patchelf to remove the RPATH
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
commit c35dff53c2e0b45e988d163528ef21d507e07392 Author: Stefan Schantl stefan.schantl@ipfire.org Date: Tue Mar 21 19:07:43 2023 +0100
patchelf: New package
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org
-----------------------------------------------------------------------
Summary of changes: chrpath/chrpath.nm | 45 ------------------------------------------- gettext/gettext.nm | 4 ++-- glibc/glibc.nm | 19 +++++++++++++++++- libdb/libdb.nm | 6 +++--- libldb/libldb.nm | 7 ++++--- net-snmp/net-snmp.nm | 6 +++--- patchelf/patchelf.nm | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++ tcpdump/tcpdump.nm | 6 +++--- 8 files changed, 87 insertions(+), 60 deletions(-) delete mode 100644 chrpath/chrpath.nm create mode 100644 patchelf/patchelf.nm
Difference in files: diff --git a/chrpath/chrpath.nm b/chrpath/chrpath.nm deleted file mode 100644 index 6f24793cb..000000000 --- a/chrpath/chrpath.nm +++ /dev/null @@ -1,45 +0,0 @@ -############################################################################### -# IPFire.org - An Open Source Firewall Solution # -# Copyright (C) - IPFire Development Team info@ipfire.org # -############################################################################### - -name = chrpath -version = 0.16 -release = 2 - -groups = Development/Tools -url = https://directory.fsf.org/wiki/Chrpath/ -license = GPLv2+ -summary = Modify rpath of compiled programs - -description - chrpath allows you to modify the dynamic library load path (rpath) of - compiled programs. Currently, only removing and modifying the rpath - is supported. -end - -# Upstream has gone -source_dl = https://deb.debian.org/debian/pool/main/c/chrpath/ -sources = %{name}_%{version}.orig.tar.gz - -build - configure_options += \ - --docdir=%{docdir} - - install_cmds - # Chrpath ignores the docdir swith during configure. - # Move the documentation to the correct place. - mv -vf %{BUILDROOT}/usr/doc/%{name}-* %{BUILDROOT}%{docdir} - - # Remove empty directory - rm -rvf %{BUILDROOT}/usr/doc - end -end - -packages - package %{name} - - package %{name}-debuginfo - template DEBUGINFO - end -end diff --git a/gettext/gettext.nm b/gettext/gettext.nm index 000db01b2..699c1b20d 100644 --- a/gettext/gettext.nm +++ b/gettext/gettext.nm @@ -31,12 +31,12 @@ sources = %{thisapp}.tar.xz build requires bison - chrpath expat-devel glib2-devel libunistring-devel libxml2-devel ncurses-devel + patchelf end
configure_options += \ @@ -59,7 +59,7 @@ build # cleanup rpaths for i in $(find %{BUILDROOT}%{bindir} %{BUILDROOT}%{libdir} -type f); do if file ${i} | grep "ELF 64-bit" >/dev/null; then - chrpath -l ${i} && chrpath --delete ${i} + patchelf --remove-rpath ${i} fi done
diff --git a/glibc/glibc.nm b/glibc/glibc.nm index a58a826c8..3b1362d4d 100644 --- a/glibc/glibc.nm +++ b/glibc/glibc.nm @@ -5,7 +5,7 @@
name = glibc version = 2.37 -release = 4 +release = 5
maintainer = Michael Tremer michael.tremer@ipfire.org groups = System/Base @@ -44,6 +44,7 @@ build libcap-devel libstdc++-static make >= 4.0 + patchelf python3 >= 3.4 texinfo end @@ -119,6 +120,22 @@ build
# Strip any object files strip --strip-debug %{BUILDROOT}%{libdir}/*.o + + # Some gconv libraries requires other libraries and contain $ORIGIN + # as RUNPATH because they are all located in the same directory. + # We do not support $ORIGIN as RUNPATH so change this to the directory + # where the modules are located. + find %{BUILDROOT}%{libdir}/gconv -type f -name "*.so" -exec sh -c ' + for file do + # Obtain the RUNPATH of the module in case it has one set. + runpath=$(patchelf --print-rpath ${file} | tr -d '\n') + + # Check if the RUNPATH is $ORIGIN + if [ "${runpath}" == "$ORIGIN" ]; then + # Use patchelf to change the RUNPATH + patchelf --set-rpath %{libdir}/gconv ${file} + fi + done ' sh {} + end end
diff --git a/libdb/libdb.nm b/libdb/libdb.nm index 08d60a401..13c2c91a5 100644 --- a/libdb/libdb.nm +++ b/libdb/libdb.nm @@ -8,7 +8,7 @@ version_major = 6 version_minor = 1 version_patch = 26 version = %{version_major}.%{version_minor}.%{version_patch} -release = 4 +release = 5 thisapp = db-%{version}
soversion = %{version_major}.%{version_minor} @@ -29,9 +29,9 @@ source_dl = http://download.oracle.com/berkeley-db/ build requires automake - chrpath gcc-c++ libtool + patchelf perl zlib-devel end @@ -71,7 +71,7 @@ build install_cmds # Remove RPATH in all binaries. for i in %{BUILDROOT}%{bindir}/*; do - chrpath --delete ${i} + patchelf --remove-rpath ${i} done
# Remove documentation which is very big. diff --git a/libldb/libldb.nm b/libldb/libldb.nm index 8567546a8..fc242ef82 100644 --- a/libldb/libldb.nm +++ b/libldb/libldb.nm @@ -5,7 +5,7 @@
name = libldb version = 2.6.1 -release = 1.1 +release = 2 thisapp = ldb-%{version}
groups = System/Libraries @@ -22,7 +22,6 @@ source_dl = https://download.samba.org/pub/ldb/
build requires - chrpath cmocka-devel docbook-utils docbook-xsl @@ -32,6 +31,7 @@ build libtirpc-devel libxcrypt-devel lmdb-devel >= 0.9.16 + patchelf popt-devel python3-devel python3-talloc @@ -52,7 +52,8 @@ build
install_cmds # Remove rpath from binaries. - chrpath --delete %{BUILDROOT}%{bindir}/* + find %{BUILDROOT}%{bindir} -type f -executable \ + -exec patchelf --remove-rpath {} ; end end
diff --git a/net-snmp/net-snmp.nm b/net-snmp/net-snmp.nm index 26e905313..af62067a0 100644 --- a/net-snmp/net-snmp.nm +++ b/net-snmp/net-snmp.nm @@ -5,7 +5,7 @@
name = net-snmp version = 5.9.3 -release = 3 +release = 4
groups = Networking/Daemons url = http://net-snmp.sourceforge.net @@ -25,10 +25,10 @@ build autoconf automake bzip2-devel - chrpath elfutils-devel lm-sensors-devel >= 3 openssl-devel + patchelf procps python3-devel python3-setuptools @@ -109,7 +109,7 @@ build
# Remove more RPATHs. find %{BUILDROOT}%{bindir} -type f -print \ - -exec chrpath --delete {} ; + -exec patchelf --remove-rpath {} ; end end
diff --git a/patchelf/patchelf.nm b/patchelf/patchelf.nm new file mode 100644 index 000000000..bccb2ba27 --- /dev/null +++ b/patchelf/patchelf.nm @@ -0,0 +1,54 @@ +############################################################################### +# IPFire.org - An Open Source Firewall Solution # +# Copyright (C) - IPFire Development Team info@ipfire.org # +############################################################################### + +name = patchelf +version = 0.17.2 +release = 1 + +groups = Development/Tools +url = http://nixos.org/patchelf.html +license = GPLv3+ +summary = A utility for patching ELF binaries + +description + PatchELF is a simple utility for modifying an existing ELF executable + or library. It can change the dynamic loader ("ELF interpreter") + of an executable and change the RPATH of an executable or library. +end + +source_dl = https://github.com/NixOS/%%7Bname%7D/archive/%%7Bversion%7D/ +sources = %{thisapp}.tar.gz + +build + requires + autoconf + automake + end + + prepare_cmds + # Remove shipped elf header file and + # use the one from glibc instead. + rm -rvf src/elf.h + + # Disable test which requires DT_JMPREL. + # Our default compiler configuration does not allow to + # compile such an elf file. + sed -i '/phdr-corruption.sh/d' tests/Makefile.am + + ./bootstrap.sh + end + + test + make check + end +end + +packages + package %{name} + + package %{name}-debuginfo + template DEBUGINFO + end +end diff --git a/tcpdump/tcpdump.nm b/tcpdump/tcpdump.nm index 226744143..9c4d33822 100644 --- a/tcpdump/tcpdump.nm +++ b/tcpdump/tcpdump.nm @@ -5,7 +5,7 @@
name = tcpdump version = 4.99.1 -release = 1 +release = 2
groups = Networking/Sniffer url = https://www.tcpdump.org/ @@ -23,9 +23,9 @@ source_dl = https://www.tcpdump.org/release/
build requires - chrpath libpcap-devel openssl-devel + patchelf end
configure_options += \ @@ -37,7 +37,7 @@ build rm -vf %{BUILDROOT}%{sbindir}/tcpdump.%{version}
# Remove RPATH. - chrpath --delete %{BUILDROOT}%{bindir}/tcpdump + patchelf --remove-rpath %{BUILDROOT}%{bindir}/tcpdump end end
hooks/post-receive -- IPFire 3.x development tree