From a393aeeb96eec86beba798192d9058a55a135111 Mon Sep 17 00:00:00 2001 From: Joshua Root Date: Mon, 2 Mar 2026 14:56:11 +1100 Subject: [PATCH] libiconv: update to 1.18 Patch Makefile.devel in post-patch and touch files to prevent autotools from being run. Also silence implicit declaration warnings. MIN and MAX are checked for in limits.h and sys/param.h, and the implicit declaration error happens for the former. The 'unreachable' and 'alignof' macros may not be available depending on the compiler and system headers' supported C standard. The implicit int error is caused by testing if static_assert works in the global scope. Closes: https://trac.macports.org/ticket/66232 --- textproc/libiconv/Portfile | 18 ++++++++++-------- .../files/patch-src-Makefile.in-darwin.diff | 6 +++--- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/textproc/libiconv/Portfile b/textproc/libiconv/Portfile index 5de37ecf96a..dd13f51c45f 100644 --- a/textproc/libiconv/Portfile +++ b/textproc/libiconv/Portfile @@ -5,11 +5,11 @@ PortGroup muniversal 1.1 PortGroup clang_dependency 1.0 name libiconv -version 1.17 +version 1.18 revision 0 -checksums rmd160 5fd15d5f8ed7bd8e410b432495f5d892598ae965 \ - sha256 8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313 \ - size 5413283 +checksums rmd160 7daf36870dc6258ef8570a727b9b75af2ab65d7f \ + sha256 3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8 \ + size 5822590 categories textproc license {LGPL-2+ GPL-3+} @@ -32,15 +32,17 @@ depends_skip_archcheck gperf patchfiles patch-src-Makefile.in-darwin.diff +post-patch { + reinplace -E "s|^(CFLAGS *=).*|\\1 ${configure.cflags} -isysroot${configure.sysroot}|" ${worksrcpath}/Makefile.devel + touch -W ${worksrcpath} aclocal.m4 srclib/Makefile.in configure config.h.in +} + # Also needed by later clangs. if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} { clang_dependency.extra_versions 3.7 } -configure.checks.implicit_function_declaration.whitelist-append strchr -configure.cmd-prepend mv Makefile.devel Makefile.devel.orig \ - && sed -E {"s|^(CFLAGS *=).*|\1 $CFLAGS|"} < Makefile.devel.orig \ - | sed -E {"/^CFLAGS *=/s| -arch +[^ ]+||"} > Makefile.devel && +configure.checks.implicit_function_declaration.whitelist-append alignof strchr unreachable MIN MAX configure.cppflags configure.ldflags configure.args \ diff --git a/textproc/libiconv/files/patch-src-Makefile.in-darwin.diff b/textproc/libiconv/files/patch-src-Makefile.in-darwin.diff index 206b2ea3700..21477e7ad5f 100644 --- a/textproc/libiconv/files/patch-src-Makefile.in-darwin.diff +++ b/textproc/libiconv/files/patch-src-Makefile.in-darwin.diff @@ -1,10 +1,10 @@ ---- src/Makefile.in.orig 2009-06-21 06:17:33.000000000 -0500 -+++ src/Makefile.in 2010-01-20 19:07:40.000000000 -0600 +--- src/Makefile.in.orig 2023-05-13 06:45:58 ++++ src/Makefile.in 2026-03-02 14:44:55 @@ -113,6 +113,7 @@ if [ ! -d $(DESTDIR)$(bindir) ] ; then $(mkinstalldirs) $(DESTDIR)$(bindir) ; fi case "@host_os@" in \ hpux*) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv.@OBJEXT@ ../srclib/libicrt.a -L$(DESTDIR)$(libdir) -liconv @LIBINTL@ $(OBJECTS_RES_@WOE32@) `if test -n '$(DESTDIR)'; then echo " -Wl,+b -Wl,$(libdir)"; fi` -o iconv$(EXEEXT);; \ + darwin*) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv.@OBJEXT@ ../srclib/libicrt.a -L$(DESTDIR)$(libdir) -liconv @LIBINTL@ $(OBJECTS_RES_@WOE32@) -o iconv$(EXEEXT);; \ - *) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv.@OBJEXT@ ../srclib/libicrt.a $(DESTDIR)$(libdir)/libiconv.la @LTLIBINTL@ $(OBJECTS_RES_@WOE32@) -o iconv$(EXEEXT);; \ + *) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv.@OBJEXT@ ../srclib/libicrt.a @LTLIBINTL@ $(DESTDIR)$(libdir)/libiconv.la $(OBJECTS_RES_@WOE32@) -o iconv$(EXEEXT);; \ esac $(INSTALL_PROGRAM_ENV) $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) iconv$(EXEEXT) $(DESTDIR)$(bindir)/iconv$(EXEEXT)