diff options
Diffstat (limited to 'system/libidn')
-rw-r--r-- | system/libidn/APKBUILD | 54 | ||||
-rw-r--r-- | system/libidn/gnulib-tests-dont-require-gpg-passphrase.patch | 10 | ||||
-rw-r--r-- | system/libidn/localename-test-fix.patch | 34 |
3 files changed, 98 insertions, 0 deletions
diff --git a/system/libidn/APKBUILD b/system/libidn/APKBUILD new file mode 100644 index 000000000..5edbabdb2 --- /dev/null +++ b/system/libidn/APKBUILD @@ -0,0 +1,54 @@ +# Contributor: Michael Mason <ms13sp@gmail.com> +# Maintainer: +pkgname=libidn +pkgver=1.35 +pkgrel=0 +pkgdesc="Library for internationalized domain names" +url="https://www.gnu.org/software/libidn/" +arch="all" +license="(GPL-2.0+ OR LGPL-3.0+) AND GPL-3.0+" +depends= +makedepends= +checkdepends="diffutils" +install= +subpackages="$pkgname-doc $pkgname-dev $pkgname-lang" +source="http://ftp.gnu.org/gnu/libidn/$pkgname-$pkgver.tar.gz + localename-test-fix.patch + gnulib-tests-dont-require-gpg-passphrase.patch + " + +builddir="$srcdir/$pkgname-$pkgver" + +# secfixes: +# 1.33-r0: +# - CVE-2015-8948 +# - CVE-2016-6261 +# - CVE-2016-6262 +# - CVE-2016-6263 + +build() { + cd "$builddir" + + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="782260f73b1fd8ebea8a40e2b3a6866c4f67494b2b3df03748daa9c0f842a9578932e746eb4bbf2547fccb1d65d7fc99a7977759dbe58f87f2fdd26d0fe45a09 libidn-1.35.tar.gz +ad470fa4015be1bfa61298cb0dafd3ca7f37d59308d371bd00449e9c899443d13c93f35a4c335d50ead489344f57fee2648a43a5f972a6d614e4a00b48fa3faf localename-test-fix.patch +de8d47be61ac53364b5f8a7b12d1c16d5905805bd2405daf30a8022a3905a167cb6eddbe86faa518b98a3f315d8df8d541e6b248b46c539a4938e81a90b44852 gnulib-tests-dont-require-gpg-passphrase.patch" diff --git a/system/libidn/gnulib-tests-dont-require-gpg-passphrase.patch b/system/libidn/gnulib-tests-dont-require-gpg-passphrase.patch new file mode 100644 index 000000000..d32b0097d --- /dev/null +++ b/system/libidn/gnulib-tests-dont-require-gpg-passphrase.patch @@ -0,0 +1,10 @@ +--- libidn-1.35/gltests/test-vc-list-files-git.sh.old 2018-01-03 18:36:29.000000000 -0600 ++++ libidn-1.35/gltests/test-vc-list-files-git.sh 2018-06-18 21:57:08.305562148 -0500 +@@ -32,6 +32,7 @@ + touch d/a b c && + git config user.email "you@example.com" && + git config user.name "Your Name" && ++ git config commit.gpgsign false && + git add . > /dev/null && + git commit -q -a -m log && + printf '%s\n' b c d/a > expected && diff --git a/system/libidn/localename-test-fix.patch b/system/libidn/localename-test-fix.patch new file mode 100644 index 000000000..4b77c2a24 --- /dev/null +++ b/system/libidn/localename-test-fix.patch @@ -0,0 +1,34 @@ +--- libidn-1.33/lib/gltests/localename.c.old 2016-12-31 13:54:43.000000000 +0000 ++++ libidn-1.33/lib/gltests/localename.c 2017-07-30 16:40:47.098541270 +0000 +@@ -40,7 +40,7 @@ + # if defined __APPLE__ && defined __MACH__ + # include <xlocale.h> + # endif +-# if (__GLIBC__ >= 2 && !defined __UCLIBC__) || defined __CYGWIN__ ++# if defined __linux__ + # include <langinfo.h> + # endif + # if !defined IN_LIBINTL +@@ -2692,16 +2692,19 @@ + locale_t thread_locale = uselocale (NULL); + if (thread_locale != LC_GLOBAL_LOCALE) + { +-# if __GLIBC__ >= 2 && !defined __UCLIBC__ ++# if defined(_NL_LOCALE_NAME) ++ const char *name = nl_langinfo(_NL_LOCALE_NAME(category)); ++# if __GLIBC__ >= 2 && !defined __UCLIBC__ + /* Work around an incorrect definition of the _NL_LOCALE_NAME macro in + glibc < 2.12. + See <https://sourceware.org/bugzilla/show_bug.cgi?id=10968>. */ +- const char *name = +- nl_langinfo (_NL_ITEM ((category), _NL_ITEM_INDEX (-1))); ++ if (name[0] == '\0') ++ name = nl_langinfo (_NL_ITEM ((category), _NL_ITEM_INDEX (-1))); + if (name[0] == '\0') + /* Fallback code for glibc < 2.4, which did not implement + nl_langinfo (_NL_LOCALE_NAME (category)). */ + name = thread_locale->__names[category]; ++# endif + return name; + # elif (defined __FreeBSD__ || defined __DragonFly__) || (defined __APPLE__ && defined __MACH__) + /* FreeBSD, Mac OS X */ |