diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/.gitignore b/.gitignore index 17bd005..101e839 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ chrpath-0.13.tar.gz -/chrpath-0.16.tar.gz diff --git a/chrpath.spec b/chrpath.spec index 0eb79da..7b831b4 100644 --- a/chrpath.spec +++ b/chrpath.spec @@ -1,15 +1,12 @@ -Name: chrpath -Version: 0.16 -Release: 26%{?dist} -Summary: Modify rpath of compiled programs - -License: GPL-2.0-or-later -URL: https://chrpath.alioth.debian.org/ -Source0: https://alioth.debian.org/frs/download.php/file/3979/%{name}-%{version}.tar.gz - -BuildRequires: gcc -BuildRequires: make - +Summary: Modify rpath of compiled programs +Name: chrpath +Version: 0.13 +Release: 1.1%{?dist} +License: GPL +Group: Development/Tools +URL: ftp://ftp.hungry.com/pub/hungry/chrpath/ +Source0: ftp://ftp.hungry.com/pub/hungry/chrpath/%{name}-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %description chrpath allows you to modify the dynamic library load path (rpath) of @@ -17,153 +14,28 @@ compiled programs. Currently, only removing and modifying the rpath is supported. %prep -%autosetup -p1 +%setup -q %build %configure -%make_build - -%check -make check +make %install -%make_install +rm -rf %{buildroot} +make install DESTDIR=%{buildroot} rm -fr %{buildroot}/usr/doc +%clean +rm -rf %{buildroot} + %files -%doc AUTHORS README NEWS ChangeLog* -%license COPYING +%defattr(-,root,root,-) +%doc AUTHORS COPYING README NEWS ChangeLog* %{_bindir}/chrpath %{_mandir}/man1/chrpath.1* - - %changelog -* Wed Jul 23 2025 Fedora Release Engineering - 0.16-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Thu Jan 16 2025 Fedora Release Engineering - 0.16-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jul 17 2024 Fedora Release Engineering - 0.16-24 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Tue Jan 23 2024 Fedora Release Engineering - 0.16-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 0.16-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Wed Jul 19 2023 Fedora Release Engineering - 0.16-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Wed Jul 12 2023 David King - 0.16-20 -- Use SPDX for license field (#2222111) - -* Wed Jan 18 2023 Fedora Release Engineering - 0.16-19 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Jul 20 2022 Fedora Release Engineering - 0.16-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Wed Jan 19 2022 Fedora Release Engineering - 0.16-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 0.16-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jan 26 2021 Fedora Release Engineering - 0.16-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Mon Dec 14 2020 Jeff Law - 0.16-14 -- Use autosetup and enable testsuite - -* Mon Jul 27 2020 Fedora Release Engineering - 0.16-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jan 28 2020 Fedora Release Engineering - 0.16-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Jul 24 2019 Fedora Release Engineering - 0.16-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 0.16-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Jul 12 2018 Fedora Release Engineering - 0.16-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Feb 20 2018 David King - 0.16-8 -- Add BuildRequires on gcc -- Remove Group tag, reorder other tags - -* Wed Feb 07 2018 Fedora Release Engineering - 0.16-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Aug 02 2017 Fedora Release Engineering - 0.16-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 0.16-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 0.16-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Feb 03 2016 Fedora Release Engineering - 0.16-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Jun 17 2015 Fedora Release Engineering - 0.16-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed Feb 25 2015 David King - 0.16-1 -- Update to 0.16 (#1144863) -- Remove clean section and BuildRoot tag -- Update URL and Sourc0 -- Use license macro for COPYING -- Use parallel make flags -- Preserve timestamps during install - -* Sat Aug 16 2014 Fedora Release Engineering - 0.13-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Sat Jun 07 2014 Fedora Release Engineering - 0.13-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sat Aug 03 2013 Fedora Release Engineering - 0.13-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Mon Apr 8 2013 Petr Machata - 0.13-12 -- Add missing help for -k|--keepgoing option - (chrpath-0.13-help.patch) - -* Thu Apr 4 2013 Petr Machata - 0.13-11 -- Add missing last entry in long options array - (chrpath-0.13-getopt_long.patch) -- Update config.sub and config.guess to support aarch64 - (chrpath-0.13-aarch64.patch) - -* Wed Feb 13 2013 Fedora Release Engineering - 0.13-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Wed Jul 18 2012 Fedora Release Engineering - 0.13-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Thu Jan 12 2012 Fedora Release Engineering - 0.13-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Tue Feb 08 2011 Fedora Release Engineering - 0.13-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Fri Jul 24 2009 Fedora Release Engineering - 0.13-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Thu Jul 23 2009 Axel Thimm - 0.13-5 -- Fix last entry in .dynamic (by Christian Krause ). - -* Sat Sep 8 2007 Ville Skyttä - 0.13-2 -- License: GPL+ - * Sun Mar 12 2006 Axel Thimm - 0.13-1 - Initial build. diff --git a/gating.yaml b/gating.yaml deleted file mode 100644 index ce3cdc1..0000000 --- a/gating.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- !Policy -product_versions: - - fedora-* -decision_context: bodhi_update_push_stable -subject_type: koji_build -rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} ---- !Policy -product_versions: - - rhel-8 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} ---- !Policy -product_versions: - - rhel-9 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} diff --git a/plans/ci.fmf b/plans/ci.fmf deleted file mode 100644 index 1ad2c12..0000000 --- a/plans/ci.fmf +++ /dev/null @@ -1,6 +0,0 @@ -summary: CI Gating Plan -discover: - how: fmf - directory: tests -execute: - how: beakerlib diff --git a/sources b/sources index a146de3..78ce75e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -2bf8d1d1ee345fc8a7915576f5649982 chrpath-0.16.tar.gz +b73072a8fbba277558c50364b65bb407 chrpath-0.13.tar.gz diff --git a/tests/Regression/internal-tests/Makefile b/tests/Regression/internal-tests/Makefile deleted file mode 100644 index fb7eeae..0000000 --- a/tests/Regression/internal-tests/Makefile +++ /dev/null @@ -1,68 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/chrpath/Regression/internal-tests -# Description: internal-tests -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2016 Red Hat, Inc. -# -# This program is free software: you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation, either version 2 of -# the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be -# useful, but WITHOUT ANY WARRANTY; without even the implied -# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -# PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see http://www.gnu.org/licenses/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/chrpath/Regression/internal-tests -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE testsuite.patch - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: internal-tests" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 30m" >> $(METADATA) - @echo "RunFor: chrpath" >> $(METADATA) - @echo "Requires: chrpath" >> $(METADATA) - @echo "Requires: rpm-build" >> $(METADATA) - @echo "Requires: gcc libgcc glibc-devel" >> $(METADATA) - @echo "Requires: libgcc.i686 glibc-devel.i686" >> $(METADATA) - @echo "Requires: libgcc.s390 glibc-devel.s390" >> $(METADATA) - @echo "Requires: libgcc.ppc glibc-devel.ppc" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/internal-tests/PURPOSE b/tests/Regression/internal-tests/PURPOSE deleted file mode 100644 index 1641ce4..0000000 --- a/tests/Regression/internal-tests/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/chrpath/Regression/internal-tests -Description: internal-tests -Author: Martin Cermak diff --git a/tests/Regression/internal-tests/main.fmf b/tests/Regression/internal-tests/main.fmf deleted file mode 100644 index fd8598b..0000000 --- a/tests/Regression/internal-tests/main.fmf +++ /dev/null @@ -1,22 +0,0 @@ -summary: internal-tests -description: '' -contact: Martin Cermak -component: -- chrpath -test: ./runtest.sh -framework: beakerlib -recommend: -- chrpath -- rpm-build -- gcc -- libgcc -- glibc-devel -- libgcc.i686 -- glibc-devel.i686 -- libgcc.s390 -- glibc-devel.s390 -- libgcc.ppc -- glibc-devel.ppc -duration: 30m -extra-summary: /tools/chrpath/Regression/internal-tests -extra-task: /tools/chrpath/Regression/internal-tests diff --git a/tests/Regression/internal-tests/runtest.sh b/tests/Regression/internal-tests/runtest.sh deleted file mode 100755 index d4b3cc1..0000000 --- a/tests/Regression/internal-tests/runtest.sh +++ /dev/null @@ -1,85 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/chrpath/Regression/internal-tests -# Description: internal-tests -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2016 Red Hat, Inc. -# -# This program is free software: you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation, either version 2 of -# the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be -# useful, but WITHOUT ANY WARRANTY; without even the implied -# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -# PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see http://www.gnu.org/licenses/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -CMD='chrpath' -BIN=$(which --skip-alias $CMD) -PACKAGE="${PACKAGE:-$(rpm -qf --qf='%{name}\n' $BIN)}" -export PACKAGE - -ORIGWD=$(pwd) - -# To test the compat arch stuff, we need the compat arch compiler capability. -# Ideally the test harness should install it, since respective 32/31 bit runtime -# requirements (libgcc, glibc-devel) are mentioned as requirements in the Makefile -# but just in case that would fail, we'll try to fix this now at the test run time. -if arch | egrep -q '(x86_64|ppc64|s390x)'; then - b='-m32' - arch | grep s390x && b='-m31' - echo "int main() { return 0; }" | gcc -m32 -xc -o /dev/null - || \ - yum -y install --setopt=multilib_policy=all libgcc glibc-devel -fi - -rlJournalStart - rlPhaseStartSetup - rlRun "TMPD=$(mktemp -d)" - rlRun "pushd $TMPD" - rlFetchSrcForInstalled $PACKAGE - rlRun "rpm --define='_topdir $TMPD' -Uvh *src.rpm" - rlRun "rpmbuild --define='_topdir $TMPD' -bc SPECS/${CMD}.spec" - rlPhaseEnd - - rlPhaseStartTest - rlRun "pushd BUILD/$CMD-*" - # Some CI systems complain about "C compiler cannot create executables" - # Not really sure what's going on there, thus printing the config.log: - rlRun "cat config.log" - # To run the testsuite for compat arch, we need to patch the testsuite - # per https://bugzilla.redhat.com/show_bug.cgi?id=1271380#c25. But just - # in case the patch wouldn't apply, we'll first run the unpatched tests - # so that we have at least some results and then try to patch and rerun. - rlRun "make check" - RUN_SEC_ARCH="false" - RHEL_VERSION=$(rpm --eval %{rhel}) - [[ $RHEL_VERSION -ge 7 ]] && arch | egrep -q '(x86_64|ppc64)' && RUN_SEC_ARCH="true" - [[ $RHEL_VERSION -eq 7 ]] && arch | egrep -q '(s390x)' && RUN_SEC_ARCH="true" - - if [ "$RUN_SEC_ARCH" = "true" ]; then - rlRun "patch -p1 < $ORIGWD/testsuite.patch" - rlRun "make check" - fi - rlRun "popd" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TMPD" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/internal-tests/testsuite.patch b/tests/Regression/internal-tests/testsuite.patch deleted file mode 100644 index b229842..0000000 --- a/tests/Regression/internal-tests/testsuite.patch +++ /dev/null @@ -1,179 +0,0 @@ -diff --git a/testsuite/Makefile b/testsuite/Makefile -index b8d295f..dc23da2 100644 ---- a/testsuite/Makefile -+++ b/testsuite/Makefile -@@ -457,7 +457,7 @@ uninstall-am: - - - prog: prog.c -- $(CC) $(RPATH) -o $@ $< -+ $(CC) $(RPATH) $(MYFLAGS) -o $@ $< - - check: $(CHRPATH) - $(srcdir)/runtest.sh -diff --git a/testsuite/runtest.sh b/testsuite/runtest.sh -index f913bc5..f6e7807 100755 ---- a/testsuite/runtest.sh -+++ b/testsuite/runtest.sh -@@ -6,77 +6,90 @@ CHRPATH=../chrpath - - retval=0 - --rm prog --make prog -- --if $CHRPATH -h ; then -- echo "success: chrpath -h worked." --else -- echo "error: chrpath -h failed." -- retval=1 --fi -- --if $CHRPATH -v ; then -- echo "success: chrpath -v worked." --else -- echo "error: chrpath -v failed." -- retval=1 --fi -- --if $CHRPATH $0 ; then -- echo "error: chrpath on /bin/sh script worked." -- retval=1 --else -- echo "success: chrpath on /bin/sh script failed." --fi -- --if $CHRPATH non-existant-file ; then -- echo "error: chrpath on non-existant file worked." -- retval=1 --else -- echo "success: chrpath on non-existant file failed." --fi -- --if $CHRPATH -l prog | grep -q 'R.*PATH=.*/usr/local/lib' ; then -- echo "success: chrpath listed current rpath." --else -- echo "error: chrpath unable to list current rpath." -- retval=1 --fi -- --$CHRPATH -r '/usr/lib' prog > /dev/null -- --if $CHRPATH -l prog | grep -q 'R.*PATH=/usr/lib' ; then -- echo "success: chrpath changed rpath." --else -- echo "error: chrpath unable to change rpath." -- retval=1 --fi -- --# I wish inserting a larger path would work, but it doesn't yet --if $CHRPATH -r '/usr/lib:/usr/local/lib' prog > /dev/null ; then -- echo "success: chrpath changed rpath to larger path." --else -- echo "error: chrpath unable to change rpath to larger path." --fi -- --$CHRPATH -c prog > /dev/null -- --if $CHRPATH -l prog | grep -q 'RUNPATH=/usr/lib' ; then -- echo "success: chrpath converted rpath to runpath." --else -- # Not all archs support runpath, ie not a fatal error -- echo "warning: chrpath unable to convert rpath to runpath." --fi -- --$CHRPATH -d prog > /dev/null -- --if $CHRPATH -l prog | grep -q 'no rpath or runpath tag found' ; then -- echo "success: chrpath removed rpath and runpath successfully." --else -- echo "error: chrpath unable to remove rpath or runpath." -- retval=1 --fi -+function do_test() { -+ rm prog -+ make prog -+ -+ if $CHRPATH -h ; then -+ echo "success: chrpath -h worked." -+ else -+ echo "error: chrpath -h failed." -+ retval=1 -+ fi -+ -+ if $CHRPATH -v ; then -+ echo "success: chrpath -v worked." -+ else -+ echo "error: chrpath -v failed." -+ retval=1 -+ fi -+ -+ if $CHRPATH $0 ; then -+ echo "error: chrpath on /bin/sh script worked." -+ retval=1 -+ else -+ echo "success: chrpath on /bin/sh script failed." -+ fi -+ -+ if $CHRPATH non-existant-file ; then -+ echo "error: chrpath on non-existant file worked." -+ retval=1 -+ else -+ echo "success: chrpath on non-existant file failed." -+ fi -+ -+ if $CHRPATH -l prog | grep -q 'R.*PATH=.*/usr/local/lib' ; then -+ echo "success: chrpath listed current rpath." -+ else -+ echo "error: chrpath unable to list current rpath." -+ retval=1 -+ fi -+ -+ $CHRPATH -r '/usr/lib' prog > /dev/null -+ -+ if $CHRPATH -l prog | grep -q 'R.*PATH=/usr/lib' ; then -+ echo "success: chrpath changed rpath." -+ else -+ echo "error: chrpath unable to change rpath." -+ retval=1 -+ fi -+ -+ # I wish inserting a larger path would work, but it doesn't yet -+ if $CHRPATH -r '/usr/lib:/usr/local/lib' prog > /dev/null ; then -+ echo "success: chrpath changed rpath to larger path." -+ else -+ echo "error: chrpath unable to change rpath to larger path." -+ fi -+ -+ $CHRPATH -c prog > /dev/null -+ -+ if $CHRPATH -l prog | grep -q 'RUNPATH=/usr/lib' ; then -+ echo "success: chrpath converted rpath to runpath." -+ else -+ # Not all archs support runpath, ie not a fatal error -+ echo "warning: chrpath unable to convert rpath to runpath." -+ fi -+ -+ $CHRPATH -d prog > /dev/null -+ -+ if $CHRPATH -l prog | grep -q 'no rpath or runpath tag found' ; then -+ echo "success: chrpath removed rpath and runpath successfully." -+ else -+ echo "error: chrpath unable to remove rpath or runpath." -+ retval=1 -+ fi -+} -+ -+# Run the base arch tests -+unset MYFLAGS -+do_test -+ -+# Optionally run the compat arch tests -+MYFLAGS="" -+uname -m | egrep -q '^(x86_64|ppc64)$' && MYFLAGS="-m32" -+uname -m | grep -q '^s390x$' && MYFLAGS="-m31" -+export MYFLAGS -+test -z $MYFLAGS || do_test - - exit $retval -