Subject: Bug in pkgsrc/wip/jdk14?
To: None <netbsd-java@NetBSD.org>
From: Chuck Zmudzinski <brchuck@hotmail.com>
List: netbsd-java
Date: 02/18/2006 11:53:40
FYI . . .

In building jdk14 from pkgsrc/wip, on NetBSD-3.0/i386, using pkgsrc-2005Q4 
and the 2/17/06 snapshot of pkgsrc-wip, I got the following error during the 
patch phase:

===> Patching for jdk14-1.4.2.8
cd /home/chuckz/obj/pkgsrc/wip/jdk14/work && /usr/bin/patch -p0 -E -s 
<jdk14.patches
3 out of 3 hunks failed--saving rejects to 
deploy/make/plugin/java/FileList.gmk.rej
3 out of 11 hunks failed--saving rejects to 
deploy/src/plugin/src/share/classes/sun/plugin/liveconnect/SecureInvocation.java.rej
*** Error code 6


Stop.
make: stopped in /home/chuckz/obj/pkgsrc/wip/jdk14
*** Error code 1

Examining the original FileList.gmk file and the corresponding patch in the 
patchfile I notced the MSDOS CR's were present in the original files, but 
not in the patchfile. So I added the -a option to the unzip command in the 
Makefile:

--- wip/jdk14/Makefile	2006-02-07 05:36:37.000000000 -0500
+++ wip/jdk14/Makefile	2006-02-18 09:10:58.000000000 -0500
@@ -29,7 +29,7 @@
USE_PKGINSTALL=		yes
USE_TOOLS+=		gmake m4
USE_LANGUAGES=		c c++
-EXTRACT_CMD_OPTS.zip=	-q
+EXTRACT_CMD_OPTS.zip=	-a -q
WRKSRC=			${WRKDIR}
PLIST_SRC=      	PLIST.common

Then the patch stage succeeded.

I also noticed these lines in the Makefile:

SUBST_CLASSES+=         cr
SUBST_STAGE.cr=         post-extract
SUBST_FILES.cr=         jdk14.patches
SUBST_SED.cr=           -e 's,^M,,'

Perhaps it also might by fixed by not removing the CR's from jdk14.patches.

I submitted this as a pr - pkg/32867

It looks like a bug that should be fixed on platforms where unzip will not 
automatically strip the
DOS CR's that apparently are in the .zip distfiles from Sun.

Chuck Zmudzinski