icewm does refuse to run with error message: IceWM: iconv doesn't supply (sufficient) Unicode to UTF-8 converters. Apparently icewm does not find some function in the new bsd iconv. Used libs are: $ ldd /usr/local/bin/icewm /usr/local/bin/icewm: libgdk_pixbuf_xlib-2.0.so.0 => /usr/local/lib/libgdk_pixbuf_xlib-2.0.so.0 (0x28122000) libgmodule-2.0.so.0 => /usr/local/lib/libgmodule-2.0.so.0 (0x28130000) libgdk_pixbuf-2.0.so.0 => /usr/local/lib/libgdk_pixbuf-2.0.so.0 (0x28133000) libgobject-2.0.so.0 => /usr/local/lib/libgobject-2.0.so.0 (0x28150000) libglib-2.0.so.0 => /usr/local/lib/libglib-2.0.so.0 (0x28194000) libintl.so.9 => /usr/local/lib/libintl.so.9 (0x28288000) libXinerama.so.1 => /usr/local/lib/libXinerama.so.1 (0x28291000) libSM.so.6 => /usr/local/lib/libSM.so.6 (0x28294000) libICE.so.6 => /usr/local/lib/libICE.so.6 (0x2829b000) libX11.so.6 => /usr/local/lib/libX11.so.6 (0x282b1000) libXrandr.so.2 => /usr/local/lib/libXrandr.so.2 (0x283c8000) libXrender.so.1 => /usr/local/lib/libXrender.so.1 (0x283d0000) libXext.so.6 => /usr/local/lib/libXext.so.6 (0x283d8000) libXft.so.2 => /usr/local/lib/libXft.so.2 (0x283e7000) libfreetype.so.9 => /usr/local/lib/libfreetype.so.9 (0x283fa000) libfontconfig.so.1 => /usr/local/lib/libfontconfig.so.1 (0x2847d000) libc++.so.1 => /usr/lib/libc++.so.1 (0x284bd000) libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x28567000) libm.so.5 => /lib/libm.so.5 (0x2857e000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x285a0000) libthr.so.3 => /lib/libthr.so.3 (0x285ab000) libc.so.7 => /lib/libc.so.7 (0x285cd000) libgio-2.0.so.0 => /usr/local/lib/libgio-2.0.so.0 (0x28724000) libz.so.6 => /lib/libz.so.6 (0x2886a000) libpng15.so.15 => /usr/local/lib/libpng15.so.15 (0x2887e000) libxcb.so.2 => /usr/local/lib/libxcb.so.2 (0x288aa000) libXau.so.6 => /usr/local/lib/libXau.so.6 (0x288c4000) libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 (0x288c7000) libpthread-stubs.so.0 => /usr/local/lib/libpthread-stubs.so.0 (0x288cc000) librpcsvc.so.5 => /usr/lib/librpcsvc.so.5 (0x288ce000) libffi.so.6 => /usr/local/lib/libffi.so.6 (0x288d7000) libpcre.so.3 => /usr/local/lib/libpcre.so.3 (0x288dd000) libexpat.so.6 => /usr/local/lib/libexpat.so.6 (0x28944000) libbz2.so.4 => /usr/lib/libbz2.so.4 (0x28967000)
Responsible Changed From-To: freebsd-ports-bugs->eadler Over to maintainer (via the GNATS Auto Assign Tool)
On Sun, Sep 29, 2013 at 7:21 PM, <edwin@freebsd.org> wrote: > Synopsis: x11-wm/icewm doesn't run on current > > Responsible-Changed-From-To: freebsd-ports-bugs->eadler > Responsible-Changed-By: edwin > Responsible-Changed-When: Sun Sep 29 23:21:37 UTC 2013 > Responsible-Changed-Why: > Over to maintainer (via the GNATS Auto Assign Tool) > > http://www.freebsd.org/cgi/query-pr.cgi?pr=182307 I think this is a bug in upstream iconv and not in the port, but I will investigate. -- Eitan Adler Source, Ports, Doc committer Bugmeister, Ports Security teams
* FreeBSD-gnats-submit@FreeBSD.org <FreeBSD-gnats-submit@FreeBSD.org> [130923 01:00]: > http://www.freebsd.org/cgi/query-pr.cgi?pr=182307 The error message comes from line 102 in ylocale.cc The problem appears to be an incompatibility between the old libiconv implementation and the new iconv in libc. icewm checks for existence of valid conversions between the locale charset and some predefined Unicode charsets. During that test it creates somewhat nonsensical calls like iconv_t cd = iconv_open("UTF-8", "UCS-4//TRANSLIT"); which work on the libiconv implementation but fail on the libc version. Looks to me like a bug in icewm, because appending "//TRANSLIT" to the character encoding string is only defined for the first parameter of iconv_open().
On Tue, Oct 8, 2013 at 5:56 PM, Wolfgang Zenker <wolfgang@lyxys.ka.sub.org> wrote: > * FreeBSD-gnats-submit@FreeBSD.org <FreeBSD-gnats-submit@FreeBSD.org> [130923 01:00]: >> http://www.freebsd.org/cgi/query-pr.cgi?pr=182307 ... I will try and look into this, but I don't have much time lately. IMHO its best if this is fixed upstream. -- Eitan Adler
Hi, * Eitan Adler <lists@eitanadler.com> [131014 05:56]: > On Tue, Oct 8, 2013 at 5:56 PM, Wolfgang Zenker > <wolfgang@lyxys.ka.sub.org> wrote: > > * FreeBSD-gnats-submit@FreeBSD.org <FreeBSD-gnats-submit@FreeBSD.org> [130923 01:00]: > >> http://www.freebsd.org/cgi/query-pr.cgi?pr=182307 > ... > I will try and look into this, but I don't have much time lately. > IMHO its best if this is fixed upstream. I'll try to find out how to submit a bug report upstream, but I have little hope ... In the meantime, I use an ugly hack to remove the failing calls (patch attached) so I can start icewm now. Wolfgang
Author: eadler Date: Mon Nov 4 01:01:18 2013 New Revision: 332658 URL: http://svnweb.freebsd.org/changeset/ports/332658 Log: Fix icewm's buggy use of iconv which causes it to fail on 10.x. PR: ports/182307 Submitted by: Wolfgang Zenker <wolfgang@lyxys.ka.sub.org> (incl. patch and testing) PR: ports/183626 Submitted by: Pavlo Greenberg <dog@virtual.org.ua> Modified: head/x11-wm/icewm/files/patch-src_ylocale.cc Modified: head/x11-wm/icewm/files/patch-src_ylocale.cc ============================================================================== --- head/x11-wm/icewm/files/patch-src_ylocale.cc Mon Nov 4 00:14:08 2013 (r332657) +++ head/x11-wm/icewm/files/patch-src_ylocale.cc Mon Nov 4 01:01:18 2013 (r332658) @@ -1,6 +1,20 @@ ---- src/ylocale.cc.orig Mon Aug 7 03:38:14 2006 -+++ src/ylocale.cc Tue Aug 8 01:00:33 2006 -@@ -149,7 +149,8 @@ +--- src/ylocale.cc.orig 2013-11-03 19:58:39.180727369 -0500 ++++ src/ylocale.cc 2013-11-03 19:58:51.540725980 -0500 +@@ -126,8 +126,12 @@ YLocale::~YLocale() { + iconv_t YLocale::getConverter (const char *from, const char **&to) { + iconv_t cd = (iconv_t) -1; + ++ char *myfrom = (char *)malloc(1 + strlen(from)); ++ strcpy(myfrom, from); ++ char *modptr = strstr(myfrom, "//"); ++ if (NULL != modptr) *modptr = '\0'; + while (NULL != *to) +- if ((iconv_t) -1 != (cd = iconv_open(*to, from))) return cd; ++ if ((iconv_t) -1 != (cd = iconv_open(*to, myfrom))) return cd; + else ++to; + + return (iconv_t) -1; +@@ -149,7 +153,8 @@ YUChar *YLocale::unicodeString(const YLC return NULL; YUChar * uStr(new YUChar[lLen + 1]); _______________________________________________ svn-ports-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-ports-all To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
State Changed From-To: open->closed Thanks for the patch and sorry for the delay. Hopefully this fixes it.