<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/5b705d498b6ea5de1a5de050dde44606f00e1b8d">https://github.com/macports/macports-ports/commit/5b705d498b6ea5de1a5de050dde44606f00e1b8d</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 5b705d498b6 lha: Properly detect and actually use libiconv
</span>5b705d498b6 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 5b705d498b6ea5de1a5de050dde44606f00e1b8d
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Sun Dec 6 23:45:24 2020 -0600

<span style='display:block; white-space:pre;color:#404040;'>    lha: Properly detect and actually use libiconv
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Previously libiconv detection was faulty, thought libiconv wasn't
</span><span style='display:block; white-space:pre;color:#404040;'>    present even when it was, and tried to fall back to using private macOS
</span><span style='display:block; white-space:pre;color:#404040;'>    functions instead. Since private functions aren't in headers, this was
</span><span style='display:block; white-space:pre;color:#404040;'>    an implicit function declaration, which isn't allowed anymore.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/61535
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: #9197
</span>---
 archivers/lha/Portfile             |  8 +++--
 archivers/lha/files/c89.patch      | 14 ++++++++
 archivers/lha/files/libiconv.patch | 71 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 90 insertions(+), 3 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/archivers/lha/Portfile b/archivers/lha/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 1154ea0efd8..a9bd9711355 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/archivers/lha/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/archivers/lha/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,7 @@ PortGroup           github 1.0
</span> github.setup        jca02266 lha 7c3cd95
 version             1.14i-ac20081023
 epoch               20191004
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> categories          archivers sysutils
 maintainers         nomaintainer
 description         Utility for creating and opening lzh archives
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,8 +19,10 @@ checksums           rmd160  3015b301291a5b707e125dea6918f4fdbf534485 \
</span>                     sha256  4b21cbba1836d019d36a022d5c8ec66b1fd9d09dcfa2a857bf51b8cdea76e94e \
                     size    220432
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles          patch-src_header.c.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    implicit.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          c89.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    implicit.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    libiconv.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    patch-src_header.c.diff
</span> 
 depends_lib-append  port:libiconv
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/archivers/lha/files/c89.patch b/archivers/lha/files/c89.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b38f37e1d33
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/archivers/lha/files/c89.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix compilation in c89 mode.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/haikuports/haikuports/blob/master/app-arch/lha/patches/lha-1.14i.ac20191005.patchset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/bitio.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/bitio.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,8 +19,8 @@ fillbuf(n)          /* Shift bitbuf n bits left, read n bits */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         n -= bitcount;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         bitbuf = (bitbuf << bitcount) + (subbitbuf >> (CHAR_BIT - bitcount));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (compsize != 0) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            compsize--;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             int c = getc(infile);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            compsize--;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if (c == EOF) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 fatal_error("cannot read stream");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/archivers/lha/files/libiconv.patch b/archivers/lha/files/libiconv.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8e36eeff996
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/archivers/lha/files/libiconv.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,71 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix detection of libiconv so that we actually use it instead of private
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+macOS functions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/jca02266/lha/issues/16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/haikuports/haikuports/blob/master/app-arch/lha/patches/lha-1.14i.ac20191005.patchset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.ac.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -106,7 +106,7 @@ AC_CHECK_FUNCS(strchr strdup memcpy memset memmove strcasecmp)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_FUNCS(mktime timelocal tzset ftime gettimeofday utime)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_FUNCS(ftruncate chsize lchown mkstemp ftello)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_FUNCS(getpwuid getgrgid getpwnam getgrnam)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-AC_CHECK_FUNCS(iconv basename)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_CHECK_FUNCS(libiconv iconv basename)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_REPLACE_FUNCS(vsnprintf fnmatch)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test $ac_header_dirent = no; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/header.c.orig      2019-10-04 22:58:55.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/header.c   2020-12-06 23:31:25.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1907,7 +1907,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if MULTIBYTE_FILENAME
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__APPLE__) && !defined(HAVE_ICONV)  /* Added by Hiroto Sakai */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__APPLE__) && !(defined(HAVE_ICONV) || defined(HAVE_LIBICONV))  /* Added by Hiroto Sakai */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <CoreFoundation/CFString.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <CoreFoundation/CFStringEncodingExt.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2000,7 +2000,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return cfResult;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif HAVE_ICONV
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(HAVE_ICONV) || defined(HAVE_LIBICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <iconv.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2045,7 +2045,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sjis_to_utf8(char *dst, const char *src, size_t dstsize)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if !defined(HAVE_ICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !(defined(HAVE_ICONV) || defined(HAVE_LIBICONV))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   dst[0] = '\0';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (ConvertEncodingToUTF8(src, dst, dstsize,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                             kCFStringEncodingDOSJapanese,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2055,7 +2055,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (ConvertEncodingByIconv(src, dst, dstsize, "SJIS", "UTF-8-MAC") != -1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return dst;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif HAVE_ICONV
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(HAVE_ICONV) || defined(HAVE_LIBICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (ConvertEncodingByIconv(src, dst, dstsize, "SJIS", "UTF-8") != -1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return dst;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2071,7 +2071,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ utf8_to_sjis(char *dst, const char *src, size_t dstsize)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if !defined(HAVE_ICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !(defined(HAVE_ICONV) || defined(HAVE_LIBICONV))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int srclen;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   dst[0] = '\0';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2084,7 +2084,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (ConvertEncodingByIconv(src, dst, dstsize, "UTF-8-MAC", "SJIS") != -1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return dst;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif HAVE_ICONV
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(HAVE_ICONV) || defined(HAVE_LIBICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (ConvertEncodingByIconv(src, dst, dstsize, "UTF-8", "SJIS") != -1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return dst;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span></pre><pre style='margin:0'>

</pre>