ports/131769: upgrade ports/converters/libiconv

Takeshi Taguchi taguchi at iij.ad.jp
Tue Feb 17 07:10:02 UTC 2009


>Number:         131769
>Category:       ports
>Synopsis:       upgrade ports/converters/libiconv
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Feb 17 07:10:01 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Takeshi Taguchi
>Release:        FreeBSD-7.1p2
>Organization:
IIJ
>Environment:
FreeBSD ns1.tcltk.jp 7.1-RELEASE-p2 FreeBSD 7.1-RELEASE-p2 #0: Mon Feb 16 15:06:16 JST 2009     root at ns1.tcltk.jp:/usr/obj/usr/src/sys/TCLTK-p4  i386

>Description:
upgrade libiconv 1.11 to 1.12 again.

This probrem was discussed in ports/121670.
I think iconv(1) is under GPLv3, but libiconv.so is still under LGPL.
So I think we need new option WITH_ICONV_1.
This flag is off on default.
So never install iconv(1). Only installed libiconv.so staffs.
Offcause, user can set WITH_ICONV_1=yes, then iconv(1) will be
installed.

This upgrade has other merits for WITH_EXTRA_PATCHES users.
extra patch is upgraded.
So we can convert cp932,euc-jp,iso2022-jp with each other.
and some bugs are fixed. more stable.
for example, namazu.cgi in japanese/namazu sometimes get core-dump.
but apply this upgrade, then this problem will be fixed. 

thanks.

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff -urN ../converters/libiconv/Makefile ./libiconv/Makefile
--- ../converters/libiconv/Makefile	2007-10-28 00:31:50.000000000 +0900
+++ ./libiconv/Makefile	2009-02-17 14:45:04.000000000 +0900
@@ -6,7 +6,7 @@
 #
 
 PORTNAME=	libiconv
-PORTVERSION=	1.11
+PORTVERSION=	1.12
 PORTREVISION=	1
 CATEGORIES=	converters devel
 MASTER_SITES=	${MASTER_SITE_GNU}
@@ -25,10 +25,10 @@
 USE_LDCONFIG=	yes
 CONFIGURE_ENV=	gl_cv_cc_visibility="no"
 
-MAN1=		iconv.1
 MAN3=		iconv.3 iconv_open.3 iconv_close.3 iconvctl.3
 
-OPTIONS=	EXTRA_ENCODINGS	"Include extra character sets" on \
+OPTIONS=	ICONV_1 "Install iconv(1)" off \
+		EXTRA_ENCODINGS	"Include extra character sets" on \
 		EXTRA_PATCHES	"Apply patches to fix CP932 add EUCJP-MS" off
 
 .ifdef USE_ICONV
@@ -46,10 +46,19 @@
 PATCH_SITES+=	http://www2d.biglobe.ne.jp/~msyk/software/libiconv/
 PATCH_SITES+=	${MASTER_SITE_LOCAL}
 PATCH_SITE_SUBDIR=	nork
-PATCHFILES+=	${DISTNAME}-cp932.patch.gz
+PATCHFILES+=	${DISTNAME}-ja-4.patch.gz
 PATCH_DIST_STRIP+=	-p1
 .endif
 
+.if !defined(WITH_ICONV_1)
+EXTRA_PATCHES=  ${FILESDIR}/WITHOUT_ICONV_1.patch
+PLIST_SUB+=     WITHOUT_ICONV_1="@comment "
+MAKE_ARGS+=     WITHOUT_ICONV_1=yes
+.else
+MAN1=		iconv.1
+PLIST_SUB+=	WITHOUT_ICONV_1=""
+.endif
+
 post-patch:
 	@${REINPLACE_CMD} -e 's:ei_ksc5601:ei_euc_kr:g' ${WRKSRC}/lib/aliases.h
 
