pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/32253: converters/recode link problem



>Number:         32253
>Category:       pkg
>Synopsis:       converters/recode link problem
>Confidential:   no
>Severity:       critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Dec 05 17:10:00 +0000 2005
>Originator:     Evaldo Gardenali
>Release:        3.0RC5
>Organization:
>Environment:
NetBSD testca 3.0_RC5 NetBSD 3.0_RC5 (XENU) #0: Wed Nov 30 13:47:10 EST 2005  
root@tequila:/usr/obj/sys/arch/i386/compile/XENU i386
>Description:
converters/recode got a link problem with an unresolved "error" symbol, 
breaking wip/php-recode (and possibly others) because all symbols need to be 
resolved at linking time.
Fix borrowed from OpenBSD's ports tree.

offending log:
configure:2917: checking for recode support
configure:2960: result: yes, shared
configure:3074: checking for recode_format_table in -lrecode
configure:3104: cc -o conftest -O2 -I/usr/pkg/include -I/usr/include -I/usr/pkg/
include -I/usr/include -R/usr/pkg/lib -L/usr/pkg/lib -Wl,-E -L/usr/pkg/lib -Wl,-
R/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib conftest.c -lrecode  -lintl >&5
/usr/pkgsrc/wip/php-recode/work/.buildlink/lib/librecode.so: undefined reference
 to `error'
configure:3110: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| 
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h.  */
| 
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char recode_format_table ();
| int
| main ()
| {
| recode_format_table ();
|   ;
|   return 0;
| }
configure:3136: result: no
configure:3271: cc -o conftest -O2 -I/usr/pkg/include -I/usr/include -I/usr/pkg/
include -I/usr/include -Wl,-E -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/lib -Wl,-
R/usr/lib -L/usr/pkg/lib conftest.c -lintl -lrecode >&5
/usr/pkgsrc/wip/php-recode/work/.buildlink/lib/librecode.so: undefined reference
 to `error'
configure:3277: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| 
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h.  */
| 
| char *program_name;
| 
| int
| main ()
| {
| 
| recode_format_table();
| 
|   ;
|   return 0;
| }
configure:3400: error: I cannot link librecode (-L/usr/pkg/lib -lrecode). Is it 
installed?
>How-To-Repeat:
build wip/php-recode without this fix (uploading wip/php-recode as soon as I 
get this bug number, to relate things)
>Fix:
diff -uNr recode.old/Makefile recode/Makefile
--- recode.old/Makefile 2005-04-11 21:45:09.000000000 +0000
+++ recode/Makefile     2005-12-05 17:00:32.000000000 +0000
@@ -2,7 +2,7 @@
 #
 
 DISTNAME=              recode-3.6
-PKGREVISION=           2
+PKGREVISION=           3       
 CATEGORIES=            converters
 MASTER_SITES=          ${MASTER_SITE_GNU:=recode/}
 
@@ -16,6 +16,11 @@
 LTCONFIG_OVERRIDE=     ${WRKSRC}/ltconfig
 
 INFO_FILES=            recode.info
+CONFIGURE_ARGS+=       --without-included-gettext
 
+post-extract:
+       ${CP} ${WRKSRC}/lib/error.c ${WRKSRC}/src/error.c
+
+.include "../../converters/libiconv/buildlink3.mk"
 .include "../../devel/gettext-lib/buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"
diff -uNr recode.old/PLIST recode/PLIST
--- recode.old/PLIST    2004-09-22 08:09:21.000000000 +0000
+++ recode/PLIST        2005-12-05 16:41:51.000000000 +0000
@@ -1,18 +1,19 @@
-@comment $NetBSD: PLIST,v 1.6 2004/09/22 08:09:21 jlam Exp $
+@comment $NetBSD$
 bin/recode
 include/recode.h
 include/recodext.h
+lib/charset.alias
 lib/librecode.la
 man/man1/recode.1
-${PKGLOCALEDIR}/locale/fr/LC_MESSAGES/recode.mo
-${PKGLOCALEDIR}/locale/sv/LC_MESSAGES/recode.mo
-${PKGLOCALEDIR}/locale/es/LC_MESSAGES/recode.mo
 ${PKGLOCALEDIR}/locale/da/LC_MESSAGES/recode.mo
-${PKGLOCALEDIR}/locale/nl/LC_MESSAGES/recode.mo
-${PKGLOCALEDIR}/locale/pt/LC_MESSAGES/recode.mo
-${PKGLOCALEDIR}/locale/pl/LC_MESSAGES/recode.mo
 ${PKGLOCALEDIR}/locale/de/LC_MESSAGES/recode.mo
-${PKGLOCALEDIR}/locale/sl/LC_MESSAGES/recode.mo
 ${PKGLOCALEDIR}/locale/el/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/es/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/fr/LC_MESSAGES/recode.mo
 ${PKGLOCALEDIR}/locale/gl/LC_MESSAGES/recode.mo
 ${PKGLOCALEDIR}/locale/it/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/nl/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/pl/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/pt/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/sl/LC_MESSAGES/recode.mo
