提交 612e469d 编写于 作者: D dholmes

8038189: Add cross-platform compact profiles support

Summary: Generalize the compact profile support so it can be used on any platform
Reviewed-by: erikj
上级 a0a4dbca
# #
# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -267,10 +267,12 @@ $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.rt.jar.contents: $(IMAGES_OUTPUTDIR)/lib$ ...@@ -267,10 +267,12 @@ $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.rt.jar.contents: $(IMAGES_OUTPUTDIR)/lib$
$(RM) $@ $@.tmp $(RM) $@ $@.tmp
$(GREP) -e '\.class$$' $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.jars.contents > $@.tmp $(GREP) -e '\.class$$' $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.jars.contents > $@.tmp
ifneq ($(PROFILE), ) ifneq ($(PROFILE), )
# # Add back classes from excluded packages (fixing the $ substitution in the process) ifneq ($(strip $(RT_JAR_INCLUDE_TYPES)), )
for type in $(subst \$$,\, $(RT_JAR_INCLUDE_TYPES)) ; do \ # Add back classes from excluded packages (fixing the $ substitution in the process)
$(ECHO) $$type >> $@.tmp ; \ for type in $(subst \$$,\, $(RT_JAR_INCLUDE_TYPES)) ; do \
done $(ECHO) $$type >> $@.tmp ; \
done
endif
endif endif
$(MV) $@.tmp $@ $(MV) $@.tmp $@
...@@ -281,15 +283,15 @@ $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.resources.jar.contents: $(IMAGES_OUTPUTDI ...@@ -281,15 +283,15 @@ $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.resources.jar.contents: $(IMAGES_OUTPUTDI
-e '/_the\.*' -e '^_the\.*' -e '\\_the\.*' -e 'javac_state' \ -e '/_the\.*' -e '^_the\.*' -e '\\_the\.*' -e 'javac_state' \
$(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.jars.contents > $@.tmp $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/_the.jars.contents > $@.tmp
ifneq ($(PROFILE), ) ifneq ($(PROFILE), )
# # Strip out all META-INF/services/ entries ifneq ($(strip $(PROFILE_INCLUDE_METAINF_SERVICES)), )
$(GREP) -v -e 'META-INF/services/' $@.tmp > $@.tmp2 # Strip out all META-INF/services/ entries
# # Add back the required services $(GREP) -v -e 'META-INF/services/' $@.tmp > $@.tmp2
# # FIXME: On Solaris if PROFILE_INCLUDE_METAINF_SERVICES is not defined # Add back the required services
# # we get a syntax error from sh. That doesn't happen on linux for service in $(PROFILE_INCLUDE_METAINF_SERVICES) ; do \
for service in $(PROFILE_INCLUDE_METAINF_SERVICES) ; do \ $(ECHO) $$service >> $@.tmp2; \
$(ECHO) $$service >> $@.tmp2; \ done
done $(MV) $@.tmp2 $@.tmp
$(MV) $@.tmp2 $@.tmp endif
endif endif
$(MV) $@.tmp $@ $(MV) $@.tmp $@
...@@ -309,6 +311,15 @@ $(BEANLESS_CLASSES)/%: $(JDK_OUTPUTDIR)/classes/% ...@@ -309,6 +311,15 @@ $(BEANLESS_CLASSES)/%: $(JDK_OUTPUTDIR)/classes/%
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(TOOL_REMOVEMETHODS) '$<' $@ addPropertyChangeListener removePropertyChangeListener $(TOOL_REMOVEMETHODS) '$<' $@ addPropertyChangeListener removePropertyChangeListener
# Code these targets explicitly because the target "%" expansion does
# not work with the inline "$" in the file name.
$(BEANLESS_CLASSES)/java/util/jar/Pack200\$$Packer.class: $(JDK_OUTPUTDIR)/classes/java/util/jar/Pack200$$Packer.class
$(MKDIR) -p $(@D)
$(TOOL_REMOVEMETHODS) '$<' $@ addPropertyChangeListener removePropertyChangeListener
$(BEANLESS_CLASSES)/java/util/jar/Pack200\$$Unpacker.class: $(JDK_OUTPUTDIR)/classes/java/util/jar/Pack200$$Unpacker.class
$(MKDIR) -p $(@D)
$(TOOL_REMOVEMETHODS) '$<' $@ addPropertyChangeListener removePropertyChangeListener
CLASSES_TO_DEBEAN = \ CLASSES_TO_DEBEAN = \
java/util/logging/LogManager.class \ java/util/logging/LogManager.class \
java/util/jar/Pack200\$$Packer.class \ java/util/jar/Pack200\$$Packer.class \
......
# #
# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -161,11 +161,13 @@ JRE_BIN_LIST := $(filter-out $(addprefix %, $(WINDOWS_JDKJRE_BIN_FILES)), $(JDKJ ...@@ -161,11 +161,13 @@ JRE_BIN_LIST := $(filter-out $(addprefix %, $(WINDOWS_JDKJRE_BIN_FILES)), $(JDKJ
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
JDK_BIN_LIST := $(filter $(addprefix %, $(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST)) JDK_BIN_LIST := $(filter $(addprefix %, $(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST))
# On windows x86, the server jvm is filtered out from the j2re image. This could possibly # On windows x86, the server jvm is filtered out from the j2re image. This is historical
# be handled by profiles in the future. If no client jvm is built, leave server in. # and is not applied to compact profiles. If no client jvm is built, leave server in.
ifeq ($(OPENJDK_TARGET_CPU), x86) ifeq ($(OPENJDK_TARGET_CPU), x86)
ifeq ($(JVM_VARIANT_CLIENT), true) ifeq ($(JVM_VARIANT_CLIENT), true)
JRE_BIN_LIST := $(filter-out $(JDK_OUTPUTDIR)/bin/server/%, $(JRE_BIN_LIST)) ifeq ($(PROFILE), )
JRE_BIN_LIST := $(filter-out $(JDK_OUTPUTDIR)/bin/server/%, $(JRE_BIN_LIST))
endif
endif endif
endif endif
else else
......
# #
# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -116,6 +116,12 @@ endef ...@@ -116,6 +116,12 @@ endef
# #
HOTSPOT_IMPORT_FILES := $(addprefix $(LIBRARY_PREFIX), jvm.* saproc.* jsig.* sawindbg.* jvm_db.* jvm_dtrace.*) \ HOTSPOT_IMPORT_FILES := $(addprefix $(LIBRARY_PREFIX), jvm.* saproc.* jsig.* sawindbg.* jvm_db.* jvm_dtrace.*) \
Xusage.txt sa-jdi.jar Xusage.txt sa-jdi.jar
ifeq ($(OPENJDK_TARGET_OS), macosx)
# additional debug file
HOTSPOT_IMPORT_FILES += Info.plist
endif
$(eval $(call CopyDir,HOTSPOT0, $(HOTSPOT_LIB_DIR), $(INSTALL_LIBRARIES_HERE), $(HOTSPOT_IMPORT_FILES))) $(eval $(call CopyDir,HOTSPOT0, $(HOTSPOT_LIB_DIR), $(INSTALL_LIBRARIES_HERE), $(HOTSPOT_IMPORT_FILES)))
$(eval $(call CopyDir,HOTSPOT1, $(HOTSPOT_DIST)/lib, $(JDK_OUTPUTDIR)/lib, $(HOTSPOT_IMPORT_FILES))) $(eval $(call CopyDir,HOTSPOT1, $(HOTSPOT_DIST)/lib, $(JDK_OUTPUTDIR)/lib, $(HOTSPOT_IMPORT_FILES)))
......
...@@ -47,7 +47,6 @@ include profile-includes.txt ...@@ -47,7 +47,6 @@ include profile-includes.txt
# Note that some jars may be optional depending on the type of build (jdk vs. # Note that some jars may be optional depending on the type of build (jdk vs.
# openjdk) and the platform. # openjdk) and the platform.
# #
# WARNING: incoming lists are currently validated for linux only!
############################################################################### ###############################################################################
# These are jar files for which the contents vary depending on the profile # These are jar files for which the contents vary depending on the profile
......
...@@ -124,11 +124,11 @@ TOOL_CLDRCONVERTER = $(JAVA_SMALL) -cp $(JDK_OUTPUTDIR)/btclasses \ ...@@ -124,11 +124,11 @@ TOOL_CLDRCONVERTER = $(JAVA_SMALL) -cp $(JDK_OUTPUTDIR)/btclasses \
build.tools.cldrconverter.CLDRConverter build.tools.cldrconverter.CLDRConverter
TOOL_REMOVEMETHODS = $(JAVA_SMALL) -Xbootclasspath/p:$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar \ TOOL_REMOVEMETHODS = $(JAVA_SMALL) -Xbootclasspath/p:$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar \
-cp $(JDK_OUTPUTDIR)/btclasses:$(JDK_OUTPUTDIR) \ -cp '$(JDK_OUTPUTDIR)/btclasses$(PATH_SEP)$(JDK_OUTPUTDIR)' \
build.tools.classfile.RemoveMethods build.tools.classfile.RemoveMethods
TOOL_CHECKDEPS = $(JAVA_SMALL) -Xbootclasspath/p:$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar \ TOOL_CHECKDEPS = $(JAVA_SMALL) -Xbootclasspath/p:$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar \
-cp $(JDK_OUTPUTDIR)/btclasses:$(JDK_OUTPUTDIR) \ -cp '$(JDK_OUTPUTDIR)/btclasses$(PATH_SEP)$(JDK_OUTPUTDIR)' \
build.tools.deps.CheckDeps build.tools.deps.CheckDeps
TOOL_ADDTORESTRICTEDPKGS=$(JAVA_SMALL) -cp $(JDK_OUTPUTDIR)/btclasses \ TOOL_ADDTORESTRICTEDPKGS=$(JAVA_SMALL) -cp $(JDK_OUTPUTDIR)/btclasses \
......
# #
# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -22,38 +22,150 @@ ...@@ -22,38 +22,150 @@
# or visit www.oracle.com if you need additional information or have any # or visit www.oracle.com if you need additional information or have any
# questions. # questions.
# #
# These lists define where a file belongs if it exists. It is perfectly fine
# if a file does not exist on some platforms - we do not have to produce exact
# per-platform lists. However, for clarity, platform-unique files are handled
# in platform-specific conditionals.
# On different platforms the libraries are placed into different locations in the
# JRE:
ifeq (, $(findstring $(OPENJDK_TARGET_OS), windows macosx))
# On non-windows/OSX libraries go into jre/lib/<arch>
LIBS_PREFIX := $(OPENJDK_TARGET_CPU_LEGACY_LIB)/
else
# On OSX they go into jre/lib/ - on Windows they go into jre/bin/ and we won't use this
LIBS_PREFIX :=
endif
# Debug info files are tricky to deal with due to all the different platform variants
# and because they can be zipped.
ifeq ($(ZIP_DEBUGINFO_FILES), true)
# Common case and 'just works' on all platforms
DEBUG_SUFFIX := .diz
else
# It gets complicated ...
ifeq ($(OPENJDK_TARGET_OS), macosx)
# This is a directory, not a simple file, so
# it needs expanding explicitly later on
DEBUG_SUFFIX := $(SHARED_LIBRARY_SUFFIX).dSYM
else
ifeq ($(OPENJDK_TARGET_OS), windows)
DEBUG_SUFFIX := .map .pdb
else
DEBUG_SUFFIX := .debuginfo
endif
endif
endif
# Expand the contents of the .dSYM directories on macosx.
# Param 1 - debug files list eg libFoo.dylib.dSYM or libFoo.diz (if zipped)
# Param 2 - libraries list eg Foo
# On macosx if not zipping debuginfo files we expand the contents of the .dSYM directories,
# else we return the original list of .diz files.
# On other OS we return the original list of debuginfo files (whether zipped or not)
#
define expand-debuginfo
$(if $(and $(filter-out true, $(ZIP_DEBUGINFO_FILES)), $(filter macosx, $(OPENJDK_TARGET_OS))), \
$(foreach i, $1, $(addsuffix /Contents/Info.plist, $i)) \
$(foreach i, $2, $(addsuffix /Contents/Resources/DWARF/$i, $(filter $i.%, $1))), \
$1)
endef
# Common executable files
PROFILE_1_JRE_BIN_FILES := \ PROFILE_1_JRE_BIN_FILES := \
java$(EXE_SUFFIX) \ java$(EXE_SUFFIX) \
keytool$(EXE_SUFFIX) keytool$(EXE_SUFFIX)
PROFILE_1_JRE_LIB_FILES := \ ifeq ($(OPENJDK_TARGET_OS), windows)
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)j2pkcs11$(SHARED_LIBRARY_SUFFIX) \ PROFILE_1_JRE_BIN_FILES += javaw$(EXE_SUFFIX)
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX) \ endif
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX) \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jsig.diz \ PROFILE_1_LIBRARIES := \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)net$(SHARED_LIBRARY_SUFFIX) \ j2pkcs11 \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)nio$(SHARED_LIBRARY_SUFFIX) \ java \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)sunec$(SHARED_LIBRARY_SUFFIX) \ jsig \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)verify$(SHARED_LIBRARY_SUFFIX) \ net \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)verify.diz \ nio \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)zip$(SHARED_LIBRARY_SUFFIX) \ sunec \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/client/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX) \ verify \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/client/$(LIBRARY_PREFIX)jsig.diz \ zip
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/client/$(LIBRARY_PREFIX)jvm$(SHARED_LIBRARY_SUFFIX) \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/client/$(LIBRARY_PREFIX)jvm.diz \ ifeq ($(OPENJDK_TARGET_OS), windows)
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/client/Xusage.txt \ PROFILE_1_LIBRARIES += msvcrt100
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \ endif
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/jvm.cfg \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/minimal/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX) \ PROFILE_1_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(PROFILE_1_LIBRARIES))
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/minimal/$(LIBRARY_PREFIX)jsig.diz \ PROFILE_1_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(PROFILE_1_LIBRARIES)))
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/minimal/$(LIBRARY_PREFIX)jvm$(SHARED_LIBRARY_SUFFIX) \ PROFILE_1_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(PROFILE_1_LIBRARIES))
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/minimal/$(LIBRARY_PREFIX)jvm.diz \ PROFILE_1_DEBUG_FILES := $(call expand-debuginfo, $(PROFILE_1_DEBUG_FILES), $(PROFILE_1_LIBRARIES))
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/minimal/Xusage.txt \ PROFILE_1_LIBRARIES += $(PROFILE_1_DEBUG_FILES)
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/server/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX) \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/server/$(LIBRARY_PREFIX)jsig.diz \ # Note: libjsig exists as both the real file and a symlink in the VM directory
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/server/$(LIBRARY_PREFIX)jvm$(SHARED_LIBRARY_SUFFIX) \ # so we have to treat it with care when looking for the debuginfo files
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/server/$(LIBRARY_PREFIX)jvm.diz \ VM_LIBRARIES := \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/server/Xusage.txt \ jvm
ifeq ($(OPENJDK_TARGET_OS), solaris)
VM_LIBRARIES += jvm_db jvm_dtrace
endif
VM_SYMLINKS := \
jsig
VM_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(VM_LIBRARIES))
VM_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(VM_LIBRARIES)))
VM_SYMLINKS := $(addprefix $(LIBRARY_PREFIX), $(VM_SYMLINKS))
VM_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(VM_LIBRARIES))
VM_DEBUG_FILES := $(call expand-debuginfo, $(VM_DEBUG_FILES), $(VM_LIBRARIES))
VM_DEBUG_FILES += $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(VM_SYMLINKS)))
VM_SYMLINKS := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(VM_SYMLINKS))
VM_LIBRARIES += $(VM_SYMLINKS)
VM_FILES := \
Xusage.txt
VM_DIRS := client server minimal
VM_FILES := $(foreach i, $(VM_DIRS), $(addprefix $i/, $(VM_LIBRARIES) $(VM_FILES) $(VM_DEBUG_FILES)))
JLI_LIBRARIES := \
jli
ifneq ($(OPENJDK_TARGET_OS), windows)
JLI_SUBDIR := jli/
else
JLI_SUBDIR :=
endif
JLI_LIBRARIES := $(addprefix $(JLI_SUBDIR)$(LIBRARY_PREFIX), $(JLI_LIBRARIES))
JLI_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(JLI_LIBRARIES)))
JLI_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(JLI_LIBRARIES))
JLI_DEBUG_FILES := $(call expand-debuginfo, $(JLI_DEBUG_FILES), $(JLI_LIBRARIES))
JLI_LIBRARIES += $(JLI_DEBUG_FILES)
ifneq ($(OPENJDK_TARGET_OS), windows)
PROFILE_1_JRE_LIB_FILES := \
$(addprefix $(LIBS_PREFIX), $(PROFILE_1_LIBRARIES) $(VM_FILES) $(JLI_LIBRARIES))
else
# On windows libraries go into jre/bin
PROFILE_1_JRE_BIN_FILES += $(PROFILE_1_LIBRARIES) $(VM_FILES) $(JLI_LIBRARIES)
endif
# Remaining jre/lib contents
# OSX doesn't use <arch> directory
#
ifeq ($(OPENJDK_TARGET_OS), macosx)
PROFILE_1_JRE_LIB_FILES += \
jvm.cfg \
jspawnhelper
else
PROFILE_1_JRE_LIB_FILES += \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/jvm.cfg \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/jspawnhelper
endif
PROFILE_1_JRE_LIB_FILES += \
calendars.properties \ calendars.properties \
classlist \ classlist \
content-types.properties \ content-types.properties \
...@@ -81,6 +193,14 @@ PROFILE_1_JRE_LIB_FILES := \ ...@@ -81,6 +193,14 @@ PROFILE_1_JRE_LIB_FILES := \
security/trusted.libraries \ security/trusted.libraries \
tzdb.dat tzdb.dat
ifeq ($(OPENJDK_TARGET_OS), windows)
PROFILE_1_JRE_LIB_FILES += tzmappings
else
ifeq ($(OPENJDK_TARGET_OS), solaris)
PROFILE_1_JRE_LIB_FILES += sdp/sdp.conf
endif
endif
PROFILE_1_JRE_OTHER_FILES := \ PROFILE_1_JRE_OTHER_FILES := \
COPYRIGHT \ COPYRIGHT \
LICENSE \ LICENSE \
...@@ -106,32 +226,63 @@ PROFILE_2_JRE_BIN_FILES := \ ...@@ -106,32 +226,63 @@ PROFILE_2_JRE_BIN_FILES := \
rmid$(EXE_SUFFIX) \ rmid$(EXE_SUFFIX) \
rmiregistry$(EXE_SUFFIX) rmiregistry$(EXE_SUFFIX)
ifeq ($(OPENJDK_TARGET_OS), windows)
PROFILE_2_JRE_BIN_FILES += java-rmi$(EXE_SUFFIX)
endif
# If you add libraries here, make sure you use the same techniques
# as used for the other profile's libraries regarding debug files etc
PROFILE_2_JRE_LIB_FILES := PROFILE_2_JRE_LIB_FILES :=
PROFILE_2_JRE_OTHER_FILES := PROFILE_2_JRE_OTHER_FILES :=
PROFILE_2_JRE_JAR_FILES := PROFILE_2_JRE_JAR_FILES :=
ifeq ($(OPENJDK_TARGET_OS), windows)
PROFILE_3_JRE_BIN_FILES := \
kinit$(EXE_SUFFIX) \
klist$(EXE_SUFFIX) \
ktab$(EXE_SUFFIX)
else
PROFILE_3_JRE_BIN_FILES :=
endif
PROFILE_3_JRE_BIN_FILES := PROFILE_3_LIBRARIES := \
hprof \
PROFILE_3_JRE_LIB_FILES := \ instrument \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)hprof$(SHARED_LIBRARY_SUFFIX) \ j2gss \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)hprof.diz \ j2pcsc \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)instrument$(SHARED_LIBRARY_SUFFIX) \ jaas_unix \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)instrument.diz \ jaas_nt \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)j2gss$(SHARED_LIBRARY_SUFFIX) \ java_crw_demo \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)j2pcsc$(SHARED_LIBRARY_SUFFIX) \ jsdt \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jaas_unix$(SHARED_LIBRARY_SUFFIX) \ management \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)java_crw_demo$(SHARED_LIBRARY_SUFFIX) \ npt \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)java_crw_demo.diz \ sctp
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jsdt$(SHARED_LIBRARY_SUFFIX) \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jsdt.diz \ ifeq ($(OPENJDK_TARGET_OS), windows)
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)management$(SHARED_LIBRARY_SUFFIX) \ PROFILE_3_LIBRARIES += w2k_lsa_auth
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)management.diz \ else
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)npt$(SHARED_LIBRARY_SUFFIX) \ ifeq ($(OPENJDK_TARGET_OS), macosx)
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)npt.diz \ PROFILE_3_LIBRARIES += osxkrb5
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)sctp$(SHARED_LIBRARY_SUFFIX) \ endif
endif
PROFILE_3_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(PROFILE_3_LIBRARIES))
PROFILE_3_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(PROFILE_3_LIBRARIES)))
PROFILE_3_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(PROFILE_3_LIBRARIES))
PROFILE_3_DEBUG_FILES := $(call expand-debuginfo, $(PROFILE_3_DEBUG_FILES), $(PROFILE_3_LIBRARIES))
PROFILE_3_LIBRARIES += $(PROFILE_3_DEBUG_FILES)
ifneq ($(OPENJDK_TARGET_OS), windows)
PROFILE_3_JRE_LIB_FILES := \
$(addprefix $(LIBS_PREFIX), $(PROFILE_3_LIBRARIES))
else
# On windows libraries go into jre/bin
PROFILE_3_JRE_BIN_FILES += $(PROFILE_3_LIBRARIES)
endif
PROFILE_3_JRE_LIB_FILES += \
jvm.hprof.txt \ jvm.hprof.txt \
management-agent.jar \ management-agent.jar \
management/jmxremote.access \ management/jmxremote.access \
...@@ -153,25 +304,40 @@ FULL_JRE_BIN_FILES := \ ...@@ -153,25 +304,40 @@ FULL_JRE_BIN_FILES := \
tnameserv$(EXE_SUFFIX) \ tnameserv$(EXE_SUFFIX) \
unpack200$(EXE_SUFFIX) unpack200$(EXE_SUFFIX)
FULL_JRE_LIB_FILES := \ JRE_LIBRARIES := \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX) \ awt \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX) \ awt_headless \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX) \ awt_xawt \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)dcpr$(SHARED_LIBRARY_SUFFIX) \ dcpr \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)dt_socket$(SHARED_LIBRARY_SUFFIX) \ dt_socket \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)dt_socket.diz \ fontmanager \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX) \ jawt \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX) \ jdwp \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jdwp$(SHARED_LIBRARY_SUFFIX) \ jfr \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jfr$(SHARED_LIBRARY_SUFFIX) \ jpeg \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX) \ jsound \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jsound$(SHARED_LIBRARY_SUFFIX) \ jsoundalsa \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)jsoundalsa$(SHARED_LIBRARY_SUFFIX) \ kcms \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)kcms$(SHARED_LIBRARY_SUFFIX) \ mlib_image \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)mlib_image$(SHARED_LIBRARY_SUFFIX) \ splashscreen \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)splashscreen$(SHARED_LIBRARY_SUFFIX) \ t2k \
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX) \ unpack
$(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX) \
JRE_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(JRE_LIBRARIES))
JRE_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(JRE_LIBRARIES)))
JRE_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(JRE_LIBRARIES))
JRE_DEBUG_FILES := $(call expand-debuginfo, $(JRE_DEBUG_FILES), $(JRE_LIBRARIES))
JRE_LIBRARIES += $(JRE_DEBUG_FILES)
ifneq ($(OPENJDK_TARGET_OS), windows)
FULL_JRE_LIB_FILES := \
$(addprefix $(LIBS_PREFIX), $(JRE_LIBRARIES))
else
# On windows libraries go into jre/bin
FULL_JRE_BIN_FILES += $(JRE_LIBRARIES)
endif
FULL_JRE_LIB_FILES += \
charsets.jar \ charsets.jar \
cmm/CIEXYZ.pf \ cmm/CIEXYZ.pf \
cmm/GRAY.pf \ cmm/GRAY.pf \
...@@ -254,3 +420,4 @@ FULL_JRE_JAR_FILES := \ ...@@ -254,3 +420,4 @@ FULL_JRE_JAR_FILES := \
ext/nashorn.jar \ ext/nashorn.jar \
ext/zipfs.jar \ ext/zipfs.jar \
jfr.jar jfr.jar
...@@ -162,6 +162,8 @@ PROFILE_3_RTJAR_EXCLUDE_TYPES := \ ...@@ -162,6 +162,8 @@ PROFILE_3_RTJAR_EXCLUDE_TYPES := \
javax/management/remote/rmi/_RMIServer_Stub.class javax/management/remote/rmi/_RMIServer_Stub.class
FULL_JRE_RTJAR_INCLUDE_PACKAGES := \ FULL_JRE_RTJAR_INCLUDE_PACKAGES := \
apple \
com/apple \
com/oracle \ com/oracle \
com/sun/accessibility/internal/resources \ com/sun/accessibility/internal/resources \
com/sun/activation/registries \ com/sun/activation/registries \
...@@ -213,6 +215,7 @@ FULL_JRE_RTJAR_INCLUDE_PACKAGES := \ ...@@ -213,6 +215,7 @@ FULL_JRE_RTJAR_INCLUDE_PACKAGES := \
sun/dc \ sun/dc \
sun/font \ sun/font \
sun/java2d \ sun/java2d \
sun/lwawt \
sun/net/ftp \ sun/net/ftp \
sun/net/smtp \ sun/net/smtp \
sun/net/www/content/audio \ sun/net/www/content/audio \
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册