diff -urN ../converters/libiconv/distinfo ./libiconv/distinfo
--- ../converters/libiconv/distinfo	2007-10-28 00:31:50.000000000 +0900
+++ ./libiconv/distinfo	2009-02-17 13:41:36.000000000 +0900
@@ -1,6 +1,6 @@
-MD5 (libiconv-1.11.tar.gz) = b77a17e4a5a817100ad4b2613935055e
-SHA256 (libiconv-1.11.tar.gz) = fbf5b9a63ea6e3abebfabc04506f0e18a2860071031e34ea4ad4f450b8c43d4b
-SIZE (libiconv-1.11.tar.gz) = 4430930
-MD5 (libiconv-1.11-cp932.patch.gz) = 1d6c7711b6ec76c9c42230d8e097baa0
-SHA256 (libiconv-1.11-cp932.patch.gz) = 48ed20ab2bd59d9af9fa6d4328b363849bf0e155b70bdbe137dc8973341b65d1
-SIZE (libiconv-1.11-cp932.patch.gz) = 112830
+MD5 (libiconv-1.12.tar.gz) = c2be282595751535a618ae0edeb8f648
+SHA256 (libiconv-1.12.tar.gz) = a99e244fd78babb95ea3c9a5c88b964994edaa1d15fd8dde5b4067801e23f0cd
+SIZE (libiconv-1.12.tar.gz) = 4513309
+MD5 (libiconv-1.12-ja-4.patch.gz) = 5c666dc2622fda5650aafe0931cff412
+SHA256 (libiconv-1.12-ja-4.patch.gz) = cf33ab5202fff9faae8fce8925984242272749c96ebbc801f332537111967a73
+SIZE (libiconv-1.12-ja-4.patch.gz) = 229623
diff -urN ../converters/libiconv/files/WITHOUT_ICONV_1.patch ./libiconv/files/WITHOUT_ICONV_1.patch
--- ../converters/libiconv/files/WITHOUT_ICONV_1.patch	1970-01-01 09:00:00.000000000 +0900
+++ ./libiconv/files/WITHOUT_ICONV_1.patch	2009-02-17 14:54:06.000000000 +0900
@@ -0,0 +1,56 @@
+--- Makefile.in.orig	2009-02-17 13:10:19.000000000 +0900
++++ Makefile.in	2009-02-17 13:15:37.000000000 +0900
+@@ -32,7 +32,9 @@
+ all : lib/localcharset.h force
+ 	cd lib && $(MAKE) all
+ 	cd srclib && $(MAKE) all
++.if !defined(WITHOUT_ICONV_1)
+ 	cd src && $(MAKE) all
++.endif
+ 	cd po && $(MAKE) all
+ 	cd man && $(MAKE) all
+ 	if test -d tests; then cd tests && $(MAKE) all; fi
+@@ -51,7 +53,9 @@
+ 	cd libcharset && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)'
+ 	cd lib && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)'
+ 	cd srclib && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)'
++.if !defined(WITHOUT_ICONV_1)
+ 	cd src && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)'
++.endif
+ 	if [ ! -d $(DESTDIR)$(includedir) ] ; then $(mkinstalldirs) $(DESTDIR)$(includedir) ; fi
+ 	$(INSTALL_DATA) include/iconv.h.inst $(DESTDIR)$(includedir)/iconv.h
+ 	cd po && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)'
+--- man/Makefile.in.orig	2009-02-17 13:16:08.000000000 +0900
++++ man/Makefile.in	2009-02-17 13:23:43.000000000 +0900
+@@ -35,20 +35,31 @@
+ all :
+ 
+ install : force
++.if !defined(WITHOUT_ICONV_1)
+ 	if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi
+ 	builddir="`pwd`"; cd $(srcdir) && for f in *.1 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f) ; done
++.endif
+ 	if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi
+ 	builddir="`pwd`"; cd $(srcdir) && for f in *.3 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f) ; done
+ 	if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi
++.if !defined(WITHOUT_ICONV_1)
+ 	builddir="`pwd`"; cd $(srcdir) && for f in *.html ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f) ; done
++.else
++	builddir="`pwd`"; cd $(srcdir) && for f in *.3.html ; do (cd "$$builddir"; echo $(INSTALL_DIR) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f) ; done
++
++.endif
+ 
+ installdirs : force
++.if !defined(WITHOUT_ICONV_1)
+ 	if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi
++.endif
+ 	if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi
+ 	if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi
+ 
+ uninstall : force
++.if !defined(WITHOUT_ICONV_1)
+ 	cd $(srcdir) && for f in *.1 ; do echo $(RM) $(DESTDIR)$(mandir)/man1/$$f ; $(RM) $(DESTDIR)$(mandir)/man1/$$f ; done
++.endif
+ 	cd $(srcdir) && for f in *.3 ; do echo $(RM) $(DESTDIR)$(mandir)/man3/$$f ; $(RM) $(DESTDIR)$(mandir)/man3/$$f ; done
+ 	cd $(srcdir) && for f in *.html ; do echo $(RM) $(DESTDIR)$(htmldir)/$$f ; $(RM) $(DESTDIR)$(htmldir)/$$f ; done
+ 
diff -urN ../converters/libiconv/files/patch-src::Makefile.in ./libiconv/files/patch-src::Makefile.in
--- ../converters/libiconv/files/patch-src::Makefile.in	2007-10-25 08:35:01.000000000 +0900
+++ ./libiconv/files/patch-src::Makefile.in	2009-02-16 17:01:01.000000000 +0900
@@ -1,10 +1,10 @@
---- src/Makefile.in.orig	Fri Jul 14 09:19:07 2006
-+++ src/Makefile.in	Fri Jun 29 18:31:59 2007
-@@ -96,6 +96,7 @@ install : all force
+--- src/Makefile.in.orig	2007-05-28 07:15:52.000000000 +0900
++++ src/Makefile.in	2009-01-28 10:25:10.000000000 +0900
+@@ -104,6 +104,7 @@
  	if [ ! -d $(DESTDIR)$(bindir) ] ; then $(mkinstalldirs) $(DESTDIR)$(bindir) ; fi
  	case "@host_os@" in \
