/hg/icedtea6: Backport latest XRender pipeline.

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Tue Aug 3 16:46:26 PDT 2010


changeset 9da4f50c13c0 in /hg/icedtea6
details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=9da4f50c13c0
author: Andrew John Hughes <ahughes at redhat.com>
date: Wed Aug 04 00:46:09 2010 +0100

	Backport latest XRender pipeline.

	2010-08-03 Andrew John Hughes <ahughes at redhat.com>

	 Backport latest XRender pipeline.
		* patches/xrender/icedtea-000.patch,
		* patches/xrender/icedtea-001.patch,
		* patches/xrender/icedtea-002.patch,
		* patches/xrender/icedtea-003.patch,
		* patches/xrender/icedtea-004.patch,
		* patches/xrender/icedtea-005.patch,
		* patches/xrender/icedtea-006.patch,
		* patches/xrender/icedtea-007.patch,
		* patches/xrender/icedtea-008.patch,
		* patches/xrender/icedtea-009.patch: Removed.
		* Makefile.am: Add new patches.
		* patches/ecj/javah.patch: Backported from IcedTea7 to handle
	issues with gjavah's generation of headers for the
	OpenGL pipeline.
		* patches/ecj/needs-6.patch: Sets source & target to 6 for awt
	and xawt during the bootstrap build as these now
	have classes containing @Override. See OpenJDK6 b20 fix for
	javax.swing & Nimbus.
		* patches/openjdk/6307603-xrender-01.patch,
		* patches/openjdk/6725214-direct3d-01.patch,
		* patches/openjdk/6961633-xrender-02.patch: Backports from
	OpenJDK7. The XRender fixes build heavily on changes made
	by 6725214 for the Direct3D pipeline.


diffstat:

17 files changed, 58422 insertions(+), 12871 deletions(-)
ChangeLog                                 |   31 
Makefile.am                               |   13 
patches/ecj/javah.patch                   |   92 
patches/ecj/needs-6.patch                 |   24 
patches/openjdk/6307603-xrender-01.patch  | 9013 +++++
patches/openjdk/6725214-direct3d-01.patch |49210 +++++++++++++++++++++++++++++
patches/openjdk/6961633-xrender-02.patch  |   44 
patches/xrender/icedtea-000.patch         |  426 
patches/xrender/icedtea-001.patch         | 5320 ---
patches/xrender/icedtea-002.patch         | 5199 ---
patches/xrender/icedtea-003.patch         |   78 
patches/xrender/icedtea-004.patch         |   86 
patches/xrender/icedtea-005.patch         |   18 
patches/xrender/icedtea-006.patch         |  295 
patches/xrender/icedtea-007.patch         | 1143 
patches/xrender/icedtea-008.patch         |  131 
patches/xrender/icedtea-009.patch         |  170 

diffs (truncated from 71377 to 500 lines):

diff -r fe41bee26224 -r 9da4f50c13c0 ChangeLog
--- a/ChangeLog	Mon Aug 02 22:34:02 2010 +0100
+++ b/ChangeLog	Wed Aug 04 00:46:09 2010 +0100
@@ -1,3 +1,34 @@ 2010-08-02  Andrew John Hughes  <ahughes
+2010-08-03  Andrew John Hughes  <ahughes at redhat.com>
+
+	Backport latest XRender pipeline.
+	* patches/xrender/icedtea-000.patch,
+	* patches/xrender/icedtea-001.patch,
+	* patches/xrender/icedtea-002.patch,
+	* patches/xrender/icedtea-003.patch,
+	* patches/xrender/icedtea-004.patch,
+	* patches/xrender/icedtea-005.patch,
+	* patches/xrender/icedtea-006.patch,
+	* patches/xrender/icedtea-007.patch,
+	* patches/xrender/icedtea-008.patch,
+	* patches/xrender/icedtea-009.patch:
+	Removed.
+	* Makefile.am: Add new patches.
+	* patches/ecj/javah.patch:
+	Backported from IcedTea7 to handle issues
+	with gjavah's generation of headers for the
+	OpenGL pipeline.
+	* patches/ecj/needs-6.patch:
+	Sets source & target to 6 for awt and xawt
+	during the bootstrap build as these now
+	have classes containing @Override.  See
+	OpenJDK6 b20 fix for javax.swing & Nimbus.
+	* patches/openjdk/6307603-xrender-01.patch,
+	* patches/openjdk/6725214-direct3d-01.patch,
+	* patches/openjdk/6961633-xrender-02.patch:
+	Backports from OpenJDK7.  The XRender fixes
+	build heavily on changes made by 6725214 for
+	the Direct3D pipeline.
+
 2010-08-02  Andrew John Hughes  <ahughes at redhat.com>
 
 	* NEWS: Updated with font fixes.