+${PKGLOCALEDIR}/locale/sv/LC_MESSAGES/recode.mo
diff -uNr recode.old/distinfo recode/distinfo
--- recode.old/distinfo 2005-02-23 16:12:35.000000000 +0000
+++ recode/distinfo     2005-12-05 16:48:38.000000000 +0000
@@ -3,3 +3,5 @@
 SHA1 (recode-3.6.tar.gz) = 2de90cd2ba553bc07d75a29913ea4424dd9e616b
 RMD160 (recode-3.6.tar.gz) = 97dcb2544472c9025689452a94bed98ea36374b5
 Size (recode-3.6.tar.gz) = 1751886 bytes
+SHA1 (patch-aa) = 7c1b7a0c24ca663d866ee13b826016abfecbe7d0
+SHA1 (patch-ab) = 41405d4666ff32e2a180e8b6db44447601f96cac
diff -uNr recode.old/patches/patch-aa recode/patches/patch-aa
--- recode.old/patches/patch-aa 1970-01-01 00:00:00.000000000 +0000
+++ recode/patches/patch-aa     2005-12-05 16:35:23.000000000 +0000
@@ -0,0 +1,21 @@
+$NetBSD$
+$OpenBSD: patch-configure,v 1.1 2005/01/28 21:00:28 alek Exp $
+--- configure.orig      Wed Jan  3 17:40:32 2001
++++ configure   Fri Jan 28 00:07:29 2005
+@@ -3399,7 +3399,7 @@ if eval "test \"`echo '$''{'ac_cv_lib_$a
+   echo $ac_n "(cached) $ac_c" 1>&6
+ else
+   ac_save_LIBS="$LIBS"
+-LIBS="-lintl  $LIBS"
++LIBS="-lintl -liconv $LIBS"
+ cat > conftest.$ac_ext <<EOF
+ #line 3405 "configure"
+ #include "confdefs.h"
+@@ -3508,6 +3508,7 @@ echo "configure:3508: checking for $ac_f
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+   echo $ac_n "(cached) $ac_c" 1>&6
+ else
++  LIBS="-lintl -liconv $LIBS"
+   cat > conftest.$ac_ext <<EOF
+ #line 3513 "configure"
+ #include "confdefs.h"
diff -uNr recode.old/patches/patch-ab recode/patches/patch-ab
--- recode.old/patches/patch-ab 1970-01-01 00:00:00.000000000 +0000
+++ recode/patches/patch-ab     2005-12-05 16:48:32.000000000 +0000
@@ -0,0 +1,22 @@
+$NetBSD$
+$OpenBSD: patch-src_Makefile_in,v 1.1 2003/04/27 21:00:21 avsm Exp $
+--- src/Makefile.in.orig       Mon Jan 22 19:14:16 2001
++++ src/Makefile.in    Wed Apr 23 11:10:09 2003
+@@ -129,7 +129,7 @@ L_SURFACES =
+ recode_SOURCES = main.c freeze.c mixed.c
+ recode_LDADD = librecode.la ../lib/libreco.a
+
+-librecode_la_SOURCES = argmatch.c charname.c combine.c fr-charname.c hash.c 
iconv.c libiconv.c localcharset.c merged.c names.c outer.c quotearg.c recode.c 
request.c strip-pool.c task.c xmalloc.c $(C_STEPS)
++librecode_la_SOURCES = argmatch.c charname.c combine.c fr-charname.c hash.c 
iconv.c libiconv.c localcharset.c merged.c names.c outer.c quotearg.c recode.c 
request.c strip-pool.c task.c xmalloc.c error.c $(C_STEPS)
+
+ librecode_la_LDFLAGS = -version-info 0:0:0
+
+@@ -159,7 +159,7 @@ librecode_la_LIBADD =
+ librecode_la_OBJECTS =  argmatch$U.lo charname$U.lo combine$U.lo \
+ fr-charname$U.lo hash$U.lo iconv$U.lo libiconv$U.lo localcharset$U.lo \
+ merged$U.lo names$U.lo outer$U.lo quotearg$U.lo recode$U.lo \
+-request$U.lo strip-pool$U.lo task$U.lo xmalloc$U.lo african$U.lo \
++request$U.lo strip-pool$U.lo task$U.lo xmalloc$U.lo error$U.lo african$U.lo \
+ afrtran$U.lo applemac$U.lo atarist$U.lo bangbang$U.lo cdcnos$U.lo \
+ ebcdic$U.lo ibmpc$U.lo iconqnx$U.lo lat1asci$U.lo mule$U.lo \
+ strip-data$U.lo testdump$U.lo ucs$U.lo utf16$U.lo utf7$U.lo utf8$U.lo \




Home | Main Index | Thread Index | Old Index