From 1f0ed457fde6c2f7e78f718079044082bd3fedce Mon Sep 17 00:00:00 2001 From: Stefan Walter Date: Sun, 16 Jun 2013 17:05:55 +0000 Subject: - Fix build with JDK 1.7. [1] - Propagate Make environment to Ant to use the correct JDK and not just the one that Ant was built with. PR: 173505 [1] Submitted by: James Raynard [1] Patch by: Piotr Smyrak [1] Obtained from: https://launchpad.net/ubuntu/+source/java3d/1.5.2+dfsg-8 [1] --- java/java3d/Makefile | 15 +++++-- java/java3d/files/patch-ImageComponentState.java | 50 ++++++++++++++++++++++++ java/java3d/files/patch-freebsd | 8 ++++ 3 files changed, 69 insertions(+), 4 deletions(-) create mode 100644 java/java3d/files/patch-ImageComponentState.java (limited to 'java/java3d') diff --git a/java/java3d/Makefile b/java/java3d/Makefile index 015c8819a71e..c71ec7d91577 100644 --- a/java/java3d/Makefile +++ b/java/java3d/Makefile @@ -3,7 +3,7 @@ PORTNAME= java3d PORTVERSION= 1.5.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= java graphics games devel MASTER_SITES= https://sites.google.com/site/daemonwizard/ DISTNAME= java3d-${PORTVERSION} @@ -29,10 +29,17 @@ PORTDOCS= * .include do-build: - cd ${WRKSRC}/vecmath && ${ANT} dist - cd ${WRKSRC}/j3d-core && ${ANT} -Dbuild.type=fcs -Dis${OPSYS}=yes -Dports.localbase=${LOCALBASE} jar-opt + cd ${WRKSRC}/vecmath && ${SETENV} ${MAKE_ENV} ${ANT} dist + cd ${WRKSRC}/j3d-core \ + && ${SETENV} ${MAKE_ENV} ${ANT} -Dbuild.type=fcs \ + -Dis${OPSYS}=yes \ + -Dports.localbase=${LOCALBASE} \ + jar-opt .if ${PORT_OPTIONS:MDOCS} - cd ${WRKSRC}/j3d-core && ${ANT} -Dbuild.type=fcs -Dis${OPSYS}=yes docs-public + cd ${WRKSRC}/j3d-core \ + && ${SETENV} ${MAKE_ENV} ${ANT} -Dbuild.type=fcs \ + -Dis${OPSYS}=yes \ + docs-public .endif do-install: diff --git a/java/java3d/files/patch-ImageComponentState.java b/java/java3d/files/patch-ImageComponentState.java new file mode 100644 index 000000000000..6eacc3fa0a09 --- /dev/null +++ b/java/java3d/files/patch-ImageComponentState.java @@ -0,0 +1,50 @@ +work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d +--- j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java.orig ++++ j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java +@@ -61,10 +61,7 @@ import com.sun.j3d.utils.scenegraph.io.r + import com.sun.j3d.utils.scenegraph.io.retained.SGIORuntimeException; + import java.awt.color.ColorSpace; + import java.awt.image.DataBuffer; +-import com.sun.image.codec.jpeg.JPEGImageEncoder; +-import com.sun.image.codec.jpeg.JPEGImageDecoder; +-import com.sun.image.codec.jpeg.JPEGCodec; +-import com.sun.image.codec.jpeg.JPEGEncodeParam; ++import javax.imageio.ImageIO; + + public abstract class ImageComponentState extends NodeComponentState { + +@@ -203,10 +200,9 @@ public abstract class ImageComponentStat + + private void writeBufferedImageJpegCompression( DataOutput out, BufferedImage image ) throws IOException { + ByteArrayOutputStream byteStream = new ByteArrayOutputStream(); +- JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( byteStream ); +- +- encoder.encode( image ); +- byteStream.close(); ++ if (!ImageIO.write(image, "jpeg", byteStream)) { ++ throw new AssertionError("No JPEG encoder available"); ++ } + + byte[] buffer = byteStream.toByteArray(); + out.writeInt( buffer.length ); +@@ -261,11 +257,15 @@ public abstract class ImageComponentStat + byte[] buffer = new byte[ size ]; + in.readFully( buffer ); + ByteArrayInputStream byteStream = new ByteArrayInputStream( buffer ); +- +- JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder( byteStream ); +- byteStream.close(); +- +- return decoder.decodeAsBufferedImage(); ++ try { ++ BufferedImage img = ImageIO.read(byteStream); ++ if (img == null) { ++ throw new AssertionError("No ImageReader available."); ++ } ++ return img; ++ } finally { ++ byteStream.close(); ++ } + } + + private void writeColorModel( DataOutput out, ColorModel colorModel ) throws IOException { diff --git a/java/java3d/files/patch-freebsd b/java/java3d/files/patch-freebsd index 13df270ee357..066f2ac3ebb8 100644 --- a/java/java3d/files/patch-freebsd +++ b/java/java3d/files/patch-freebsd @@ -88,6 +88,14 @@ diff -ruN ../java3d-1.5.2/j3d-core/src/native/build.xml ./j3d-core/src/native/bu +@@ -347,6 +360,7 @@ + + + ++ + + + diff -ruN ../java3d-1.5.2/j3d-core/src/native/ogl/build-freebsd.xml ./j3d-core/src/native/ogl/build-freebsd.xml --- ../java3d-1.5.2/j3d-core/src/native/ogl/build-freebsd.xml 1970-01-01 12:00:00.000000000 +1200 +++ ./j3d-core/src/native/ogl/build-freebsd.xml 2009-07-12 13:21:41.000000000 +1200 -- cgit v1.2.3