jdk/makefiles/OldImages.gmk
changeset 12892 3ef14bab6254
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/makefiles/OldImages.gmk	Thu Jun 07 20:40:50 2012 -0700
@@ -0,0 +1,175 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include Setup.gmk
+
+default: $(IMAGES_OUTPUTDIR)/_the.images
+
+include Tools.gmk
+
+JARS:=
+
+##########################################################################################
+
+JCONSOLE_JAR_DEPS := \
+  $(shell $(FIND) $(JDK_OUTPUTDIR)/newclasses/sun/tools/jconsole/ -name "_the.package") \
+  $(shell $(FIND) $(JDK_OUTPUTDIR)/newclasses/com/sun/tools/jconsole/ -name "_the.package")
+
+$(eval $(call SetupArchive,BUILD_JCONSOLE_JAR,$(JCONSOLE_JAR_DEPS),\
+		SRCS:=$(JDK_OUTPUTDIR)/newclasses,\
+		SUFFIXES:=.class .gif .png,\
+		INCLUDES:=sun/tools/jconsole com/sun/tools/jconsole,\
+		JARMAIN:=sun.tools.jconsole.JConsole,\
+		JAR:=$(JDK_OUTPUTDIR)/lib/jconsole.jar,\
+		SKIP_METAINF:=true))
+
+JARS+=$(JDK_OUTPUTDIR)/lib/jconsole.jar
+
+##########################################################################################
+
+CHARSETS_JAR_DEPS :=
+
+$(eval $(call SetupArchive,BUILD_CHARSETS_JAR,$(CHARSETS_JAR_DEPS),\
+		SRCS:=$(JDK_OUTPUTDIR)/newclasses, \
+		SUFFIXES:=.class .dat,\
+		INCLUDES:=sun/nio/cs/ext,\
+		EXTRA_FILES := sun/awt/HKSCS.class \
+                               sun/awt/motif/X11GBK.class \
+                               'sun/awt/motif/X11GB2312$$$$Decoder.class' \
+                               sun/awt/motif/X11GB2312.class \
+                               'sun/awt/motif/X11KSC5601$$$$Decoder.class' \
+                               'sun/awt/motif/X11KSC5601$$$$Encoder.class' \
+                               'sun/awt/motif/X11GB2312$$$$Encoder.class' \
+                               'sun/awt/motif/X11GBK$$$$Encoder.class' \
+                               sun/awt/motif/X11KSC5601.class \
+                               META-INF/services/java.nio.charset.spi.CharsetProvider, \
+		JAR:=$(JDK_OUTPUTDIR)/lib/charsets.jar, \
+		JARMAIN := NONE, \
+		SKIP_METAINF := true))
+
+JARS+=$(JDK_OUTPUTDIR)/lib/charsets.jar
+
+##########################################################################################
+
+SUNPKCS11_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/sunpkcs11.jar
+
+ifndef OPENJDK
+
+SUNPKCS11_JAR_SRC := $(JDK_TOPDIR)/make/closed/tools/crypto/pkcs11/sunpkcs11.jar
+
+$(SUNPKCS11_JAR_DST) : $(SUNPKCS11_JAR_SRC)
+	@$(ECHO) "\n>>>Installing prebuilt SunPKCS11 provider..."
+	$(RM) $@
+	$(CP) $< $@
+
+else
+
+$(eval $(call SetupArchive,BUILD_SUNPKCS11_JAR,$(SUNPKCS11_JAR_DEPS),\
+		SRCS:=$(JDK_OUTPUTDIR)/newclasses, \
+		SUFFIXES:=.class,\
+		INCLUDES:=sun/security/pkcs11,\
+		JAR:=$(SUNPKCS11_JAR_DST), \
+		JARMAIN := NONE, \
+		SKIP_METAINF := true))
+
+endif
+
+JARS += $(SUNPKCS11_JAR_DST)
+
+##########################################################################################
+
+SUNEC_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/sunec.jar
+
+ifndef OPENJDK
+
+SUNEC_JAR_SRC := $(JDK_TOPDIR)/make/closed/tools/crypto/ec/sunec.jar
+
+$(SUNEC_JAR_DST) : $(SUNEC_JAR_SRC)
+	@$(ECHO) "\n>>>Installing prebuilt SunEC provider..."
+	$(RM) $@
+	$(CP) $< $@
+
+else
+
+$(eval $(call SetupArchive,BUILD_SUNEC_JAR,$(SUNEC_JAR_DEPS),\
+		SRCS:=$(JDK_OUTPUTDIR)/newclasses, \
+		SUFFIXES:=.class,\
+		INCLUDES:=sun/security/ec,\
+		EXCLUDE_FILES := \
+			sun/security/ec/ECKeyFactory.class \
+			sun/security/ec/ECParameters.class \
+			sun/security/ec/ECPrivateKeyImpl.class \
+			sun/security/ec/ECPublicKeyImpl.class \
+			sun/security/ec/NamedCurve.class \
+			'sun/security/ec/ECKeyFactory$$$$1.class' \
+			'sun/security/ec/ECKeyFactory$$$$2.class' ,\
+		JAR:=$(SUNEC_JAR_DST), \
+		JARMAIN := NONE, \
+		SKIP_METAINF := true))
+
+endif
+
+JARS += $(SUNEC_JAR_DST)
+
+##########################################################################################
+
+# TODO: deps?
+$(eval $(call SetupArchive,BUILD_SWINGBEANS_JAR,$(SWINGBEANS_JAR_DEPS),\
+		SRCS:=$(JDK_OUTPUTDIR)/newclasses,\
+		SUFFIXES:=BeanInfo.class .gif,\
+		INCLUDES:=javax/swing sun/swing,\
+		EXCLUDES:=javax/swing/plaf,\
+		EXTRA_FILES:=javax/swing/SwingBeanInfoBase.class sun/swing/BeanInfoUtils.class,\
+		JAR:=$(JDK_OUTPUTDIR)/lib/dt.jar,\
+		JARMAIN:=NONE,\
+		SKIP_METAINF:=true))
+
+JARS+=$(JDK_OUTPUTDIR)/lib/dt.jar
+
+##########################################################################################
+
+# Need to define BUILDDIR for Release.gmk to work
+BUILDDIR=$(JDK_TOPDIR)/makefiles
+include common/Defs.gmk
+include common/Release.gmk
+
+# A rudimentary attempt at band-aiding the dependency tracking.
+DEPS:=	$(shell $(FIND) $(JDK_OUTPUTDIR)/newclasses -name "*.class" -type f) \
+	$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f) \
+	$(shell $(FIND) $(JDK_OUTPUTDIR)/lib -type f) 
+
+$(IMAGES_OUTPUTDIR)/_the.images : $(DEPS) $(JARS)
+	$(MKDIR) -p $(@D)
+# 	Restart this makefile, ugly, but since double colon (::) rules
+# 	have been used in Release.gmk, it is impossible to craft on
+# 	dependencies on these. I.e. -do-not-use- :: rules!!!!!
+#       Repeat after me: -do-not-use- :: rules!!!!!
+	$(MAKE) -j1 -f OldImages.gmk $(IMAGES_MAKE_ARGS) images
+	$(TOUCH) $@
+
+.PHONY: default