[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/e60b66f845f8c340dc11d9c940aef36858bc2750.package-submissions@fink.p.sourceforge.net>
Info file for libiconv-1.14-9 to fix package for 10.13


Attachments:

- [libiconv.info](https://sourceforge.net/p/fink/package-submissions/_discuss/thread/0c303fdb/6b06/attachment/libiconv.info) (5.3 kB; application/octet-stream)


---

** [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:12 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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.