RHEL 9.0.0 Alpha bootstrap

The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/libidn2#32b5e5e19f359d65be57064d5a3f9f3a2287c2d6
This commit is contained in:
Petr Šabata 2020-10-15 16:16:52 +02:00
parent c5827f23a3
commit a14c7019c5
4 changed files with 324 additions and 0 deletions

3
.gitignore vendored
View File

@ -0,0 +1,3 @@
/gpgkey-*.gpg
/libidn2-*.tar.gz
/libidn2-*.tar.gz.sig

78
libidn2-2.0.0-rpath.patch Normal file
View File

@ -0,0 +1,78 @@
Patch by Robert Scheck <robert@fedoraproject.org> for libidn2 >= 2.0.0, which works
around the broken libtool of Debian. Multilib/multiarch systems like Fedora or Red
Hat Enterprise Linux are using /usr/lib64 for 64 bit libraries and /usr/lib is used
for 32 bit libraries. That allows to run 32 bit software on 64 bit systems. Debian
systems only use /usr/lib which contains only 32 or 64 bit systems depending on the
architecture.
Libtool hardcodes the runtime search path in a library (rpath), if the library that
is used for linking is not within the default system library path. The result is,
that if libtool.m4/configure files are generated by a Debian system, but used on a
Fedora or Red Hat Enterprise Linux 64 bit system for compiling, "-rpath /usr/lib64"
makes it into the binary.
Fedora and EPEL (for Red Hat Enterprise Linux) do not allow binaries with rpath, as
the Linux dynamic linker is usually smarter than the hardcoded path.
The fix for this issue is to add the optional /lib64 and /usr/lib64 directories at/
within libtool in front of the regular /lib and /usr/lib directories at the system
library path. These libtool information are hold in libtool.m4, which is generated
by running aclocal. As the content of libtool.m4 is included into configure during
a run of autoconf, libtool.m4 needs to be modified within the upstream build system
each time after a aclocal run - until Debian's libtool is fixed at Debian upstream.
Applying the fix is either possible by using the last hunk of the patch (the other
hunks are runtime-only if configure file has been already generated) or by running
the following sed command after each aclocal run within the upstream build system:
sed -e 's@\(# Ideally, we could use ldconfig to report\)@# Add ABI-specific directories to the system library path.\n sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"\n\n \1@' \
-e 's@/lib /usr/lib $lt_ld_extra@$sys_lib_dlsearch_path_spec $lt_ld_extra@' -i libidn2-2.0.0/m4/libtool.m4
More information regarding this topic can be found for example at:
- http://osdir.com/ml/bug-libtool-gnu/2009-12/msg00034.html
- http://lists.gnu.org/archive/html/libtool/2009-01/msg00039.html
- http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345
--- libidn2-2.0.0/configure 2017-03-29 17:26:58.000000000 +0200
+++ libidn2-2.0.0/configure.rpath 2017-04-07 00:59:43.000000000 +0200
@@ -14266,6 +14266,9 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # Add ABI-specific directories to the system library path.
+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
# Ideally, we could use ldconfig to report *all* directores which are
# searched for libraries, however this is still not possible. Aside from not
# being certain /sbin/ldconfig is available, command
@@ -14274,7 +14277,7 @@
# appending ld.so.conf contents (and includes) to the search path.
if test -f /etc/ld.so.conf; then
lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
--- libidn2-2.0.0/m4/libtool.m4 2017-02-15 10:54:29.000000000 +0100
+++ libidn2-2.0.0/m4/libtool.m4.rpath 2017-04-07 00:58:52.000000000 +0200
@@ -2866,6 +2866,9 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # Add ABI-specific directories to the system library path.
+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
# Ideally, we could use ldconfig to report *all* directores which are
# searched for libraries, however this is still not possible. Aside from not
# being certain /sbin/ldconfig is available, command
@@ -2874,7 +2877,7 @@
# appending ld.so.conf contents (and includes) to the search path.
if test -f /etc/ld.so.conf; then
lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on

240
libidn2.spec Normal file
View File

