[fink:package-submissions] #5000 libiconv-1.14-9 to fix package for 10.13
Jack Howarth via Fink-tracker <[email protected]>
| Newsgroups | gmane.os.apple.fink.tracker |
|---|---|
| Message-ID | </p/fink/package-submissions/5000/9205377c3196d47025290edf17ba9f7cfe0e8ac2.package-submissions@fink.p.sourceforge.net> |
Superceded by https://sourceforge.net/p/fink/package-submissions/5004/ --- ** [package-submissions:#5000] libiconv-1.14-9 to fix package for 10.13** **Status:** open **Group:** Undergoing_Validation **Created:** Sat Sep 09, 2017 02:12 AM UTC by Jack Howarth **Last Updated:** Sat Sep 09, 2017 02:14 AM UTC **Owner:** nobody The current libiconv needs to be patched to address the format string strictness in High Sierra which enforces that %n isn't used in dynamic format strings. The attached Info file and patch achieves that with the following changes. ~~~ --- /sw/fink/10.13/stable/main/finkinfo/base/libiconv.info 2017-09-08 21:58:10.000000000 -0400 +++ libiconv.info 2017-09-08 22:06:20.000000000 -0400 @@ -1,11 +1,11 @@ Package: libiconv Version: 1.14 -Revision: 8 +Revision: 9 Description: Character set conversion library License: LGPL Maintainer: Fink Core Group <[email protected]> Depends: base-files -BuildDepends: fink (>= 0.24.12) +BuildDepends: fink (>= 0.30.0) Essential: yes #Source: mirror:sourceforge:fink/%n-%v.tar.gz Source: mirror:gnu:libiconv/libiconv-%v.tar.gz @@ -17,8 +17,10 @@ Source3-MD5: c1f1db32fb6598d6a93e6e88796a8632 PatchFile: %n.patch PatchFile-MD5: 93f202f6f6e27a9707ad8a21fc15aef4 +PatchFile2: %n-gettext.patch +PatchFile2-MD5: e1def8d245425bc51f604ce05dbe9542 PatchScript: << - cd %b/..; patch -p0 < %{PatchFile} + cd %b/..; patch -p0 < %{PatchFile}; patch -p0 < %{PatchFile2} << NoSetLDFLAGS: true NoSetCPPFLAGS: true @@ -150,5 +152,9 @@ * On 10.7+, modernize compiler wrapper * Don't build genaliases headers for systems that we will not even use. Build is -jN safe afterwards. + + With format string strictness, High Sierra also enforces that + %n isn't used in dynamic format strings, but we should just + disable its use on darwin in general. << Homepage: http://www.gnu.org/software/libiconv/ ~~~ and the new libiconv-getttext.patch containing... ~~~ diff -uNr gettext-0.19.8.1,orig/gettext-runtime/intl/vasnprintf.c gettext-0.19.8.1/gettext-runtime/intl/vasnprintf.c --- gettext-0.19.8.1,orig/gettext-runtime/intl/vasnprintf.c 2016-03-20 03:37:53.000000000 -0400 +++ gettext-0.19.8.1/gettext-runtime/intl/vasnprintf.c 2017-08-12 10:06:12.000000000 -0400 @@ -4858,7 +4858,7 @@ #endif *fbp = dp->conversion; #if USE_SNPRINTF -# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) +# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) fbp[1] = '%'; fbp[2] = 'n'; fbp[3] = '\0'; diff -uNr gettext-0.19.8.1,orig/gettext-runtime/libasprintf/vasnprintf.c gettext-0.19.8.1/gettext-runtime/libasprintf/vasnprintf.c --- gettext-0.19.8.1,orig/gettext-runtime/libasprintf/vasnprintf.c 2016-03-20 03:37:53.000000000 -0400 +++ gettext-0.19.8.1/gettext-runtime/libasprintf/vasnprintf.c 2017-08-12 10:05:39.000000000 -0400 @@ -4858,7 +4858,7 @@ #endif *fbp = dp->conversion; #if USE_SNPRINTF -# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) +# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) fbp[1] = '%'; fbp[2] = 'n'; fbp[3] = '\0'; diff -uNr gettext-0.19.8.1,orig/gettext-tools/gnulib-lib/vasnprintf.c gettext-0.19.8.1/gettext-tools/gnulib-lib/vasnprintf.c --- gettext-0.19.8.1,orig/gettext-tools/gnulib-lib/vasnprintf.c 2016-06-11 09:00:02.000000000 -0400 +++ gettext-0.19.8.1/gettext-tools/gnulib-lib/vasnprintf.c 2017-08-12 10:06:28.000000000 -0400 @@ -4858,7 +4858,7 @@ #endif *fbp = dp->conversion; #if USE_SNPRINTF -# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) +# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) fbp[1] = '%'; fbp[2] = 'n'; fbp[3] = '\0'; diff -uNr gettext-0.19.8.1,orig/gettext-tools/libgettextpo/vasnprintf.c gettext-0.19.8.1/gettext-tools/libgettextpo/vasnprintf.c --- gettext-0.19.8.1,orig/gettext-tools/libgettextpo/vasnprintf.c 2016-06-11 09:00:34.000000000 -0400 +++ gettext-0.19.8.1/gettext-tools/libgettextpo/vasnprintf.c 2017-08-12 10:06:49.000000000 -0400 @@ -4858,7 +4858,7 @@ #endif *fbp = dp->conversion; #if USE_SNPRINTF -# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) +# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__)) fbp[1] = '%'; fbp[2] = 'n'; fbp[3] = '\0'; ~~~ Tested on 10.13 with 'fink -m' --- Sent from sourceforge.net because [email protected] is subscribed to https://sourceforge.net/p/fink/package-submissions/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/fink/admin/package-submissions/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Fink-tracker mailing list [email protected] http://news.gmane.org/gmane.os.apple.fink.tracker