1 # 2 # Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 # 5 # This code is free software; you can redistribute it and/or modify it 6 # under the terms of the GNU General Public License version 2 only, as 7 # published by the Free Software Foundation. Oracle designates this 8 # particular file as subject to the "Classpath" exception as provided 9 # by Oracle in the LICENSE file that accompanied this code. 10 # 11 # This code is distributed in the hope that it will be useful, but WITHOUT 12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 # version 2 for more details (a copy is included in the LICENSE file that 15 # accompanied this code). 16 # 17 # You should have received a copy of the GNU General Public License version 18 # 2 along with this work; if not, write to the Free Software Foundation, 19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 # 21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 # or visit www.oracle.com if you need additional information or have any 23 # questions. 24 # 25 26 include ProfileNames.gmk 27 28 ########################################################################################## 29 # Install the launcher name, release version string, full version 30 # string and the runtime name into the Version.java file. 31 # To be printed by java -version 32 33 $(JDK_OUTPUTDIR)/gensrc/sun/misc/Version.java \ 34 $(PROFILE_VERSION_JAVA_TARGETS): \ 35 $(JDK_TOPDIR)/src/share/classes/sun/misc/Version.java.template 36 $(MKDIR) -p $(@D) 37 $(RM) $@ $@.tmp 38 $(ECHO) Generating sun/misc/Version.java $(call profile_version_name, $@) 39 $(SED) -e 's/@@launcher_name@@/$(LAUNCHER_NAME)/g' \ 40 -e 's/@@java_version@@/$(RELEASE)/g' \ 41 -e 's/@@java_runtime_version@@/$(FULL_VERSION)/g' \ 42 -e 's/@@java_runtime_name@@/$(RUNTIME_NAME)/g' \ 43 -e 's/@@java_profile_name@@/$(call profile_version_name, $@)/g' \ 44 $< > $@.tmp 45 $(MV) $@.tmp $@ 46 47 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/misc/Version.java \ 48 $(PROFILE_VERSION_JAVA_TARGETS) 49 50 ########################################################################################## 51 # Version file for jconsole 52 53 $(JDK_OUTPUTDIR)/gensrc/sun/tools/jconsole/Version.java: \ 54 $(JDK_TOPDIR)/src/share/classes/sun/tools/jconsole/Version.java.template 55 $(MKDIR) -p $(@D) 56 $(RM) $@ $@.tmp 57 $(ECHO) $(LOG_INFO) Generating sun/tools/jconsole/Version.java 58 $(SED) -e 's/@@jconsole_version@@/$(FULL_VERSION)/g' $< > $@.tmp 59 $(MV) $@.tmp $@ 60 61 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/tools/jconsole/Version.java 62 63 ########################################################################################## 64 65 ifeq ($(OPENJDK_TARGET_OS_API), posix) 66 UPSUFFIX := $(OPENJDK_TARGET_OS) 67 ifeq ($(OPENJDK_TARGET_OS), macosx) 68 UPSUFFIX := bsd 69 endif 70 # UNIXProcess.java is different for solaris and linux. We need to copy 71 # the correct UNIXProcess.java over to $(JDK_OUTPUTDIR)/gensrc/java/lang/. 72 73 $(JDK_OUTPUTDIR)/gensrc/java/lang/UNIXProcess.java: \ 74 $(JDK_TOPDIR)/src/solaris/classes/java/lang/UNIXProcess.java.$(UPSUFFIX) 75 $(ECHO) $(LOG_INFO) Copying UNIXProcess.java.$(OPENJDK_TARGET_OS) to java/lang/UNIXProcess.java 76 $(call install-file) 77 $(CHMOD) u+rw $@ 78 79 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/java/lang/UNIXProcess.java 80 endif 81 82 ########################################################################################## 83 84 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java 85 86 GENSRC_SOR_SRC := $(JDK_TOPDIR)/make/src/native/genconstants 87 GENSRC_SOR_SRC_FILE := genSocketOptionRegistry.c 88 GENSRC_SOR_BIN := $(JDK_OUTPUTDIR)/btnative/genSocketOptionRegistry 89 90 SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOR_SRC)/$(GENSRC_SOR_SRC_FILE) | \ 91 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 92 93 $(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOR_EXE, \ 94 SRC := $(GENSRC_SOR_SRC), \ 95 INCLUDE_FILES := $(GENSRC_SOR_SRC_FILE), \ 96 LANG := C, \ 97 CC := $(BUILD_CC), \ 98 LDEXE := $(BUILD_LD), \ 99 OBJECT_DIR := $(GENSRC_SOR_BIN), \ 100 OUTPUT_DIR := $(GENSRC_SOR_BIN), \ 101 PROGRAM := genSocketOptionRegistry)) 102 103 ifneq ($(wildcard $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java.template), ) 104 HAS_SOCKET_OPTION_REGISTRY := true 105 endif 106 107 ifneq ($(HAS_SOCKET_OPTION_REGISTRY), true) 108 $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java: $(BUILD_GENSRC_SOR_EXE) 109 $(MKDIR) -p $(@D) 110 $(RM) $@ $@.tmp 111 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/make/scripts/addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@.tmp 112 $(BUILD_GENSRC_SOR_EXE) >> $@.tmp 113 $(MV) $@.tmp $@ 114 else 115 $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java: \ 116 $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java.template 117 $(call install-file) 118 endif 119 120 ########################################################################################## 121 122 ifneq ($(OPENJDK_TARGET_OS), windows) 123 124 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java 125 126 GENSRC_UC_SRC := $(JDK_TOPDIR)/make/src/native/genconstants 127 GENSRC_UC_SRC_FILE := genUnixConstants.c 128 GENSRC_UC_BIN := $(JDK_OUTPUTDIR)/btnative/genUnixConstants 129 130 UC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_UC_SRC)/$(GENSRC_UC_SRC_FILE) | \ 131 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 132 133 $(eval $(call SetupNativeCompilation,BUILD_GENSRC_UC_EXE, \ 134 SRC := $(GENSRC_UC_SRC), \ 135 INCLUDE_FILES := $(GENSRC_UC_SRC_FILE), \ 136 LANG := C, \ 137 CC := $(BUILD_CC), \ 138 LDEXE := $(BUILD_CC), \ 139 CFLAGS := $(filter -D%, $(CFLAGS_JDKEXE)), \ 140 OBJECT_DIR := $(GENSRC_UC_BIN), \ 141 OUTPUT_DIR := $(GENSRC_UC_BIN), \ 142 PROGRAM := genUnixConstants)) 143 144 ifneq ($(wildcard $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java.template), ) 145 HAS_UNIX_CONSTANTS := true 146 endif 147 148 ifneq ($(HAS_UNIX_CONSTANTS), true) 149 $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java: $(BUILD_GENSRC_UC_EXE) 150 $(MKDIR) -p $(@D) 151 $(RM) $@ $@.tmp 152 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/make/scripts/addNotices.sh "$(UC_COPYRIGHT_YEARS)" > $@.tmp 153 $(BUILD_GENSRC_UC_EXE) >> $@.tmp 154 $(MV) $@.tmp $@ 155 else 156 $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java: \ 157 $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java.template 158 $(call install-file) 159 endif 160 161 endif 162 163 ########################################################################################## 164 165 ifeq ($(OPENJDK_TARGET_OS), solaris) 166 167 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/SolarisConstants.java 168 169 GENSRC_SOL_SRC := $(JDK_TOPDIR)/make/src/native/genconstants 170 GENSRC_SOL_SRC_FILE := genSolarisConstants.c 171 GENSRC_SOL_BIN := $(JDK_OUTPUTDIR)/btnative/genSolarisConstants 172 173 SOL_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOL_SRC)/$(GENSRC_SOL_SRC_FILE) | \ 174 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 175 176 $(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOL_EXE, \ 177 SRC := $(GENSRC_SOL_SRC), \ 178 INCLUDE_FILES := $(GENSRC_SOL_SRC_FILE), \ 179 LANG := C, \ 180 CC := $(BUILD_CC), \ 181 LDEXE := $(BUILD_CC), \ 182 OBJECT_DIR := $(GENSRC_SOL_BIN), \ 183 OUTPUT_DIR := $(GENSRC_SOL_BIN), \ 184 PROGRAM := genSolarisConstants)) 185 186 $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/SolarisConstants.java: $(BUILD_GENSRC_SOL_EXE) 187 $(MKDIR) -p $(@D) 188 $(RM) $@ $@.tmp 189 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/make/scripts/addNotices.sh "$(SOL_COPYRIGHT_YEARS)" > $@.tmp 190 $(BUILD_GENSRC_SOL_EXE) >> $@.tmp 191 $(MV) $@.tmp $@ 192 193 194 endif 195 196 ########################################################################################## 197 198 ifndef OPENJDK 199 ifeq ($(OPENJDK_TARGET_OS), windows) 200 201 AB_GENSRC_DIR := $(JDK_OUTPUTDIR)/gensrc_ab 202 AB_SRC_DIR := $(JDK_TOPDIR)/src/closed/windows/classes/com/sun/java/accessibility 203 204 ifeq ($(OPENJDK_TARGET_CPU_BITS), 32) 205 $(AB_GENSRC_DIR)/32bit/com/sun/java/accessibility/AccessBridgeLoader.java: \ 206 $(AB_SRC_DIR)/32bit/AccessBridgeLoader.java 207 $(install-file) 208 209 $(AB_GENSRC_DIR)/32bit/com/sun/java/accessibility/AccessBridge.java: \ 210 $(AB_SRC_DIR)/AccessBridge.java 211 $(install-file) 212 213 $(AB_GENSRC_DIR)/legacy/com/sun/java/accessibility/AccessBridgeLoader.java: \ 214 $(AB_SRC_DIR)/legacy/AccessBridgeLoader.java 215 $(install-file) 216 217 $(AB_GENSRC_DIR)/legacy/com/sun/java/accessibility/AccessBridge.java: \ 218 $(AB_SRC_DIR)/AccessBridge.java 219 $(install-file) 220 221 GENSRC_MISC += $(AB_GENSRC_DIR)/32bit/com/sun/java/accessibility/AccessBridgeLoader.java \ 222 $(AB_GENSRC_DIR)/legacy/com/sun/java/accessibility/AccessBridgeLoader.java \ 223 $(AB_GENSRC_DIR)/32bit/com/sun/java/accessibility/AccessBridge.java \ 224 $(AB_GENSRC_DIR)/legacy/com/sun/java/accessibility/AccessBridge.java 225 226 else 227 $(AB_GENSRC_DIR)/64bit/com/sun/java/accessibility/AccessBridgeLoader.java: \ 228 $(AB_SRC_DIR)/64bit/AccessBridgeLoader.java 229 $(install-file) 230 231 $(AB_GENSRC_DIR)/64bit/com/sun/java/accessibility/AccessBridge.java: \ 232 $(AB_SRC_DIR)/AccessBridge.java 233 $(install-file) 234 235 GENSRC_MISC += $(AB_GENSRC_DIR)/64bit/com/sun/java/accessibility/AccessBridgeLoader.java \ 236 $(AB_GENSRC_DIR)/64bit/com/sun/java/accessibility/AccessBridge.java 237 238 endif 239 endif 240 endif 241 242 ##########################################################################################