diff -Nru libpsl-0.20.2/AUTHORS libpsl-0.21.0/AUTHORS --- libpsl-0.20.2/AUTHORS 2018-04-26 18:18:39.000000000 +0000 +++ libpsl-0.21.0/AUTHORS 2019-04-16 13:10:17.000000000 +0000 @@ -18,3 +18,7 @@ Ryan Sleevi (Discussion, Requested DAFSA format and ICANN/PRIVATE support) Daurnimator (Code review, discussion, reports) Olle Liljenzin (Original DAFSA implementation and UTF-8 patch) +Claudio Saveedra (Add support for PSL_TYPE_NO_STAR_RULE) +Chun-wei Fan (Add NMake files) +Xavier Claessens (Add Meson build system) +Ignacio Casal Quinteiro (Improve Meson build) diff -Nru libpsl-0.20.2/configure.ac libpsl-0.21.0/configure.ac --- libpsl-0.20.2/configure.ac 2018-04-26 18:18:39.000000000 +0000 +++ libpsl-0.21.0/configure.ac 2019-04-16 13:10:17.000000000 +0000 @@ -1,8 +1,8 @@ -AC_INIT([libpsl], [0.20.2], [tim.ruehsen@gmx.de], [libpsl], [https://github.com/rockdaboot/libpsl]) +AC_INIT([libpsl], [0.21.0], [tim.ruehsen@gmx.de], [libpsl], [https://github.com/rockdaboot/libpsl]) AC_PREREQ([2.59]) AC_CONFIG_AUX_DIR([build-aux]) -AM_INIT_AUTOMAKE([1.10 no-define foreign]) +AM_INIT_AUTOMAKE([1.10 no-define foreign dist-lzip]) # Generate two configuration headers; one for building the library itself with # an autogenerated template, and a second one that will be installed alongside @@ -104,7 +104,7 @@ fi ], [ enable_asan=no ]) -# Define these substitions here to keep all version information in one place. +# Define these substitutions here to keep all version information in one place. # For information on how to properly maintain the library version information, # refer to the libtool manual, section "Updating library version information": # https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html @@ -115,7 +115,7 @@ # 4. If any interfaces have been added, removed, or changed since the last update, increment current, and set revision to 0. # 5. If any interfaces have been added since the last public release, then increment age. # 6. If any existing interfaces have been removed or changed since the last public release, then set age to 0. -AC_SUBST([LIBPSL_SO_VERSION], [8:1:3]) +AC_SUBST([LIBPSL_SO_VERSION], [8:2:3]) AC_SUBST([LIBPSL_VERSION], $VERSION) # Check for enable/disable builtin PSL data @@ -180,18 +180,17 @@ # Check for libidn2 PKG_CHECK_MODULES([LIBIDN2], [libidn2], [ HAVE_LIBIDN2=yes - if test "$enable_runtime" = "libidn2"; then + if test "$enable_runtime" = "libidn2" -o "$enable_runtime" = "auto"; then + LIBS="$LIBIDN2_LIBS $LIBS" CFLAGS="$LIBIDN2_CFLAGS $CFLAGS" fi ], [ - OLDLIBS=$LIBS AC_SEARCH_LIBS(idn2_lookup_u8, idn2, HAVE_LIBIDN2=yes, [ if test "$enable_runtime" = "libidn2" -o "$enable_builtin" = "libidn2"; then AC_MSG_ERROR(You requested libidn2 but it is not installed.) fi ], -lunistring) - LIBS=$OLDLIBS ]) if test "x$HAVE_LIBIDN2" = "xyes"; then @@ -212,7 +211,8 @@ # using AC_SEARCH_LIBS also don't work since functions have the library version appended PKG_CHECK_MODULES([LIBICU], [icu-uc], [ HAVE_LIBICU=yes - if test "$enable_runtime" = "libicu"; then + if test "$enable_runtime" = "libicu" -o "$enable_runtime" = "auto"; then + LIBS="$LIBICU_LIBS $LIBS" CFLAGS="$LIBICU_CFLAGS $CFLAGS" fi ], [ @@ -228,8 +228,8 @@ if test "$enable_runtime" = "libicu" -o "$enable_builtin" = "libicu"; then AC_MSG_ERROR(You requested libicu but it is not installed.) fi + LIBS=$OLDLIBS ]) - LIBS=$OLDLIBS ]) if test "x$HAVE_LIBICU" = "xyes"; then @@ -248,18 +248,17 @@ # Check for libidn PKG_CHECK_MODULES([LIBIDN], [libidn], [ HAVE_LIBIDN=yes - if test "$enable_runtime" = "libidn"; then + if test "$enable_runtime" = "libidn" -o "$enable_runtime" = "auto"; then + LIBS="$LIBIDN_LIBS $LIBS" CFLAGS="$LIBIDN_CFLAGS $CFLAGS" fi ], [ - OLDLIBS=$LIBS AC_SEARCH_LIBS(idna_to_ascii_8z, idn, HAVE_LIBIDN=yes, [ if test "$enable_runtime" = "libidn" -o "$enable_builtin" = "libidn"; then AC_MSG_ERROR(You requested libidn but it is not installed.) fi ]) - LIBS=$OLDLIBS ]) if test "x$HAVE_LIBIDN" = "xyes"; then @@ -284,9 +283,7 @@ if test "x$HAVE_LIBIDN2" = "xyes" -o "x$HAVE_LIBIDN" = "xyes"; then # Check for libunistring, we need it for psl_str_to_utf8lower() - OLDLIBS=$LIBS AC_SEARCH_LIBS(u8_tolower, unistring, HAVE_UNISTRING=yes, AC_MSG_ERROR(You requested libidn2|libidn but libunistring is not installed.)) - LIBS=$OLDLIBS fi # AM_ICONV sets @LIBICONV@ and @LTLIBICONV@ for use in Makefile.am @@ -313,8 +310,18 @@ elif test -n "$NEEDS_NSL" ; then LIBS="$LIBS -lnsl" else - # Needed for MinGW / Windows - AC_SEARCH_LIBS(inet_pton, ws2_32) + # Platform dependant options + case "${host_os}" in + # MinGW / Windows + *mingw*) + # Select Windows NT/2000 and later, for WSAStringToAddressW() + CPPFLAGS="$CPPFLAGS -D_WIN32_WINNT=0x500" + # Needed for network support + LIBS="$LIBS -lws2_32" + ;; + *) + ;; + esac fi # Check for clock_gettime() used for performance measurement diff -Nru libpsl-0.20.2/contrib/check-hard-meson libpsl-0.21.0/contrib/check-hard-meson --- libpsl-0.20.2/contrib/check-hard-meson 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/contrib/check-hard-meson 2019-04-16 13:10:17.000000000 +0000 @@ -0,0 +1,69 @@ +#!/bin/sh +# +# Do some checking before 'git push'. + +# Set a stricter bash mode +set -e +set -u + +# We define _GNU_SOURCE to avoid warnings with missing prototypes. +# C89 does not know snprintf, strdup, strndup, popen, pclose +export CFLAGS="-std=gnu89 -pedantic -g -Wall -Wextra -Wstrict-prototypes -Wold-style-definition -Wwrite-strings -Wshadow -Wformat -Wformat-security -Wunreachable-code -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition" + +ASAN_FLAGS="-fsanitize=address -fno-omit-frame-pointer -fsanitize-address-use-after-scope" + +# measure time consumed and print it at the end of the script +START=$(date +%s.%N) + +for CC in clang gcc; do + export CC + echo + echo "*** Testing with CC=$CC" + + for options in \ + "-Dbuiltin=libicu -Druntime=libicu" \ + "-Dbuiltin=libidn2 -Druntime=libidn2" \ + "-Dbuiltin=libidn -Druntime=libidn" \ + "-Dbuiltin=no -Druntime=no"; do + + # normal build+check+valgrind-check + echo + echo " *** $options" + rm -rf builddir + meson builddir $options + cd builddir + ninja + for xLCALL in C tr_TR.utf8; do + LC_ALL=$xLCALL meson test + LC_ALL=$xLCALL meson test --wrap='valgrind --tool=memcheck' + done + cd .. + + # UBSAN build+check + flags="-Db_sanitize=undefined -Db_lundef=false" + echo + echo " *** $options $flags" + rm -rf builddir + LDFLAGS="-lubsan" meson builddir $options $flags + LDFLAGS="-lubsan" ninja -C builddir + for xLCALL in C tr_TR.utf8; do + LC_ALL=$xLCALL ninja test -C builddir + done + + # ASAN build+check + flags="-Db_sanitize=address -Db_lundef=false" + echo + echo " *** $options $flags" + rm -rf builddir + CFLAGS="$CFLAGS $ASAN_FLAGS" meson builddir $options $flags + CFLAGS="$CFLAGS $ASAN_FLAGS" ninja -C builddir + for xLCALL in C tr_TR.utf8; do + LC_ALL=$xLCALL CFLAGS="$CFLAGS $ASAN_FLAGS" ninja test -C builddir + done + + done +done + +END=$(date +%s.%N) +echo +echo "Duration: "$(echo "$END - $START" | bc) diff -Nru libpsl-0.20.2/contrib/mingw libpsl-0.21.0/contrib/mingw --- libpsl-0.20.2/contrib/mingw 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/contrib/mingw 2019-04-16 13:10:17.000000000 +0000 @@ -0,0 +1,57 @@ +#!/bin/bash + +set -e + +# just in case... +unset CC +unset CXX + +#PREFIX=i686-w64-mingw32 +PREFIX=x86_64-w64-mingw32 + +#export PATH="/usr/$PREFIX/bin:$PATH" +export INSTALLDIR="$PWD/$PREFIX" +export PKG_CONFIG_PATH=$INSTALLDIR/lib/pkgconfig:/usr/$PREFIX/lib/pkgconfig +export CPPFLAGS="-I$INSTALLDIR/include" +export LDFLAGS="-L$INSTALLDIR/lib" + +# let mingw compiler be less verbose +export CFLAGS="-O2 -Wall -Wno-format" + +# build libunistring +if [ ! -d libunistring ]; then + git clone https://git.savannah.gnu.org/git/libunistring.git + cd libunistring +else + cd libunistring + git pull +fi +./autogen.sh +./configure --build=x86_64-pc-linux-gnu --host=$PREFIX --enable-shared --prefix=$INSTALLDIR +make clean +make -j$(nproc) +make install +cd .. + +# build libidn2 +if [ ! -d libidn2 ]; then + git clone https://gitlab.com/libidn/libidn2.git + cd libidn2 +else + cd libidn2 + git pull +fi +./bootstrap +./configure --build=x86_64-pc-linux-gnu --host=$PREFIX --enable-shared --disable-doc --disable-gcc-warnings --prefix=$INSTALLDIR +make clean +make -j$(nproc) +make install +cd .. + +# build libpsl +export WINEPATH="$INSTALLDIR/bin;$INSTALLDIR/lib;/usr/$PREFIX/bin;/usr/$PREFIX/lib;$PWD/libpsl/.libs;$GCCLIB" +./autogen.sh +./configure --build=x86_64-pc-linux-gnu --host=$PREFIX --enable-shared --disable-gtk-doc --enable-runtime=libidn2 --enable-builtin=libidn2 --prefix=$INSTALLDIR +make clean +make -j$(nproc) +make check -j$(nproc) LOG_COMPILER=wine diff -Nru libpsl-0.20.2/contrib/spell-checker libpsl-0.21.0/contrib/spell-checker --- libpsl-0.20.2/contrib/spell-checker 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/contrib/spell-checker 2019-04-16 13:10:17.000000000 +0000 @@ -0,0 +1,9 @@ +#!/usr/bin/env sh +# +# see https://github.com/codespell-project/codespell +# +# in short: +# - pip install codespell +# - add ~/.local/bin to PATH + +codespell $* -L "tim" `git ls-files|egrep -v '_fuzzer.in|_fuzzer.repro|^list$'` diff -Nru libpsl-0.20.2/debian/changelog libpsl-0.21.0/debian/changelog --- libpsl-0.20.2/debian/changelog 2018-10-15 19:11:19.000000000 +0000 +++ libpsl-0.21.0/debian/changelog 2020-03-31 16:33:53.000000000 +0000 @@ -1,3 +1,25 @@ +libpsl (0.21.0-1ubuntu1) focal; urgency=medium + + * Make autopkgtests cross-arch-friendly: don't include a test dep on + diffutils, which is essential. + + -- Steve Langasek Tue, 31 Mar 2020 09:33:53 -0700 + +libpsl (0.21.0-1) unstable; urgency=medium + + * New upstream release + * standards-version: bump to 4.5.0 (no changes needed) + * wrap-and-sort -ast for d/tests/control + * move to dh 12 + * import patches from upstream (closes: #945243) + * added Build-Depends line to libpsl5.symbols + * install manpages from upstream installation, not source + * deliberately avoid installing .la files + * dh_missing: use --fail-missing + * avoid lintian warnings about fuzzer inputs + + -- Daniel Kahn Gillmor Wed, 04 Mar 2020 12:39:16 -0500 + libpsl (0.20.2-2) unstable; urgency=medium * correct dependencies for autopkgtest diff -Nru libpsl-0.20.2/debian/compat libpsl-0.21.0/debian/compat --- libpsl-0.20.2/debian/compat 2018-05-31 14:33:02.000000000 +0000 +++ libpsl-0.21.0/debian/compat 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -11 diff -Nru libpsl-0.20.2/debian/control libpsl-0.21.0/debian/control --- libpsl-0.20.2/debian/control 2018-10-15 19:11:15.000000000 +0000 +++ libpsl-0.21.0/debian/control 2020-03-31 16:33:51.000000000 +0000 @@ -1,10 +1,11 @@ Source: libpsl Priority: optional -Maintainer: Tim Rühsen +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Tim Rühsen Uploaders: Daniel Kahn Gillmor , Build-Depends: - debhelper (>= 11~), + debhelper-compat (= 12), Build-Depends-Arch: autoconf-archive, automake, @@ -14,7 +15,7 @@ pkg-config, publicsuffix (>= 20150507), python3:any, -Standards-Version: 4.2.1 +Standards-Version: 4.5.0 Section: libs Homepage: https://github.com/rockdaboot/libpsl Vcs-Git: https://salsa.debian.org/debian/libpsl.git diff -Nru libpsl-0.20.2/debian/libpsl5.symbols libpsl-0.21.0/debian/libpsl5.symbols --- libpsl-0.20.2/debian/libpsl5.symbols 2018-05-31 14:33:02.000000000 +0000 +++ libpsl-0.21.0/debian/libpsl5.symbols 2020-03-04 17:39:16.000000000 +0000 @@ -1,4 +1,5 @@ libpsl.so.5 libpsl5 #MINVER# +* Build-Depends-Package: libpsl-dev psl_builtin@Base 0.13.0 psl_builtin_file_time@Base 0.13.0 psl_builtin_filename@Base 0.13.0 diff -Nru libpsl-0.20.2/debian/libpsl-dev.manpages libpsl-0.21.0/debian/libpsl-dev.manpages --- libpsl-0.20.2/debian/libpsl-dev.manpages 2018-05-31 14:33:02.000000000 +0000 +++ libpsl-0.21.0/debian/libpsl-dev.manpages 2020-03-04 17:39:16.000000000 +0000 @@ -1 +1 @@ -docs/libpsl/libpsl.3 +usr/share/man/man3/libpsl.3 diff -Nru libpsl-0.20.2/debian/not-installed libpsl-0.21.0/debian/not-installed --- libpsl-0.20.2/debian/not-installed 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/debian/not-installed 2020-03-04 17:39:16.000000000 +0000 @@ -0,0 +1 @@ +usr/lib/*/libpsl.la diff -Nru libpsl-0.20.2/debian/patches/0002-make-psl-make-dafsa-py3-based.patch libpsl-0.21.0/debian/patches/0002-make-psl-make-dafsa-py3-based.patch --- libpsl-0.20.2/debian/patches/0002-make-psl-make-dafsa-py3-based.patch 2018-05-31 15:00:31.000000000 +0000 +++ libpsl-0.21.0/debian/patches/0002-make-psl-make-dafsa-py3-based.patch 2020-03-04 17:39:16.000000000 +0000 @@ -8,7 +8,7 @@ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac -index 9d41051..2795610 100644 +index cd504b3..9bd3631 100644 --- a/configure.ac +++ b/configure.ac @@ -69,8 +69,8 @@ AC_ARG_ENABLE([man], @@ -23,7 +23,7 @@ PKG_PROG_PKG_CONFIG diff --git a/src/psl-make-dafsa b/src/psl-make-dafsa -index 8f5bb76..7ad4733 100755 +index 2bfd879..13afac9 100755 --- a/src/psl-make-dafsa +++ b/src/psl-make-dafsa @@ -1,4 +1,4 @@ diff -Nru libpsl-0.20.2/debian/patches/0003-Fix-build-when-configured-with-with-psl-file.patch libpsl-0.21.0/debian/patches/0003-Fix-build-when-configured-with-with-psl-file.patch --- libpsl-0.20.2/debian/patches/0003-Fix-build-when-configured-with-with-psl-file.patch 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/debian/patches/0003-Fix-build-when-configured-with-with-psl-file.patch 2020-03-04 17:39:16.000000000 +0000 @@ -0,0 +1,34 @@ +From: Po-Chuan Hsieh +Date: Wed, 17 Apr 2019 13:25:48 +0000 +Subject: Fix build when configured with --with-psl-file + +The error message is as follows: +Making all in tests +make: don't know how to make ../list/public_suffix_list.dat. Stop + +make: stopped in /usr/ports/works/usr/ports/dns/libpsl/work/libpsl-libpsl-0.21.0/tests +*** Error code 1 + +Stop. + +(cherry picked from commit 9347024221f4a9d63f9dcafcda13362a7c8d92fe) +--- + tests/Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 8b29b61..b226631 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -33,9 +33,9 @@ TESTS = $(PSL_TESTS) + # dafsa.psl and dafsa_ascii.psl must be created before any test is executed + # check-local target works in parallel to the tests, so the test suite will likely fail + BUILT_SOURCES = psl.dafsa psl_ascii.dafsa +-psl.dafsa: $(top_srcdir)/list/public_suffix_list.dat ++psl.dafsa: $(PSL_FILE) + $(top_srcdir)/src/psl-make-dafsa --output-format=binary "$(PSL_FILE)" psl.dafsa +-psl_ascii.dafsa: $(top_srcdir)/list/public_suffix_list.dat ++psl_ascii.dafsa: $(PSL_FILE) + $(top_srcdir)/src/psl-make-dafsa --output-format=binary --encoding=ascii "$(PSL_FILE)" psl_ascii.dafsa + + clean-local: diff -Nru libpsl-0.20.2/debian/patches/0004-Add-PSL_API-to-libpsl-sections.txt.patch libpsl-0.21.0/debian/patches/0004-Add-PSL_API-to-libpsl-sections.txt.patch --- libpsl-0.20.2/debian/patches/0004-Add-PSL_API-to-libpsl-sections.txt.patch 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/debian/patches/0004-Add-PSL_API-to-libpsl-sections.txt.patch 2020-03-04 17:39:16.000000000 +0000 @@ -0,0 +1,21 @@ +From: =?utf-8?q?Tim_R=C3=BChsen?= +Date: Sun, 26 May 2019 17:59:44 +0200 +Subject: Add PSL_API to libpsl-sections.txt + +(cherry picked from commit ef352f8923ada2ec766f8bfdefc86ffd8402af09) +--- + docs/libpsl/libpsl-sections.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/docs/libpsl/libpsl-sections.txt b/docs/libpsl/libpsl-sections.txt +index c858051..ba7cf06 100644 +--- a/docs/libpsl/libpsl-sections.txt ++++ b/docs/libpsl/libpsl-sections.txt +@@ -1,6 +1,7 @@ +
+ libpsl + Public Suffix List functions ++PSL_API + PSL_VERSION + PSL_VERSION_MAJOR + PSL_VERSION_MINOR diff -Nru libpsl-0.20.2/debian/patches/0005-Add-missing-api-indeces-for-gtk-doc.patch libpsl-0.21.0/debian/patches/0005-Add-missing-api-indeces-for-gtk-doc.patch --- libpsl-0.20.2/debian/patches/0005-Add-missing-api-indeces-for-gtk-doc.patch 1970-01-01 00:00:00.000000000 +0000 +++ libpsl-0.21.0/debian/patches/0005-Add-missing-api-indeces-for-gtk-doc.patch 2020-03-04 17:39:16.000000000 +0000 @@ -0,0 +1,49 @@ +From: =?utf-8?q?Tim_R=C3=BChsen?= +Date: Sun, 26 May 2019 18:00:29 +0200 +Subject: Add missing api-indeces for gtk-doc + +(cherry picked from commit 74ee95079da53ed451e0c6bfb2758251a4243cab) +--- + docs/libpsl/libpsl-docs.sgml | 29 +++++++++++++++++++++++++++++ + 1 file changed, 29 insertions(+) + +diff --git a/docs/libpsl/libpsl-docs.sgml b/docs/libpsl/libpsl-docs.sgml +index 1eca9a2..335d241 100644 +--- a/docs/libpsl/libpsl-docs.sgml ++++ b/docs/libpsl/libpsl-docs.sgml +@@ -34,6 +34,35 @@ + Index of deprecated API + + ++ ++ Index of symbols included in 0.1 ++ ++ ++ ++ New symbols included in 0.2.5 ++ ++ ++ ++ New symbols included in 0.4 ++ ++ ++ ++ New symbols included in 0.10.0 ++ ++ ++ ++ Index of symbols included in 0.11.0 ++ ++ ++ ++ Index of symbols included in 0.16 ++ ++ ++ ++ Index of symbols included in 0.19 ++ ++ ++ + +