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 ########################################################################################## 27 # Install the launcher name, release version string, full version 28 # string and the runtime name into the Version.java file. 29 # To be printed by java -version 30 31 $(JDK_OUTPUTDIR)/gensrc_misc/sun/misc/Version.java: \ 32 $(JDK_TOPDIR)/src/share/classes/sun/misc/Version.java.template 33 $(MKDIR) -p $(@D) 34 $(RM) $@ $@.tmp 35 $(ECHO) Generating sun/misc/Version.java 36 $(SED) -e 's/@@launcher_name@@/$(LAUNCHER_NAME)/g' \ 37 -e 's/@@java_version@@/$(RELEASE)/g' \ 38 -e 's/@@java_runtime_version@@/$(FULL_VERSION)/g' \ 39 -e 's/@@java_runtime_name@@/$(RUNTIME_NAME)/g' \ 40 $< > $@.tmp 41 $(MV) $@.tmp $@ 42 43 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/misc/Version.java 44 45 ########################################################################################## 46 # Version file for jconsole 47 48 $(JDK_OUTPUTDIR)/gensrc_misc/sun/tools/jconsole/Version.java: \ 49 $(JDK_TOPDIR)/src/share/classes/sun/tools/jconsole/Version.java.template 50 $(MKDIR) -p $(@D) 51 $(RM) $@ $@.tmp 52 $(ECHO) Generating sun/tools/jconsole/Version.java 53 $(SED) -e 's/@@jconsole_version@@/$(FULL_VERSION)/g' $< > $@.tmp 54 $(MV) $@.tmp $@ 55 56 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/tools/jconsole/Version.java 57 58 ########################################################################################## 59 60 ifeq ($(OPENJDK_TARGET_OS_API),posix) 61 UPSUFFIX:=$(OPENJDK_TARGET_OS) 62 ifeq ($(OPENJDK_TARGET_OS),macosx) 63 UPSUFFIX:=bsd 64 endif 65 # UNIXProcess.java is different for solaris and linux. We need to copy 66 # the correct UNIXProcess.java over to $(JDK_OUTPUTDIR)/gensrc/java/lang/. 67 68 $(JDK_OUTPUTDIR)/gensrc_misc/java/lang/UNIXProcess.java : \ 69 $(JDK_TOPDIR)/src/solaris/classes/java/lang/UNIXProcess.java.$(UPSUFFIX) 70 $(MKDIR) -p $(@D) 71 $(ECHO) Copying UNIXProcess.java.$(OPENJDK_TARGET_OS) to java/lang/UNIXProcess.java 72 $(CP) $< $@ 73 $(CHMOD) u+rw $@ 74 75 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/java/lang/UNIXProcess.java 76 endif 77 78 ########################################################################################## 79 80 ifndef OPENJDK 81 ifneq ($(OPENJDK_TARGET_OS), windows) 82 ifneq ($(OPENJDK_TARGET_OS), macosx) 83 # These file(s) are needed for building fake .so libs on !windows for jdbcodbc 84 85 $(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc/dummyodbc1.c : 86 $(MKDIR) -p $(@D) 87 $(RM) $@ 88 $(ECHO) Creating $@ 89 $(PRINTF) "void dummyOdbc(void){}\n" > $@ 90 $(ECHO) Created $@ 91 92 $(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc/dummyodbc2.c : 93 $(MKDIR) -p $(@D) 94 $(RM) $@ 95 $(ECHO) Creating $@ 96 $(PRINTF) "void dummyOdbc(void){}\n" > $@ 97 $(ECHO) Created $@ 98 99 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc/dummyodbc1.c $(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc/dummyodbc2.c 100 endif 101 endif 102 endif 103 104 ########################################################################################## 105 106 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java 107 108 GENSRC_SOR_SRC := $(JDK_TOPDIR)/src/share/native/sun/nio/ch 109 GENSRC_SOR_SRC_FILE := genSocketOptionRegistry.c 110 GENSRC_SOR_BIN := $(JDK_OUTPUTDIR)/gensrc_misc/genSocketOptionRegistry 111 112 SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOR_SRC)/$(GENSRC_SOR_SRC_FILE) | \ 113 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 114 115 $(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOR_EXE,\ 116 SRC:=$(GENSRC_SOR_SRC),\ 117 INCLUDE_FILES:=$(GENSRC_SOR_SRC_FILE),\ 118 LANG:=C,\ 119 CC:=$(BUILD_CC),\ 120 LDEXE:=$(BUILD_LD),\ 121 OBJECT_DIR:=$(GENSRC_SOR_BIN),\ 122 OUTPUT_DIR:=$(GENSRC_SOR_BIN),\ 123 PROGRAM:=genSocketOptionRegistry)) 124 125 ifneq ($(wildcard $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java),) 126 HAS_SOCKET_OPTION_REGISTRY:=true 127 endif 128 129 ifneq ($(HAS_SOCKET_OTION_REGISTRY),true) 130 $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java : $(BUILD_GENSRC_SOR_EXE) 131 $(MKDIR) -p $(@D) 132 $(RM) $@ $@.tmp 133 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@.tmp 134 $(BUILD_GENSRC_SOR_EXE) >> $@.tmp 135 $(MV) $@.tmp $@ 136 else 137 $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java : $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java 138 $(MKDIR) -p $(@D) 139 $(RM) $@ 140 $(CP) $< $@ 141 endif 142 143 ########################################################################################## 144 145 ifneq ($(OPENJDK_TARGET_OS),windows) 146 147 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java 148 149 GENSRC_UC_SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/fs 150 GENSRC_UC_SRC_FILE := genUnixConstants.c 151 GENSRC_UC_BIN := $(JDK_OUTPUTDIR)/gensrc_misc/genUnixConstants 152 153 UC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_UC_SRC)/$(GENSRC_UC_SRC_FILE) | \ 154 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 155 156 $(eval $(call SetupNativeCompilation,BUILD_GENSRC_UC_EXE,\ 157 SRC:=$(GENSRC_UC_SRC),\ 158 INCLUDE_FILES:=$(GENSRC_UC_SRC_FILE),\ 159 LANG:=C,\ 160 CC:=$(BUILD_CC),\ 161 LDEXE:=$(BUILD_CC),\ 162 OBJECT_DIR:=$(GENSRC_UC_BIN),\ 163 OUTPUT_DIR:=$(GENSRC_UC_BIN),\ 164 PROGRAM:=genUnixConstants)) 165 166 ifneq ($(wildcard $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java),) 167 HAS_UNIX_CONSTANTS:=true 168 endif 169 170 ifneq ($(HAS_UNIX_CONSTANTS),true) 171 $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java : $(BUILD_GENSRC_UC_EXE) 172 $(MKDIR) -p $(@D) 173 $(RM) $@ $@.tmp 174 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(UC_COPYRIGHT_YEARS)" > $@.tmp 175 $(BUILD_GENSRC_UC_EXE) >> $@.tmp 176 $(MV) $@.tmp $@ 177 else 178 $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java : $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java 179 $(MKDIR) -p $(@D) 180 $(RM) $@ 181 $(CP) $< $@ 182 endif 183 184 endif 185 186 ########################################################################################## 187 188 ifeq ($(OPENJDK_TARGET_OS),solaris) 189 190 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/SolarisConstants.java 191 192 GENSRC_SOL_SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/fs 193 GENSRC_SOL_SRC_FILE := genSolarisConstants.c 194 GENSRC_SOL_BIN := $(JDK_OUTPUTDIR)/gensrc_misc/genSolarisConstants 195 196 SOL_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOL_SRC)/$(GENSRC_SOL_SRC_FILE) | \ 197 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 198 199 $(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOL_EXE,\ 200 SRC:=$(GENSRC_SOL_SRC),\ 201 INCLUDE_FILES:=$(GENSRC_SOL_SRC_FILE),\ 202 LANG:=C,\ 203 CC:=$(BUILD_CC),\ 204 LDEXE:=$(BUILD_CC),\ 205 OBJECT_DIR:=$(GENSRC_SOL_BIN),\ 206 OUTPUT_DIR:=$(GENSRC_SOL_BIN),\ 207 PROGRAM:=genSolarisConstants)) 208 209 $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/SolarisConstants.java : $(BUILD_GENSRC_SOL_EXE) 210 $(MKDIR) -p $(@D) 211 $(RM) $@ $@.tmp 212 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(SOL_COPYRIGHT_YEARS)" > $@.tmp 213 $(BUILD_GENSRC_SOL_EXE) >> $@.tmp 214 $(MV) $@.tmp $@ 215 216 217 endif