Subject: pkg/35210: graphics/netpbm cannot be built under Interix-3.5
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <cheusov@tut.by>
List: pkgsrc-bugs
Date: 12/08/2006 15:25:00
>Number:         35210
>Category:       pkg
>Synopsis:       graphics/netpbm cannot be built under Interix-3.5
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Fri Dec 08 15:25:00 +0000 2006
>Originator:     Aleksey Cheusov
>Release:        Interix syn-fs 3.5 SP-8.0.1969.1 x86 Intel_x86_Family15_Model4_Stepping1
>Organization:
home
>Environment:
Interix syn-fs 3.5 SP-8.0.1969.1 x86 Intel_x86_Family15_Model4_Stepping1
>Description:
graphics/netpbm package cannot be built under Interix 3.5 using pkgsrc-2006Q3 and HEAD. Complete log is here http://home.duh.org/interix-pkgstat/20061110.1257/graphics/netpbm/.broken.html

It is not pkgsrc bug -- this is why I mark this PR as change-request.
Because of graphics/netpbm >800 packages cannot be built -- this why I mark it critical.

Thanks to InteropSystems' forum (discussion is here http://www.interopsystems.com/tools/tm.aspx?m=10385&mpage=1&key=netpbm&#10385) I've found that the problem comes from incorrectly
built libpng.so library (graphics/png package) and this problem in turn comes from broken Interix's 'ld --version-script'. This option is not supported (it is not mentioned in man page), but detected as such by configure script that runs 'ld --help' for this.

>How-To-Repeat:
cd graphics/netpbm
bmake

>Fix:
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/png/distinfo,v
retrieving revision 1.34
diff -u -r1.34 distinfo
--- distinfo    30 Nov 2006 10:58:18 -0000      1.34
+++ distinfo    8 Dec 2006 12:48:14 -0000
@@ -5,4 +5,5 @@
 Size (libpng-1.2.14-20061130/libpng-1.2.14.tar.bz2) = 620379 bytes
 SHA1 (patch-aa) = 4b6437906e6f2f644c731a293859e64f69300bb0
 SHA1 (patch-ab) = 979175c65587686b339a5556e8bcae3be95a07ca
+SHA1 (patch-ac) = fe8a1a4c7f7f3b54ebd67948a4f9fa5fddf26cb0
 SHA1 (patch-ae) = b9bf9de3caa32ac78a17685cdd5df5b80d1ccbbf
Index: patches/patch-ac
===================================================================
RCS file: patches/patch-ac
diff -N patches/patch-ac
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-ac    8 Dec 2006 12:48:14 -0000
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- configure.orig     Fri Dec  8 10:07:04 2006
++++ configure
+@@ -21341,7 +21341,7 @@ fi
+ { echo "$as_me:$LINENO: checking if libraries can be versioned" >&5
+ echo $ECHO_N "checking if libraries can be versioned... $ECHO_C" >&6; }
+ GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script`
+-if test "$GLD"; then
++if test "$GLD" && test "`uname -s`" != Interix; then
+     have_ld_version_script=yes
+     { echo "$as_me:$LINENO: result: yes" >&5
+ echo "${ECHO_T}yes" >&6; }