@ -0,0 +1,240 @@
Summary: Library to support IDNA2008 internationalized domain names
Name: libidn2
Version: 2.3.0
Release: 4%{?dist}
License: (GPLv2+ or LGPLv3+) and GPLv3+
URL: https://www.gnu.org/software/libidn/#libidn2
Source0: https://ftp.gnu.org/gnu/libidn/%{name}-%{version}.tar.gz
Source1: https://ftp.gnu.org/gnu/libidn/%{name}-%{version}.tar.gz.sig
Source2: gpgkey-1CB27DBC98614B2D5841646D08302DB6A2670428.gpg
Patch0: libidn2-2.0.0-rpath.patch
BuildRequires: gnupg2
BuildRequires: gcc
BuildRequires: gettext
BuildRequires: libunistring-devel
BuildRequires: automake
Provides: bundled(gnulib)
%description
Libidn2 is an implementation of the IDNA2008 specifications in RFC
5890, 5891, 5892, 5893 and TR46 for internationalized domain names
(IDN). It is a standalone library, without any dependency on libidn.
%package devel
Summary: Development files for libidn2
Requires: %{name}%{?_isa} = %{version}-%{release}, pkgconfig
%description devel
The libidn2-devel package contains libraries and header files for
developing applications that use libidn2.
%package -n idn2
Summary: IDNA2008 internationalized domain names conversion tool
License: GPLv3+
Requires: %{name}%{?_isa} = %{version}-%{release}
%if 0%{?rhel} && 0%{?rhel} <= 7
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
%endif
%description -n idn2
The idn2 package contains the idn2 command line tool for testing
IDNA2008 conversions.
%prep
gpgv2 --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0}
%setup -q
%patch0 -p1 -b .rpath
touch -c -r configure.rpath configure
touch -c -r m4/libtool.m4.rpath m4/libtool.m4
touch -c -r m4/libtool.m4.rpath aclocal.m4
%build
%configure --disable-static
%make_build
%install
%make_install
# Clean-up examples for documentation
%make_build -C examples distclean
rm -f examples/Makefile*
# Don't install any libtool .la files
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
# Some file cleanups
rm -f $RPM_BUILD_ROOT%{_datadir}/info/dir
%find_lang %{name}
%check
%make_build -C tests check
%ldconfig_scriptlets
%if 0%{?rhel} && 0%{?rhel} <= 7
%post -n idn2
/sbin/install-info %{_infodir}/%{name}.info.gz %{_infodir}/dir || :
%preun -n idn2
if [ $1 = 0 ]; then
/sbin/install-info --delete %{_infodir}/%{name}.info.gz %{_infodir}/dir || :
fi
%endif
%files -f %{name}.lang
%license COPYING COPYING.LESSERv3 COPYING.unicode COPYINGv2
%doc AUTHORS NEWS README.md
%{_libdir}/%{name}.so.*
%files devel
%doc doc/%{name}.html examples
%{_libdir}/%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%{_includedir}/*.h
%{_mandir}/man3/*
%{_datadir}/gtk-doc/
%files -n idn2
%{_bindir}/idn2
%{_mandir}/man1/idn2.1*
%{_infodir}/%{name}.info*
%changelog
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Jeff Law <law@redhat.com> - 2.3.0-3
- Touch a couple autoconf related files to prevent undesired rebuilding
if %configure changes one or more configure files.
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Nov 16 2019 Robert Scheck <robert@fedoraproject.org> 2.3.0-1
- Upgrade to 2.3.0 (#1764345, #1772703)
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu May 23 2019 Robert Scheck <robert@fedoraproject.org> 2.2.0-1
- Upgrade to 2.2.0 (#1713402)
* Sat Feb 09 2019 Robert Scheck <robert@fedoraproject.org> 2.1.1a-1
- Upgrade to 2.1.1a (#1674002 #c1)
* Sat Feb 09 2019 Robert Scheck <robert@fedoraproject.org> 2.1.1-1
- Upgrade to 2.1.1 (#1674002, #1674023)
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon May 21 2018 Robert Scheck <robert@fedoraproject.org> 2.0.5-1
- Upgrade to 2.0.5 (#1577864, #1579825)
* Wed Apr 04 2018 Robert Scheck <robert@fedoraproject.org> 2.0.4-7
- Split RPM scriptlets (#1563832)
* Mon Apr 02 2018 Robert Scheck <robert@fedoraproject.org> 2.0.4-6
- Use splitting suggestions from Nikos Mavrogiannopoulos instead
* Mon Apr 2 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2.0.4-5
- Split cli utilities out into a sub package
- Spec file cleanups
* Fri Mar 30 2018 Robert Scheck <robert@fedoraproject.org> 2.0.4-4
- Added upstream patch to fix silently transliterated decoded
domain names (#1556954)
* Sun Feb 18 2018 Robert Scheck <robert@fedoraproject.org> 2.0.4-3
- Added upstream patch to fix STD3 ASCII rules (#1543021)
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 30 2017 Robert Scheck <robert@fedoraproject.org> 2.0.4-1
- Upgrade to 2.0.4 (#1486881, #1486882)
* Tue Aug 01 2017 Robert Scheck <robert@fedoraproject.org> 2.0.3-1
- Upgrade to 2.0.3 (#1468608, #1474324)
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sun Apr 30 2017 Robert Scheck <robert@fedoraproject.org> 2.0.2-1
- Upgrade to 2.0.2 (#1444712)
* Thu Apr 06 2017 Robert Scheck <robert@fedoraproject.org> 2.0.0-1
- Upgrade to 2.0.0 (#1439727)
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.16-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jan 27 2017 Robert Scheck <robert@fedoraproject.org> 0.16-1
- Upgrade to 0.16 (#1416642)
* Mon Nov 21 2016 Robert Scheck <robert@fedoraproject.org> 0.11-1
- Upgrade to 0.11
- Reflect dual-licensing of library in license tag (#1397021)
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.10-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Dec 7 2015 Than Ngo <than@redhat.com> 0.10-2
- fix build failure related to missing automake-1.14
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat Feb 21 2015 Till Maas <opensource@till.name> - 0.10-2
- Rebuilt for Fedora 23 Change
https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
* Sun Oct 12 2014 Robert Scheck <robert@fedoraproject.org> 0.10-1
- Upgrade to 0.10
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Fri Nov 16 2012 Robert Scheck <robert@fedoraproject.org> 0.8-3
- Added provide bundled(gnulib) as it's a copylib (#821769)
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Sun Jan 15 2012 Robert Scheck <robert@fedoraproject.org> 0.8-1
- Upgrade to 0.8
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Sat Aug 13 2011 Robert Scheck <robert@fedoraproject.org> 0.7-1
- Upgrade to 0.7
* Sat Jun 04 2011 Robert Scheck <robert@fedoraproject.org> 0.6-1
- Upgrade to 0.6
* Wed May 18 2011 Robert Scheck <robert@fedoraproject.org> 0.5-1
- Upgrade to 0.5
* Mon May 16 2011 Robert Scheck <robert@fedoraproject.org> 0.4-1
- Upgrade to 0.4
* Sat May 07 2011 Robert Scheck <robert@fedoraproject.org> 0.3-1
- Upgrade to 0.3
- Initial spec file for Fedora and Red Hat Enterprise Linux

3
sources Normal file
View File

@ -0,0 +1,3 @@
SHA512 (gpgkey-1CB27DBC98614B2D5841646D08302DB6A2670428.gpg) = 2db1095d927e2c4cef6819cfe9a263e7488b704bfe3a9a7a708c997391370aa7c6c0c25671e6594620e38c303b8b67ec50a1fc8838af297df054d1ed93f2e68a
SHA512 (libidn2-2.3.0.tar.gz) = a2bf6d2249948bce14fbbc802f8af1c9b427fc9bf64203a2f3d7239d8e6061d0a8e7970a23e8e5889110a654a321e0504c7a6d049bb501e7f6a23d42b50b6187
SHA512 (libidn2-2.3.0.tar.gz.sig) = 5ac8623411e5acbbdbd6e1163b5763d0f99ed91fb6b0705264e44c2d9f98e230c025931cf40996126ff6a56396b9e6cd527e5caaa02978be3becff9fb4ad1a81