* [git.ipfire.org] IPFire 3.x development tree branch, master, updated. 7ed3355c04f0978ec16f7c83214172add4e8adad
@ 2023-03-22 10:07 Michael Tremer
0 siblings, 0 replies; only message in thread
From: Michael Tremer @ 2023-03-22 10:07 UTC (permalink / raw)
To: ipfire-scm
[-- Attachment #1: Type: text/plain, Size: 12273 bytes --]
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(a)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(a)ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit da448bcf253baf4a2cfdffe71e6199b05c113fa1
Author: Stefan Schantl <stefan.schantl(a)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(a)ipfire.org>
commit 9f4adeab0b7a75095a7b5854ef09d63f1da8d284
Author: Stefan Schantl <stefan.schantl(a)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(a)ipfire.org>
commit 3994a93eea904c62d810e4c11d4248c168ec3e01
Author: Stefan Schantl <stefan.schantl(a)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(a)ipfire.org>
commit 7d1a3678e59dca54180cba43772f8be543032df2
Author: Stefan Schantl <stefan.schantl(a)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(a)ipfire.org>
commit b9dbe6d36daaf77760e1c54f1f958ae429b96c59
Author: Stefan Schantl <stefan.schantl(a)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(a)ipfire.org>
commit 49317de5f456741d218f43bfaf3193d3f8fd735b
Author: Stefan Schantl <stefan.schantl(a)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(a)ipfire.org>
commit c35dff53c2e0b45e988d163528ef21d507e07392
Author: Stefan Schantl <stefan.schantl(a)ipfire.org>
Date: Tue Mar 21 19:07:43 2023 +0100
patchelf: New package
Signed-off-by: Stefan Schantl <stefan.schantl(a)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(a)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(a)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(a)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/%{name}/archive/%{version}/
+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
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-03-22 10:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-22 10:07 [git.ipfire.org] IPFire 3.x development tree branch, master, updated. 7ed3355c04f0978ec16f7c83214172add4e8adad Michael Tremer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox