makefiles/CompileJavaClasses.gmk

Print this page

        

*** 43,53 **** com/sun/tools/example/debug/bdi\ com/sun/tools/example/debug/event\ com/sun/tools/example/debug/gui \ com/oracle/security ! ifeq ($(PLATFORM)-$(ARCH_DATA_MODEL),windows-64) EXCLUDES += sun/security/pkcs11 endif ifdef OPENJDK EXCLUDES+= sun/dc \ --- 43,53 ---- com/sun/tools/example/debug/bdi\ com/sun/tools/example/debug/event\ com/sun/tools/example/debug/gui \ com/oracle/security ! ifeq ($(OPENJDK_TARGET_OS)-$(ARCH_DATA_MODEL),windows-64) EXCLUDES += sun/security/pkcs11 endif ifdef OPENJDK EXCLUDES+= sun/dc \
*** 59,109 **** ifndef OPENJDK # There exists two versions of this file... EXFILES := $(JDK_TOPDIR)/src/share/classes/javax/crypto/JarVerifier.java endif ! ifneq ($(PLATFORM),solaris) # Exclude Solaris nio and two security related files in src/share/classes EXFILES += SolarisAclFileAttributeView.java \ SolarisFileStore.java \ SolarisFileSystem.java \ SolarisFileSystemProvider.java \ SolarisNativeDispatcher.java \ SolarisUserDefinedFileAttributeView.java \ SolarisWatchService.java \ SolarisAclFileAttributeView.java \ - SolarisFileStore.java \ - SolarisFileSystem.java \ - SolarisFileSystemProvider.java \ - SolarisUserDefinedFileAttributeView.java \ - SolarisNativeDispatcher.java \ - SolarisWatchService.java \ SolarisLoginModule.java \ SolarisSystem.java \ sun/tools/attach/SolarisAttachProvider.java \ sun/tools/attach/SolarisVirtualMachine.java endif # In the old build, this isn't excluded on macosx, even though it probably # should be. ! ifneq ($(PLATFORM),macosx) EXFILES+=WrapperGenerator.java endif ! ifneq ($(PLATFORM),windows) # Exclude Window security related files in src/share/classes EXFILES+=NTLoginModule.java \ NTSystem.java endif ! ifeq ($(PLATFORM),windows) # Don't build GTK L&F on Windows EXCLUDES+= com/sun/java/swing/plaf/gtk endif ! ifneq ($(PLATFORM),linux) EXFILES+=sun/tools/attach/LinuxAttachProvider.java \ sun/tools/attach/LinuxVirtualMachine.java \ sun/nio/fs/LinuxDosFileAttributeView.java \ sun/nio/fs/LinuxFileStore.java \ sun/nio/fs/LinuxFileSystem.java \ --- 59,106 ---- ifndef OPENJDK # There exists two versions of this file... EXFILES := $(JDK_TOPDIR)/src/share/classes/javax/crypto/JarVerifier.java endif ! ifneq ($(OPENJDK_TARGET_OS),solaris) # Exclude Solaris nio and two security related files in src/share/classes EXFILES += SolarisAclFileAttributeView.java \ SolarisFileStore.java \ SolarisFileSystem.java \ SolarisFileSystemProvider.java \ SolarisNativeDispatcher.java \ SolarisUserDefinedFileAttributeView.java \ SolarisWatchService.java \ SolarisAclFileAttributeView.java \ SolarisLoginModule.java \ SolarisSystem.java \ + sun/nio/ch/EventPortSelectorImpl.java \ + sun/nio/ch/EventPortSelectorProvider.java \ + sun/nio/ch/EventPortWrapper.java \ sun/tools/attach/SolarisAttachProvider.java \ sun/tools/attach/SolarisVirtualMachine.java endif # In the old build, this isn't excluded on macosx, even though it probably # should be. ! ifneq ($(OPENJDK_TARGET_OS),macosx) EXFILES+=WrapperGenerator.java endif ! ifneq ($(OPENJDK_TARGET_OS),windows) # Exclude Window security related files in src/share/classes EXFILES+=NTLoginModule.java \ NTSystem.java endif ! ifeq ($(OPENJDK_TARGET_OS),windows) # Don't build GTK L&F on Windows EXCLUDES+= com/sun/java/swing/plaf/gtk endif ! ifneq ($(OPENJDK_TARGET_OS),linux) EXFILES+=sun/tools/attach/LinuxAttachProvider.java \ sun/tools/attach/LinuxVirtualMachine.java \ sun/nio/fs/LinuxDosFileAttributeView.java \ sun/nio/fs/LinuxFileStore.java \ sun/nio/fs/LinuxFileSystem.java \
*** 111,121 **** sun/nio/fs/LinuxNativeDispatcher.java \ sun/nio/fs/LinuxUserDefinedFileAttributeView.java \ sun/nio/fs/LinuxWatchService.java endif ! ifneq ($(PLATFORM),macosx) EXFILES+=sun/nio/fs/BsdFileStore.java \ sun/nio/fs/BsdFileSystem.java \ sun/nio/fs/BsdFileSystemProvider.java \ sun/nio/fs/BsdNativeDispatcher.java \ sun/tools/attach/BsdAttachProvider.java \ --- 108,118 ---- sun/nio/fs/LinuxNativeDispatcher.java \ sun/nio/fs/LinuxUserDefinedFileAttributeView.java \ sun/nio/fs/LinuxWatchService.java endif ! ifneq ($(OPENJDK_TARGET_OS),macosx) EXFILES+=sun/nio/fs/BsdFileStore.java \ sun/nio/fs/BsdFileSystem.java \ sun/nio/fs/BsdFileSystemProvider.java \ sun/nio/fs/BsdNativeDispatcher.java \ sun/tools/attach/BsdAttachProvider.java \
*** 135,149 **** ifdef OPENJDK EXCLUDES+=sun/java2d/cmm/kcms endif # Used on windows and macosx ! ifeq (,$(filter $(PLATFORM), windows macosx)) EXFILES+=sun/awt/AWTCharset.java endif ! ifneq ($(PLATFORM), macosx) # # Not in rt.jar on solaris and linux...(windows not checked) # in rt.jar on macosx ?? EXFILES+=sun/awt/X11/ScreenFormat.java \ sun/awt/X11/XArc.java \ --- 132,146 ---- ifdef OPENJDK EXCLUDES+=sun/java2d/cmm/kcms endif # Used on windows and macosx ! ifeq (,$(filter $(OPENJDK_TARGET_OS), windows macosx)) EXFILES+=sun/awt/AWTCharset.java endif ! ifneq ($(OPENJDK_TARGET_OS), macosx) # # Not in rt.jar on solaris and linux...(windows not checked) # in rt.jar on macosx ?? EXFILES+=sun/awt/X11/ScreenFormat.java \ sun/awt/X11/XArc.java \
*** 190,200 **** endif # Exclude another implicitly not included file. EXFILES+=sun/util/locale/AsciiUtil.java ! ifeq (,$(filter $(PLATFORM), solaris macosx)) # # only solaris and macosx # EXFILES+=sun/nio/fs/PollingWatchService.java endif --- 187,197 ---- endif # Exclude another implicitly not included file. EXFILES+=sun/util/locale/AsciiUtil.java ! ifeq (,$(filter $(OPENJDK_TARGET_OS), solaris macosx)) # # only solaris and macosx # EXFILES+=sun/nio/fs/PollingWatchService.java endif
*** 203,213 **** # Exclude *-linux-arm.java and *-linux-ppc.java from closed. EXFILES+=-linux-arm.java \ -linux-ppc.java # TODO: Is this necessary? ! ifeq ($(PLATFORM), windows) EXFILES+=sun/nio/ch/AbstractPollSelectorImpl.java \ sun/nio/ch/DevPollArrayWrapper.java \ sun/nio/ch/DevPollSelectorImpl.java \ sun/nio/ch/DevPollSelectorProvider.java \ sun/nio/ch/InheritedChannel.java \ --- 200,210 ---- # Exclude *-linux-arm.java and *-linux-ppc.java from closed. EXFILES+=-linux-arm.java \ -linux-ppc.java # TODO: Is this necessary? ! ifeq ($(OPENJDK_TARGET_OS), windows) EXFILES+=sun/nio/ch/AbstractPollSelectorImpl.java \ sun/nio/ch/DevPollArrayWrapper.java \ sun/nio/ch/DevPollSelectorImpl.java \ sun/nio/ch/DevPollSelectorProvider.java \ sun/nio/ch/InheritedChannel.java \
*** 246,267 **** include CopyIntoClasses.gmk # Now we have COPY_PATTERNS, COPY_FILES and COPY_EXTRA ifndef OPENJDK CLOSED_SRC_DIRS:=$(JDK_TOPDIR)/src/closed/share/classes \ ! $(JDK_TOPDIR)/src/closed/$(LEGACY_HOST_OS_API)/classes endif MACOSX_SRC_DIRS := ! ifeq ($(PLATFORM),macosx) MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes # this files are duplicated in MACOSX_SRC_DIRS EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \ $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \ $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \ $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java endif # The exception handling of swing beaninfo # These resources violates the convention of having code and resources together under # $(JDK_TOPDIR)/src/.../classes directories --- 243,270 ---- include CopyIntoClasses.gmk # Now we have COPY_PATTERNS, COPY_FILES and COPY_EXTRA ifndef OPENJDK CLOSED_SRC_DIRS:=$(JDK_TOPDIR)/src/closed/share/classes \ ! $(JDK_TOPDIR)/src/closed/$(LEGACY_OPENJDK_TARGET_OS_API)/classes endif MACOSX_SRC_DIRS := ! ifeq ($(OPENJDK_TARGET_OS),macosx) MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes # this files are duplicated in MACOSX_SRC_DIRS EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \ $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \ $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \ $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java + + # JObjC.jar contains 1.5 byte-code...so skip it here :-( + # MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/jobjc/src + # EXCLUDES+= tests/java/com/apple/jobjc + + EXCLUDES+= com/apple/jobjc endif # The exception handling of swing beaninfo # These resources violates the convention of having code and resources together under # $(JDK_TOPDIR)/src/.../classes directories
*** 270,280 **** $(CP) $< $@ $(eval $(call SetupJavaCompilation,BUILD_JDK,\ SETUP:=GENERATE_JDKBYTECODE,\ SRC:=$(JDK_TOPDIR)/src/share/classes \ ! $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes \ $(MACOSX_SRC_DIRS) \ $(JDK_OUTPUTDIR)/gensrc \ $(JDK_OUTPUTDIR)/gensrc_swing/javax/swing/beaninfo \ $(CLOSED_SRC_DIRS),\ EXCLUDES:=$(EXCLUDES),\ --- 273,283 ---- $(CP) $< $@ $(eval $(call SetupJavaCompilation,BUILD_JDK,\ SETUP:=GENERATE_JDKBYTECODE,\ SRC:=$(JDK_TOPDIR)/src/share/classes \ ! $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes \ $(MACOSX_SRC_DIRS) \ $(JDK_OUTPUTDIR)/gensrc \ $(JDK_OUTPUTDIR)/gensrc_swing/javax/swing/beaninfo \ $(CLOSED_SRC_DIRS),\ EXCLUDES:=$(EXCLUDES),\
*** 295,305 **** sun.nio.ch.IOStatus JDK_BASE_HEADER_JAVA_FILES:=$(patsubst %,$(JDK_TOPDIR)/src/share/classes/%.java,\ $(subst .,/,$(JDK_BASE_HEADER_CLASSES))) ! ifeq ($(PLATFORM),windows) JDK_BASE_HEADER_CLASSES_WINDOWS:=sun.nio.ch.PollArrayWrapper JDK_BASE_HEADER_CLASSES+=$(JDK_BASE_HEADER_CLASSES_WINDOWS) JDK_BASE_HEADER_JAVA_FILES+=$(patsubst %,$(JDK_TOPDIR)/src/windows/classes/%.java,\ $(subst .,/,$(JDK_BASE_HEADER_CLASSES_WINDOWS))) endif --- 298,308 ---- sun.nio.ch.IOStatus JDK_BASE_HEADER_JAVA_FILES:=$(patsubst %,$(JDK_TOPDIR)/src/share/classes/%.java,\ $(subst .,/,$(JDK_BASE_HEADER_CLASSES))) ! ifeq ($(OPENJDK_TARGET_OS),windows) JDK_BASE_HEADER_CLASSES_WINDOWS:=sun.nio.ch.PollArrayWrapper JDK_BASE_HEADER_CLASSES+=$(JDK_BASE_HEADER_CLASSES_WINDOWS) JDK_BASE_HEADER_JAVA_FILES+=$(patsubst %,$(JDK_TOPDIR)/src/windows/classes/%.java,\ $(subst .,/,$(JDK_BASE_HEADER_CLASSES_WINDOWS))) endif
*** 346,355 **** --- 349,405 ---- $(MKDIR) -p $(@D) $(TOUCH) $@ ########################################################################################## + ifeq ($(OPENJDK_TARGET_OS),macosx) + # + # JObjC.jar is compiled with BOOT_JAVAC which (may) not support the "-h" flag. + # so we first compile classes with BOOT_JAVAC and then with JDK_JAVAC :-( + # + $(eval $(call SetupJavaCompiler,GENERATE_15BYTECODE,\ + JAVAC:=$(JAVAC),\ + FLAGS:=-source 1.5 -target 1.5 -g -bootclasspath $(BOOT_RTJAR) -cp $(JDK_OUTPUTDIR)/../langtools/dist/lib/classes.jar $(DISABLE_WARNINGS),\ + SERVER_DIR:=$(JAVAC_SERVERS),\ + SERVER_JVM:=$(SERVER_JAVA),\ + MODE:=$(JAVAC_USE_MODE),\ + USE_DEPS:=$(JAVAC_USE_DEPS))) + + $(eval $(call SetupJavaCompilation,BUILD_JOBJC_JAR,\ + SETUP:=GENERATE_15BYTECODE,\ + SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \ + $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \ + $(JDK_OUTPUTDIR)/gensrc, \ + INCLUDES := com/apple/jobjc,\ + EXCLUDES := tests/java/com/apple/jobjc,\ + BIN:=$(JDK_OUTPUTDIR)/jobjc_classes,\ + JAR:=$(JDK_OUTPUTDIR)/lib/JObjC.jar, \ + JARINDEX := true)) + + $(BUILD_JOBJC_JAR) : $(BUILD_JDK) + + JARS += $(JDK_OUTPUTDIR)/lib/JObjC.jar + + $(eval $(call SetupJavaCompilation,BUILD_JOBJC_HEADERS_JAR,\ + SETUP:=GENERATE_JDKBYTECODE,\ + SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \ + $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \ + $(JDK_OUTPUTDIR)/gensrc, \ + INCLUDES := com/apple/jobjc,\ + EXCLUDES := tests/java/com/apple/jobjc,\ + BIN:=$(JDK_OUTPUTDIR)/jobjc_classes_headers,\ + JAR:=$(JDK_OUTPUTDIR)/jobjc_classes_headers/dummy.jar, \ + HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers)) + + $(BUILD_JOBJC_HEADERS_JAR) : $(BUILD_JDK) + + JARS += $(JDK_OUTPUTDIR)/jobjc_classes_headers/dummy.jar + + endif + + ########################################################################################## + # copy with -a to preserve timestamps so dependencies down the line aren't messed up all: $(BUILD_JDK) $(JARS) $(COPY_EXTRA) $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \ $(JDK_OUTPUTDIR)/classes/_the.jdk.base.headers .PHONY: all