- 	  hpux*) $(CC) $(LDFLAGS) $(iconv_LDFLAGS) iconv. at OBJEXT@ ../srclib/libicrt.a -L$(DESTDIR)$(libdir) -liconv @LIBINTL@ `if test -n '$(DESTDIR)'; then echo " -Wl,+b -Wl,$(libdir)"; fi` -o iconv;; \
-+	  freebsd*) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(iconv_LDFLAGS) iconv. at OBJEXT@ ../srclib/libicrt.a ../lib//libiconv.la @LTLIBINTL@ -o iconv;; \
- 	  *) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(iconv_LDFLAGS) iconv. at OBJEXT@ ../srclib/libicrt.a $(DESTDIR)$(libdir)/libiconv.la @LTLIBINTL@ -o iconv;; \
+ 	  hpux*) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv. at OBJEXT@ ../srclib/libicrt.a -L$(DESTDIR)$(libdir) -liconv @LIBINTL@ $(OBJECTS_RES_ at WOE32@) `if test -n '$(DESTDIR)'; then echo " -Wl,+b -Wl,$(libdir)"; fi` -o iconv;; \
++	  freebsd*) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv. at OBJEXT@ ../srclib/libicrt.a ../lib/libiconv.la @LTLIBINTL@ $(OBJECTS_RES_ at WOE32@) -o iconv;; \
+ 	  *) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv. at OBJEXT@ ../srclib/libicrt.a $(DESTDIR)$(libdir)/libiconv.la @LTLIBINTL@ $(OBJECTS_RES_ at WOE32@) -o iconv;; \
  	esac
  	$(INSTALL_PROGRAM_ENV) $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) iconv $(DESTDIR)$(bindir)/iconv
diff -urN ../converters/libiconv/pkg-plist ./libiconv/pkg-plist
--- ../converters/libiconv/pkg-plist	2007-10-25 08:35:01.000000000 +0900
+++ ./libiconv/pkg-plist	2009-02-17 13:48:05.000000000 +0900
@@ -1,4 +1,4 @@
-bin/iconv
+%%WITHOUT_ICONV_1%%bin/iconv
 include/iconv.h
 include/libcharset.h
 include/localcharset.h
@@ -11,7 +11,7 @@
 lib/libiconv.so
 lib/libiconv.so.3
 libdata/charset.alias
-%%DOCSDIR%%/iconv.1.html
+%%WITHOUT_ICONV_1%%%%DOCSDIR%%/iconv.1.html
 %%DOCSDIR%%/iconv.3.html
 %%DOCSDIR%%/iconv_close.3.html
 %%DOCSDIR%%/iconv_open.3.html


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list