diff -r fe41bee26224 -r 9da4f50c13c0 Makefile.am
--- a/Makefile.am	Mon Aug 02 22:34:02 2010 +0100
+++ b/Makefile.am	Wed Aug 04 00:46:09 2010 +0100
@@ -321,11 +321,9 @@ endif
 endif
 
 if ENABLE_XRENDER
-# match against $(abs_top_srcdir) and then remove it again,
-# because stamps/patch.stamp target will also add it
-XRENDER_PATCHES = patches/xrender/icedtea-???.patch
-XRENDER_PATCH_FILES = $(sort $(wildcard $(abs_top_srcdir)/$(XRENDER_PATCHES)))
-ICEDTEA_PATCHES += $(sort $(subst $(abs_top_srcdir)/,,$(XRENDER_PATCH_FILES)))
+ICEDTEA_PATCHES += patches/openjdk/6725214-direct3d-01.patch \
+	patches/openjdk/6307603-xrender-01.patch \
+	patches/openjdk/6961633-xrender-02.patch
 endif
 
 if ENABLE_NIO2
@@ -359,6 +357,11 @@ if DTDTYPE_QNAME
 if DTDTYPE_QNAME
 ICEDTEA_ECJ_PATCHES += \
 	patches/ecj/icedtea-jaxws-getdtdtype.patch
+endif
+if ENABLE_XRENDER
+ICEDTEA_ECJ_PATCHES += \
+	patches/ecj/needs-6.patch \
+	patches/ecj/javah.patch
 endif
 
 ICEDTEA_ECJ_PATCHES += $(DISTRIBUTION_ECJ_PATCHES)
