Name: libpsl Version: 0.20.2 Release: 5%{?dist} Summary: C library for the Publix Suffix List License: MIT URL: https://rockdaboot.github.io/libpsl Source0: https://github.com/rockdaboot/libpsl/releases/download/libpsl-%{version}/libpsl-%{version}.tar.gz BuildRequires: gcc BuildRequires: gettext-devel BuildRequires: glib2-devel BuildRequires: gtk-doc BuildRequires: libicu-devel BuildRequires: libidn2-devel BuildRequires: libunistring-devel BuildRequires: libxslt BuildRequires: publicsuffix-list BuildRequires: python3-devel Requires: publicsuffix-list-dafsa %description libpsl is a C library to handle the Public Suffix List. A "public suffix" is a domain name under which Internet users can directly register own names. Browsers and other web clients can use it to - Avoid privacy-leaking "supercookies"; - Avoid privacy-leaking "super domain" certificates; - Domain highlighting parts of the domain in a user interface; - Sorting domain lists by site; Libpsl... - has built-in PSL data for fast access; - allows to load PSL data from files; - checks if a given domain is a "public suffix"; - provides immediate cookie domain verification; - finds the longest public part of a given domain; - finds the shortest private part of a given domain; - works with international domains (UTF-8 and IDNA2008 Punycode); - is thread-safe; - handles IDNA2008 UTS#46; %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: publicsuffix-list %description devel This package contains libraries and header files for developing applications that use %{name}. %package -n psl Summary: Commandline utility to explore the Public Suffix List %description -n psl This package contains a commandline utility to explore the Public Suffix List, for example it checks if domains are public suffixes, checks if cookie-domain is acceptable for domains and so on. %package -n psl-make-dafsa Summary: Compiles the Public Suffix List into DAFSA form %description -n psl-make-dafsa This script produces C/C++ code or an architecture-independent binary object which represents a Deterministic Acyclic Finite State Automaton (DAFSA) from a plain text Public Suffix List. %prep %setup -q rm -frv list sed -i -e "1s|#!.*|#!%{__python3}|" src/psl-make-dafsa %build # Tarballs from github have 2 versions, one is raw files from repo, and # the other one from CDN contains pre-generated autotools files. # But makefile hack is not upstreamed yet so we continue reconfiguring these. # [ -f configure ] || autoreconf -fiv # autoreconf -fiv # libicu does allow support for a newer IDN specification (IDN 2008) than # libidn 1.x (IDN 2003). However, libpsl mostly relies on an internally # compiled list, which is generated at buildtime and the testsuite thereof # requires either libidn or libicu only at buildtime; the runtime # requirement is only for loading external lists, which IIUC neither curl # nor wget support. libidn2 supports IDN 2008 as well, and is *much* smaller # than libicu. # # curl (as of 7.51.0-1.fc25) and wget (as of 1.19-1.fc26) now depend on libidn2. # Therefore, we use libidn2 at runtime to help minimize core dependencies. %configure --disable-silent-rules \ --disable-static \ --enable-man \ --enable-gtk-doc \ --enable-builtin=libicu \ --enable-runtime=libidn2 \ --with-psl-distfile=%{_datadir}/publicsuffix/public_suffix_list.dafsa \ --with-psl-file=%{_datadir}/publicsuffix/effective_tld_names.dat \ --with-psl-testfile=%{_datadir}/publicsuffix/test_psl.txt # avoid using rpath sed -i libtool \ -e 's|^\(runpath_var=\).*$|\1|' \ -e 's|^\(hardcode_libdir_flag_spec=\).*$|\1|' %make_build %install %make_install # the script is noinst but the manpage is installed install -m0755 src/psl-make-dafsa %{buildroot}%{_bindir}/ find %{buildroot} -name '*.la' -delete -print %check make check || cat tests/test-suite.log %ldconfig_scriptlets %files %license COPYING %{_libdir}/libpsl.so.5 %{_libdir}/libpsl.so.5.* %files devel %doc AUTHORS NEWS %{_datadir}/gtk-doc/html/libpsl/ %{_includedir}/libpsl.h %{_libdir}/libpsl.so %{_libdir}/pkgconfig/libpsl.pc %{_mandir}/man3/libpsl.3* %files -n psl %doc AUTHORS NEWS %license COPYING %{_bindir}/psl %{_mandir}/man1/psl.1* %files -n psl-make-dafsa %license COPYING %{_bindir}/psl-make-dafsa %{_mandir}/man1/psl-make-dafsa.1* %changelog * Fri Jul 27 2018 Kamil Dudka - 0.20.2-5 - avoid using rpath in the psl executable (#1533448) * Fri Jul 13 2018 Fedora Release Engineering - 0.20.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Tue Jun 19 2018 Miro Hrončok - 0.20.2-3 - Rebuilt for Python 3.7 * Tue May 22 2018 Yaakov Selkowitz - 0.20.2-2 - Rebuilt for publicsuffix-list 20180514 * Tue May 01 2018 Yaakov Selkowitz - 0.20.2-1 - Update to 0.20.2 (#1572887) * Wed Feb 28 2018 Yaakov Selkowitz - 0.20.1-1 - Update to 0.20.1 (#1548604) * Wed Feb 07 2018 Fedora Release Engineering - 0.19.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Sat Feb 03 2018 Igor Gnatenko - 0.19.1-2 - Switch to %%ldconfig_scriptlets * Tue Nov 14 2017 Yaakov Selkowitz - 0.19.1-1 - new version (#1511463) * Fri Aug 11 2017 Yaakov Selkowitz - 0.18.0-1 - new version (#1473465) * Thu Aug 03 2017 Fedora Release Engineering - 0.17.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 0.17.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Feb 10 2017 Fedora Release Engineering - 0.17.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Tue Jan 17 2017 Yaakov Selkowitz - 0.17.0-1 - new version (#1413791) * Thu Jan 5 2017 Yaakov Selkowitz - 0.16.1-1 - new version (#1403620) * Tue Nov 15 2016 Yaakov Selkowitz - 0.15.0-1 - new version (#1394761) * Fri Nov 04 2016 Yaakov Selkowitz - 0.14.0-2 - Switch to libidn2 at runtime - Rebuilt with publicsuffix-list-20161028 * Mon Aug 15 2016 Yaakov Selkowitz - 0.14.0-1 - new version (#1361781) * Thu Mar 31 2016 Yaakov Selkowitz - 0.13.0-1 - new version (#1313825) - Use libidn at runtime, libicu only at buildtime (#1305701) * Thu Feb 04 2016 Fedora Release Engineering - 0.12.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Fri Jan 22 2016 Christopher Meng - 0.12.0-1 - Update to 0.12.0 * Wed Oct 28 2015 David Tardon - 0.7.0-7 - rebuild for ICU 56.1 * Tue Aug 04 2015 Christopher Meng - 0.7.0-6 - Rebuild for publicsuffix-list-20150731 * Wed Jun 17 2015 Fedora Release Engineering - 0.7.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Sat Feb 28 2015 Christopher Meng - 0.7.0-4 - Rebuild for publicsuffix-list-20150226 * Fri Feb 20 2015 Christopher Meng - 0.7.0-3 - Rebuild for publicsuffix-list-20150217 * Sun Feb 15 2015 Christopher Meng - 0.7.0-2 - Correct the dependency * Mon Feb 02 2015 Christopher Meng - 0.7.0-1 - Update to 0.7.0 * Mon Jan 26 2015 David Tardon - 0.6.2-2 - rebuild for ICU 54.1 * Thu Nov 20 2014 Christopher Meng - 0.6.2-1 - Update to 0.6.2 * Tue Aug 26 2014 David Tardon - 0.5.1-3 - rebuild for ICU 53.1 * Sun Aug 17 2014 Fedora Release Engineering - 0.5.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Mon Aug 04 2014 Christopher Meng - 0.5.1-1 - Update to 0.5.1 - Drop patch merged upstream * Sat Aug 02 2014 Christopher Meng - 0.5.0-3 - Add a patch from Jakub Čajka to complete the tests on non-x86 arch. * Thu Jul 24 2014 Christopher Meng - 0.5.0-2 - Drop useless test data - Add missing gettext-devel - psl is now separately packaged recommended by the upstream * Fri Jul 04 2014 Christopher Meng - 0.5.0-1 - Update to 0.5.0 * Tue Jul 01 2014 Christopher Meng - 0.4.0-1 - Update to 0.4.0 * Tue Apr 08 2014 Christopher Meng - 0.2-1 - Initial Package.