<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>