diff -r fe41bee26224 -r 9da4f50c13c0 patches/ecj/javah.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/ecj/javah.patch	Wed Aug 04 00:46:09 2010 +0100
@@ -0,0 +1,92 @@
+diff -Nru openjdk-boot.orig/jdk/make/common/Rules.gmk openjdk-boot/jdk/make/common/Rules.gmk
+--- openjdk-ecj.orig/jdk/make/common/Rules.gmk	2009-12-13 20:37:41.000000000 +0000
++++ openjdk-ecj/jdk/make/common/Rules.gmk	2009-12-13 21:11:04.000000000 +0000
+@@ -303,7 +303,11 @@
+ 	$(prep-target)
+ 	@$(ECHO) "# Running javah:"
+ 	$(JAVAH_CMD) -d $(CLASSHDRDIR)/ \
+-		$(CLASSES.export) $(subst $$,\$$,$(EXPORTED_inner))
++		$(CLASSES.export) 
++	$(foreach innerclass,$(subst $$,\$$,$(EXPORTED_inner)), \
++	  $(JAVAH_CMD) \
++	    -o $(CLASSHDRDIR)/$(subst .,_,$(subst \$$,_,$(innerclass))).h \
++	    $(innerclass))
+ 	@$(java-vm-cleanup)
+ 	@$(TOUCH) $@
+ 
+diff -Nru openjdk-boot.orig/jdk/make/sun/awt/FILES_export_unix.gmk openjdk-boot/jdk/make/sun/awt/FILES_export_unix.gmk
+--- openjdk-ecj.orig/jdk/make/sun/awt/FILES_export_unix.gmk	2009-12-04 23:26:35.000000000 +0000
++++ openjdk-ecj/jdk/make/sun/awt/FILES_export_unix.gmk	2009-12-13 21:11:04.000000000 +0000
+@@ -189,3 +189,5 @@
+ 	java/awt/dnd/DnDConstants.java \
+ 	sun/awt/CausedFocusEvent.java
+ 
++EXPORTED_inner = \
++    sun.java2d.opengl.OGLContext$$OGLContextCaps
+diff -Nru openjdk-boot.orig/jdk/src/share/native/sun/java2d/opengl/OGLContext.h openjdk-boot/jdk/src/share/native/sun/java2d/opengl/OGLContext.h
+--- openjdk-ecj.orig/jdk/src/share/native/sun/java2d/opengl/OGLContext.h	2009-12-04 23:33:16.000000000 +0000
++++ openjdk-ecj/jdk/src/share/native/sun/java2d/opengl/OGLContext.h	2009-12-13 21:11:04.000000000 +0000
+@@ -27,6 +27,7 @@
+ #define OGLContext_h_Included
+ 
+ #include "sun_java2d_pipe_BufferedContext.h"
++#include "sun_java2d_pipe_hw_ContextCapabilities.h"
+ #include "sun_java2d_opengl_OGLContext.h"
+ #include "sun_java2d_opengl_OGLContext_OGLContextCaps.h"
+ 
+@@ -100,39 +101,39 @@
+  * See OGLContext.java for more on these flags.
+  */
+ #define CAPS_EMPTY           \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_EMPTY
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_EMPTY
+ #define CAPS_RT_PLAIN_ALPHA  \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_RT_PLAIN_ALPHA
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_RT_PLAIN_ALPHA
+ #define CAPS_RT_TEXTURE_ALPHA       \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_RT_TEXTURE_ALPHA
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_RT_TEXTURE_ALPHA
+ #define CAPS_RT_TEXTURE_OPAQUE      \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_RT_TEXTURE_OPAQUE
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_RT_TEXTURE_OPAQUE
+ #define CAPS_MULTITEXTURE    \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_MULTITEXTURE
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_MULTITEXTURE
+ #define CAPS_TEXNONPOW2      \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_TEXNONPOW2
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_TEXNONPOW2
+ #define CAPS_TEXNONSQUARE    \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_TEXNONSQUARE
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_TEXNONSQUARE
+ #define CAPS_PS20            \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_PS20
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_PS20
+ #define CAPS_PS30            \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_PS30
++    sun_java2d_pipe_hw_ContextCapabilities_CAPS_PS30
+ #define LAST_SHARED_CAP      \
+     sun_java2d_opengl_OGLContext_OGLContextCaps_LAST_SHARED_CAP
+ #define CAPS_EXT_FBOBJECT    \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_EXT_FBOBJECT
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_EXT_FBOBJECT
+ #define CAPS_STORED_ALPHA    \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_STORED_ALPHA
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_STORED_ALPHA
+ #define CAPS_DOUBLEBUFFERED  \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_DOUBLEBUFFERED
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_DOUBLEBUFFERED
+ #define CAPS_EXT_LCD_SHADER  \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_EXT_LCD_SHADER
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_EXT_LCD_SHADER
+ #define CAPS_EXT_BIOP_SHADER \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_EXT_BIOP_SHADER
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_EXT_BIOP_SHADER
+ #define CAPS_EXT_GRAD_SHADER \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_EXT_GRAD_SHADER
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_EXT_GRAD_SHADER
+ #define CAPS_EXT_TEXRECT     \
+-    sun_java2d_opengl_OGLContext_OGLContextCaps_CAPS_EXT_TEXRECT
++    sun_java2d_opengl_OGLContext_00024OGLContextCaps_CAPS_EXT_TEXRECT
+ 
+ /**
+  * Evaluates to true if the given capability bitmask is present for the
diff -r fe41bee26224 -r 9da4f50c13c0 patches/ecj/needs-6.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/ecj/needs-6.patch	Wed Aug 04 00:46:09 2010 +0100
@@ -0,0 +1,24 @@
+diff -Nru openjdk-ecj.orig/jdk/make/sun/awt/Makefile openjdk-ecj/jdk/make/sun/awt/Makefile
+--- openjdk-ecj.orig/jdk/make/sun/awt/Makefile	2010-08-03 23:52:42.084667732 +0100
++++ openjdk-ecj/jdk/make/sun/awt/Makefile	2010-08-03 23:53:10.308917593 +0100
+@@ -34,6 +34,8 @@
+ VIS_NEEDED=true
+ 
+ include $(BUILDDIR)/common/Defs.gmk
++LANGUAGE_VERSION = -source 6
++CLASS_VERSION = -target 6
+ 
+ #
+ # Use highest optimization level
+diff -Nru openjdk-ecj.orig/jdk/make/sun/xawt/Makefile openjdk-ecj/jdk/make/sun/xawt/Makefile
+--- openjdk-ecj.orig/jdk/make/sun/xawt/Makefile	2010-08-03 23:52:56.420668143 +0100
++++ openjdk-ecj/jdk/make/sun/xawt/Makefile	2010-08-03 23:53:18.494167931 +0100
+@@ -31,6 +31,8 @@
+ PRODUCT = sun
+ 
+ include $(BUILDDIR)/common/Defs.gmk
++LANGUAGE_VERSION = -source 6
++CLASS_VERSION = -target 6
+ 
+ GEN_DIR=$(GENSRCDIR)/sun/awt/X11
+ 
diff -r fe41bee26224 -r 9da4f50c13c0 patches/openjdk/6307603-xrender-01.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/openjdk/6307603-xrender-01.patch	Wed Aug 04 00:46:09 2010 +0100
@@ -0,0 +1,9013 @@
+diff -Nru openjdk.orig/jdk/make/sun/awt/mapfile-mawt-vers openjdk/jdk/make/sun/awt/mapfile-mawt-vers
+--- openjdk.orig/jdk/make/sun/awt/mapfile-mawt-vers	2010-08-03 23:14:59.000000000 +0100
++++ openjdk/jdk/make/sun/awt/mapfile-mawt-vers	2010-08-03 23:17:50.464917097 +0100
+@@ -311,6 +311,7 @@
+                 Java_sun_awt_X11GraphicsEnvironment_initGLX;
+ 		Java_sun_awt_X11GraphicsEnvironment_pRunningXinerama;
+ 		Java_sun_awt_X11GraphicsEnvironment_getXineramaCenterPoint;
++		Java_sun_awt_X11GraphicsEnvironment_initXRender;
+                 #Java_sun_awt_motif_MEmbedCanvasPeer_initXEmbedServer;
+                 #Java_sun_awt_motif_MEmbedCanvasPeer_destroyXEmbedServer;
+                 #Java_sun_awt_motif_MEmbedCanvasPeer_isXEmbedActive;
+@@ -405,17 +406,52 @@
+ 		Java_sun_java2d_x11_X11SurfaceData_initIDs;
+ 		Java_sun_java2d_x11_X11SurfaceData_initOps;
+ 		Java_sun_java2d_x11_X11SurfaceData_initSurface;
+-		Java_sun_java2d_x11_X11SurfaceData_isDrawableValid;
+ 		Java_sun_java2d_x11_X11SurfaceData_isDgaAvailable;
+-		Java_sun_java2d_x11_X11SurfaceData_setInvalid;
+-		Java_sun_java2d_x11_X11SurfaceData_flushNativeSurface;
+-                Java_sun_java2d_x11_X11SurfaceData_XCreateGC;
+-                Java_sun_java2d_x11_X11SurfaceData_XResetClip;
+-                Java_sun_java2d_x11_X11SurfaceData_XSetClip;
+                 Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
+                 Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
+                 Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
+-                Java_sun_java2d_x11_X11SurfaceData_XSetGraphicsExposures;
++
++		Java_sun_java2d_x11_XSurfaceData_initOps;
++		Java_sun_java2d_x11_XSurfaceData_XCreateGC;
++		Java_sun_java2d_x11_XSurfaceData_XResetClip;
++		Java_sun_java2d_x11_XSurfaceData_XSetClip;
++		Java_sun_java2d_x11_XSurfaceData_flushNativeSurface;
++		Java_sun_java2d_x11_XSurfaceData_isDrawableValid;
++		Java_sun_java2d_x11_XSurfaceData_setInvalid;
++		Java_sun_java2d_x11_XSurfaceData_XSetGraphicsExposures;
++		Java_sun_java2d_xr_XRSurfaceData_initXRPicture;
++		Java_sun_java2d_xr_XRSurfaceData_initIDs;
++		Java_sun_java2d_xr_XRSurfaceData_XRInitSurface;
++		Java_sun_java2d_xr_XRBackendNative_initIDs;
++		Java_sun_java2d_xr_XIDGenerator_bufferXIDs;
++		Java_sun_java2d_xr_XRBackendNative_freeGC;
++		Java_sun_java2d_xr_XRBackendNative_createGC;
++		Java_sun_java2d_xr_XRBackendNative_createPixmap;
++		Java_sun_java2d_xr_XRBackendNative_createPictureNative;
++		Java_sun_java2d_xr_XRBackendNative_freePicture;
++		Java_sun_java2d_xr_XRBackendNative_freePixmap;
++		Java_sun_java2d_xr_XRBackendNative_setPictureRepeat;
++		Java_sun_java2d_xr_XRBackendNative_setGCExposures;
++		Java_sun_java2d_xr_XRBackendNative_setGCForeground;
++		Java_sun_java2d_xr_XRBackendNative_copyArea;
++		Java_sun_java2d_xr_XRBackendNative_renderComposite;
++		Java_sun_java2d_xr_XRBackendNative_renderRectangle;
++		Java_sun_java2d_xr_XRBackendNative_XRenderRectanglesNative;
++		Java_sun_java2d_xr_XRBackendNative_XRSetTransformNative;
++		Java_sun_java2d_xr_XRBackendNative_XRCreateLinearGradientPaintNative;
++		Java_sun_java2d_xr_XRBackendNative_XRCreateRadialGradientPaintNative;
++		Java_sun_java2d_xr_XRBackendNative_setFilter;
++		Java_sun_java2d_xr_XRBackendNative_XRSetClipNative;
++		Java_sun_java2d_xr_XRBackendNative_putMaskNative;
++		Java_sun_java2d_xr_XRBackendNative_XRAddGlyphsNative;
++		Java_sun_java2d_xr_XRBackendNative_XRFreeGlyphsNative;
++		Java_sun_java2d_xr_XRBackendNative_XRenderCreateGlyphSetNative;
++		Java_sun_java2d_xr_XRBackendNative_XRenderCompositeTextNative;
++		Java_sun_java2d_xr_XRBackendNative_setGCMode;
++		Java_sun_java2d_xr_XRBackendNative_GCRectanglesNative;
++		Java_sun_java2d_xr_XRUtils_initFormatPtrs;
++		Java_sun_java2d_xr_XRBackendNative_renderCompositeTrapezoidsNative;
++		XRT_DrawGlyphList;
+ 
+                 Java_sun_java2d_opengl_OGLContext_getOGLIdString;
+                 Java_sun_java2d_opengl_OGLMaskFill_maskFill;
+diff -Nru openjdk.orig/jdk/make/sun/awt/mapfile-vers-linux openjdk/jdk/make/sun/awt/mapfile-vers-linux
+--- openjdk.orig/jdk/make/sun/awt/mapfile-vers-linux	2010-08-03 23:14:59.000000000 +0100
++++ openjdk/jdk/make/sun/awt/mapfile-vers-linux	2010-08-03 23:17:50.464917097 +0100
+@@ -425,6 +425,7 @@
+ 		Java_sun_awt_X11GraphicsEnvironment_initDisplay;
+ 		Java_sun_awt_X11GraphicsEnvironment_pRunningXinerama;
+ 		Java_sun_awt_X11GraphicsEnvironment_getXineramaCenterPoint;
++		Java_sun_awt_X11GraphicsEnvironment_initXRender;
+         
+         
+ 
+diff -Nru openjdk.orig/jdk/make/sun/headless/mapfile-vers openjdk/jdk/make/sun/headless/mapfile-vers
+--- openjdk.orig/jdk/make/sun/headless/mapfile-vers	2010-08-03 23:14:59.000000000 +0100
++++ openjdk/jdk/make/sun/headless/mapfile-vers	2010-08-03 23:17:50.476916584 +0100
+@@ -46,17 +46,20 @@
+ 		Java_sun_java2d_x11_X11Renderer_XFillRoundRect;
+ 		Java_sun_java2d_x11_X11Renderer_devCopyArea;
+ 		Java_sun_java2d_x11_X11SurfaceData_initIDs;
+-		Java_sun_java2d_x11_X11SurfaceData_initOps;
+-		Java_sun_java2d_x11_X11SurfaceData_isDrawableValid;
+ 		Java_sun_java2d_x11_X11SurfaceData_initSurface;
+-		Java_sun_java2d_x11_X11SurfaceData_setInvalid;
+-                Java_sun_java2d_x11_X11SurfaceData_XCreateGC;
+-                Java_sun_java2d_x11_X11SurfaceData_XResetClip;
+-                Java_sun_java2d_x11_X11SurfaceData_XSetClip;
+                 Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
+                 Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
+                 Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
+ 
++		Java_sun_java2d_x11_XSurfaceData_initOps;
++                Java_sun_java2d_x11_XSurfaceData_XCreateGC;
++                Java_sun_java2d_x11_XSurfaceData_XResetClip;
++                Java_sun_java2d_x11_XSurfaceData_XSetClip;
++                Java_sun_java2d_x11_XSurfaceData_flushNativeSurface;
++		Java_sun_java2d_x11_XSurfaceData_isDrawableValid;
++		Java_sun_java2d_x11_XSurfaceData_setInvalid;
++		Java_sun_java2d_x11_XSurfaceData_XSetGraphicsExposures;
++
+ 		X11SurfaceData_GetOps;
+ 		Java_java_awt_Font_initIDs;
+                 Java_sun_font_FontManager_getFontConfig;
+diff -Nru openjdk.orig/jdk/make/sun/jawt/Makefile openjdk/jdk/make/sun/jawt/Makefile
+--- openjdk.orig/jdk/make/sun/jawt/Makefile	2010-08-03 23:14:58.000000000 +0100
++++ openjdk/jdk/make/sun/jawt/Makefile	2010-08-03 23:17:50.480916320 +0100
+@@ -118,7 +118,7 @@
+ # Libraries to link in.
+ #
+ ifeq ($(PLATFORM), solaris)
+-OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -L$(OPENWIN_LIB) -L$(LIBDIR)/$(LIBARCH)/xawt -lmawt
++OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -L$(OPENWIN_LIB) -L$(LIBDIR)/$(LIBARCH)/xawt -lmawt -L/usr/openwin/sfw/lib$(ISA_DIR) -lXrender
+ endif # PLATFORM
+ 
+ ifeq ($(PLATFORM), linux)
+diff -Nru openjdk.orig/jdk/make/sun/xawt/FILES_c_unix.gmk openjdk/jdk/make/sun/xawt/FILES_c_unix.gmk
+--- openjdk.orig/jdk/make/sun/xawt/FILES_c_unix.gmk	2010-06-21 22:15:09.000000000 +0100
++++ openjdk/jdk/make/sun/xawt/FILES_c_unix.gmk	2010-08-03 23:17:50.480916320 +0100
+@@ -78,4 +78,7 @@
+ 	awt_Plugin.c \
+ 	gtk2_interface.c \
+         swing_GTKEngine.c \
+-        swing_GTKStyle.c
++        swing_GTKStyle.c \
++	XRSurfaceData.c \
++	XRBackendNative.c
++
+diff -Nru openjdk.orig/jdk/make/sun/xawt/Makefile openjdk/jdk/make/sun/xawt/Makefile
+--- openjdk.orig/jdk/make/sun/xawt/Makefile	2010-06-21 22:15:09.000000000 +0100
++++ openjdk/jdk/make/sun/xawt/Makefile	2010-08-03 23:17:50.480916320 +0100
+@@ -48,6 +48,11 @@
+ 
+ LDFLAGS += -L$(OPENWIN_LIB)
+ 
++# For Xrender extension.
++ifeq ($(PLATFORM), solaris)
++LDFLAGS += -L/usr/openwin/sfw/lib$(ISA_DIR) -R/usr/openwin/sfw/lib$(ISA_DIR)
++endif
++
+ ifeq ($(PLATFORM), linux)
+ LDFLAGS += -lpthread
+ dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
+@@ -86,7 +91,7 @@
+ vpath %.c   $(PLATFORM_SRC)/native/sun/java2d/opengl
+ vpath %.c   $(PLATFORM_SRC)/native/sun/java2d/x11
+ 
+-OTHER_LDLIBS = $(LIBM) -lawt -lXext -lX11 -ldl \
++OTHER_LDLIBS = $(LIBM) -lawt -lXext -lX11 -lXrender -ldl \
+                    $(LDFLAGS_COMMON) $(AWT_RUNPATH) $(OTHER_LDFLAGS) -lXtst -lXi
+ 
+ ifeq  ($(PLATFORM), solaris)
+@@ -120,7 +125,7 @@
+ 	-I$(PLATFORM_SRC)/native/sun/awt/medialib \
+         -I$(PLATFORM_SRC)/native/sun/font \
+         -I$(SHARE_SRC)/native/sun/awt \
+-        -I$(PLATFORM_SRC)/native/sun/awt 
++        -I$(PLATFORM_SRC)/native/sun/awt
+ 
+ ifeq ($(PLATFORM), linux)
+ # Allows for builds on Debian GNU Linux, X11 is in a different place 
+diff -Nru openjdk.orig/jdk/make/sun/xawt/mapfile-vers openjdk/jdk/make/sun/xawt/mapfile-vers
+--- openjdk.orig/jdk/make/sun/xawt/mapfile-vers	2010-08-03 23:14:59.000000000 +0100
++++ openjdk/jdk/make/sun/xawt/mapfile-vers	2010-08-03 23:17:50.480916320 +0100
+@@ -184,6 +184,7 @@
+ 	Java_sun_font_FontManager_populateFontFileNameMap;
+         Java_sun_awt_X11GraphicsEnvironment_initDisplay;
+         Java_sun_awt_X11GraphicsEnvironment_initGLX;
++	Java_sun_awt_X11GraphicsEnvironment_initXRender;
+         Java_sun_awt_X11GraphicsEnvironment_checkShmExt;
+         Java_sun_awt_X11GraphicsEnvironment_getNumScreens;
+         Java_sun_awt_X11GraphicsEnvironment_getDefaultScreenNum;
+@@ -332,20 +333,51 @@
+ 	Java_sun_java2d_x11_X11Renderer_XFillRect;
+ 	Java_sun_java2d_x11_X11Renderer_XFillRoundRect;
+         Java_sun_java2d_x11_X11Renderer_devCopyArea;
+-        Java_sun_java2d_x11_X11SurfaceData_setInvalid;
+         Java_sun_java2d_x11_X11SurfaceData_initIDs;
+-	Java_sun_java2d_x11_X11SurfaceData_isDrawableValid;
+         Java_sun_java2d_x11_X11SurfaceData_isDgaAvailable;
+-        Java_sun_java2d_x11_X11SurfaceData_initOps;
+         Java_sun_java2d_x11_X11SurfaceData_initSurface;
+-        Java_sun_java2d_x11_X11SurfaceData_flushNativeSurface;
+-        Java_sun_java2d_x11_X11SurfaceData_XCreateGC;
+-        Java_sun_java2d_x11_X11SurfaceData_XResetClip;
+-        Java_sun_java2d_x11_X11SurfaceData_XSetClip;
+         Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
+         Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
+         Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
+-        Java_sun_java2d_x11_X11SurfaceData_XSetGraphicsExposures;
++
++        Java_sun_java2d_x11_XSurfaceData_initOps;
++        Java_sun_java2d_x11_XSurfaceData_XCreateGC;
++        Java_sun_java2d_x11_XSurfaceData_XResetClip;
++        Java_sun_java2d_x11_XSurfaceData_XSetClip;
++        Java_sun_java2d_x11_XSurfaceData_flushNativeSurface;
++	Java_sun_java2d_x11_XSurfaceData_isDrawableValid;
++        Java_sun_java2d_x11_XSurfaceData_setInvalid;
++        Java_sun_java2d_x11_XSurfaceData_XSetGraphicsExposures;
++        Java_sun_java2d_xr_XRSurfaceData_initXRPicture;
++        Java_sun_java2d_xr_XRSurfaceData_initIDs;
++        Java_sun_java2d_xr_XRSurfaceData_XRInitSurface;
++	Java_sun_java2d_xr_XRBackendNative_initIDs;
++	Java_sun_java2d_xr_XRBackendNative_freeGC;
++	Java_sun_java2d_xr_XRBackendNative_createGC;
++	Java_sun_java2d_xr_XRBackendNative_createPixmap;
++	Java_sun_java2d_xr_XRBackendNative_createPictureNative;
++	Java_sun_java2d_xr_XRBackendNative_freePicture;
++	Java_sun_java2d_xr_XRBackendNative_freePixmap;
++	Java_sun_java2d_xr_XRBackendNative_setPictureRepeat;
++	Java_sun_java2d_xr_XRBackendNative_setGCExposures;
++	Java_sun_java2d_xr_XRBackendNative_setGCForeground;
++	Java_sun_java2d_xr_XRBackendNative_copyArea;
++	Java_sun_java2d_xr_XRBackendNative_renderComposite;
++	Java_sun_java2d_xr_XRBackendNative_renderRectangle;
++	Java_sun_java2d_xr_XRBackendNative_XRenderRectanglesNative;
++	Java_sun_java2d_xr_XRBackendNative_XRSetTransformNative;
++	Java_sun_java2d_xr_XRBackendNative_XRCreateLinearGradientPaintNative;
++	Java_sun_java2d_xr_XRBackendNative_XRCreateRadialGradientPaintNative;
++	Java_sun_java2d_xr_XRBackendNative_setFilter;
++	Java_sun_java2d_xr_XRBackendNative_XRSetClipNative;
++	Java_sun_java2d_xr_XRBackendNative_putMaskNative;
++	Java_sun_java2d_xr_XRBackendNative_XRAddGlyphsNative;
++	Java_sun_java2d_xr_XRBackendNative_XRFreeGlyphsNative;
++	Java_sun_java2d_xr_XRBackendNative_XRenderCreateGlyphSetNative;
++	Java_sun_java2d_xr_XRBackendNative_XRenderCompositeTextNative;
++	Java_sun_java2d_xr_XRBackendNative_setGCMode;
++	Java_sun_java2d_xr_XRBackendNative_GCRectanglesNative;
++	Java_sun_java2d_xr_XRBackendNative_renderCompositeTrapezoidsNative;
+ 
+         Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1arrow;
+         Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box;
+diff -Nru openjdk.orig/jdk/src/share/classes/sun/font/GlyphDisposedListener.java openjdk/jdk/src/share/classes/sun/font/GlyphDisposedListener.java
+--- openjdk.orig/jdk/src/share/classes/sun/font/GlyphDisposedListener.java	1970-01-01 01:00:00.000000000 +0100
++++ openjdk/jdk/src/share/classes/sun/font/GlyphDisposedListener.java	2010-08-03 23:17:50.480916320 +0100
+@@ -0,0 +1,32 @@
++/*
++ * Copyright 2010 Sun Microsystems, Inc.  All Rights Reserved.
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ *
++ * This code is free software; you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 2 only, as
++ * published by the Free Software Foundation.  Sun designates this
++ * particular file as subject to the "Classpath" exception as provided
++ * by Sun in the LICENSE file that accompanied this code.
++ *
++ * This code is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
++ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
++ * version 2 for more details (a copy is included in the LICENSE file that
++ * accompanied this code).
++ *
++ * You should have received a copy of the GNU General Public License version
++ * 2 along with this work; if not, write to the Free Software Foundation,
++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
++ *
++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
++ * CA 95054 USA or visit www.sun.com if you need additional information or
++ * have any questions.
++ */
++
++package sun.font;
++
++import java.util.*;
++
++public interface GlyphDisposedListener {
++    public void glyphDisposed(ArrayList<Long> glyphs);
++}
+diff -Nru openjdk.orig/jdk/src/share/classes/sun/font/StrikeCache.java openjdk/jdk/src/share/classes/sun/font/StrikeCache.java
+--- openjdk.orig/jdk/src/share/classes/sun/font/StrikeCache.java	2010-08-03 23:14:59.000000000 +0100
++++ openjdk/jdk/src/share/classes/sun/font/StrikeCache.java	2010-08-03 23:25:03.054323484 +0100
+@@ -31,6 +31,7 @@
+ import java.lang.ref.ReferenceQueue;
+ import java.lang.ref.SoftReference;
+ import java.lang.ref.WeakReference;
++import java.util.ArrayList;
+ 
+ import sun.java2d.Disposer;
+ import sun.java2d.pipe.BufferedContext;
+@@ -66,6 +67,9 @@
+ 
+     static ReferenceQueue refQueue = Disposer.getQueue();
+ 
++    static ArrayList<GlyphDisposedListener> disposeListeners = new ArrayList<GlyphDisposedListener>(1);
++
++
+     /* Reference objects may have their referents cleared when GC chooses.
+      * During application client start-up there is typically at least one
+      * GC which causes the hotspot VM to clear soft (not just weak) references
+@@ -108,6 +112,8 @@
+     static int topLeftXOffset;
+     static int topLeftYOffset;
+     static int pixelDataOffset;
++    static int cacheCellOffset;
++    static int managedOffset;
+     static long invisibleGlyphPtr;



More information about the distro-pkg-dev mailing list