34 |
34 |
35 # Build tools |
35 # Build tools |
36 include Tools.gmk |
36 include Tools.gmk |
37 |
37 |
38 BUILD_LAUNCHERS= |
38 BUILD_LAUNCHERS= |
|
39 |
|
40 # When building a legacy overlay image (on solaris 64 bit), the launchers |
|
41 # need to be built with a different rpath and a different output dir. |
|
42 ifeq ($(OVERLAY_IMAGES),true) |
|
43 ORIGIN_ROOT:=/../.. |
|
44 OUTPUT_SUBDIR:=$(OPENJDK_TARGET_CPU_ISADIR) |
|
45 else |
|
46 ORIGIN_ROOT:=/.. |
|
47 endif |
|
48 |
|
49 ifeq ($(OPENJDK_TARGET_OS), macosx) |
|
50 ORIGIN_ARG:=$(call SET_EXECUTABLE_ORIGIN) |
|
51 else |
|
52 ORIGIN_ARG:=$(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli) \ |
|
53 $(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli) |
|
54 endif |
|
55 |
|
56 # |
|
57 # Applications expect to be able to link against libjawt without invoking |
|
58 # System.loadLibrary("jawt") first. This was the behaviour described in the |
|
59 # devloper documentation of JAWT and what worked with OpenJDK6. |
|
60 # |
|
61 ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris),) |
|
62 ORIGIN_ARG+=$(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/lib$(OPENJDK_TARGET_CPU_LIBDIR)) \ |
|
63 $(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)) |
|
64 endif |
39 |
65 |
40 define SetupLauncher |
66 define SetupLauncher |
41 # TODO: Fix mapfile on solaris. Won't work with ld as linker. |
67 # TODO: Fix mapfile on solaris. Won't work with ld as linker. |
42 # Parameter 1 is the name of the launcher (java,javac,jar...) |
68 # Parameter 1 is the name of the launcher (java,javac,jar...) |
43 # Parameter 2 is extra CFLAGS |
69 # Parameter 2 is extra CFLAGS |
44 # Parameter 3 is extra LDFLAGS |
70 # Parameter 3 is extra LDFLAGS |
45 # Parameter 4 is extra LDFLAGS_SUFFIX_posix |
71 # Parameter 4 is extra LDFLAGS_SUFFIX_posix |
46 # Parameter 5 is extra LDFLAGS_SUFFIX_winapi |
72 # Parameter 5 is extra LDFLAGS_SUFFIX_windows |
47 # Parameter 6 is optional Windows JLI library (full path) |
73 # Parameter 6 is optional Windows JLI library (full path) |
48 # Parameter 7 is optional Windows resource (RC) flags |
74 # Parameter 7 is optional Windows resource (RC) flags |
49 # Parameter 8 is optional Windows version resource file (.rc) |
75 # Parameter 8 is optional Windows version resource file (.rc) |
50 # Parameter 9 is different output dir |
76 # Parameter 9 is different output dir |
51 # Parameter 10 is FULL DEBUG SYMBOLS (set value to turn OFF, since most(all) seems to have it) |
77 # Parameter 10 if set, link statically with c runtime on windows. |
|
78 # Parameter 11 if set, override plist file on macosx. |
52 |
79 |
53 $1_WINDOWS_JLI_LIB:=$(JDK_OUTPUTDIR)/objs/libjli/jli.lib |
80 $1_WINDOWS_JLI_LIB:=$(JDK_OUTPUTDIR)/objs/libjli/jli.lib |
54 ifneq ($6,) |
81 ifneq ($6,) |
55 $1_WINDOWS_JLI_LIB:=$6 |
82 $1_WINDOWS_JLI_LIB:=$6 |
56 endif |
83 endif |
58 ifneq ($8,) |
85 ifneq ($8,) |
59 $1_VERSION_INFO_RESOURCE:=$8 |
86 $1_VERSION_INFO_RESOURCE:=$8 |
60 endif |
87 endif |
61 |
88 |
62 $1_LDFLAGS := $3 |
89 $1_LDFLAGS := $3 |
|
90 $1_LDFLAGS_SUFFIX := |
63 ifeq ($(OPENJDK_TARGET_OS), macosx) |
91 ifeq ($(OPENJDK_TARGET_OS), macosx) |
64 $1_LDFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
92 $1_PLIST_FILE:=Info-cmdline.plist |
65 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks |
93 ifneq ($(11),) |
66 endif |
94 $1_PLIST_FILE:=$(11) |
67 |
95 endif |
68 $1_LDFLAGS_SUFFIX := |
96 |
|
97 $1_LDFLAGS += -Wl,-all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \ |
|
98 -framework Cocoa -framework Security -framework ApplicationServices \ |
|
99 -sectcreate __TEXT __info_plist $(JDK_TOPDIR)/src/macosx/lib/$$($1_PLIST_FILE) |
|
100 $1_LDFLAGS_SUFFIX += -pthread |
|
101 endif |
|
102 |
69 ifeq ($(USE_EXTERNAL_LIBZ), true) |
103 ifeq ($(USE_EXTERNAL_LIBZ), true) |
70 $1_LDFLAGS_SUFFIX += -lz |
104 $1_LDFLAGS_SUFFIX += -lz |
71 endif |
105 endif |
72 |
|
73 ifeq ($(OPENJDK_TARGET_OS), macosx) |
|
74 $1_LDFLAGS_SUFFIX += -Wl,-all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \ |
|
75 -framework Cocoa -framework Security -framework ApplicationServices \ |
|
76 -sectcreate __TEXT __info_plist $(JDK_TOPDIR)/src/macosx/lib/Info-cmdline.plist |
|
77 endif |
|
78 |
|
79 |
106 |
80 $1_OUTPUT_DIR_ARG:=$9 |
107 $1_OUTPUT_DIR_ARG:=$9 |
81 ifeq (,$$($1_OUTPUT_DIR_ARG)) |
108 ifeq (,$$($1_OUTPUT_DIR_ARG)) |
82 $1_OUTPUT_DIR_ARG:=$(JDK_OUTPUTDIR)/bin |
109 $1_OUTPUT_DIR_ARG:=$(JDK_OUTPUTDIR)/bin |
83 endif |
110 endif |
84 |
111 |
85 $1_DEBUG_SYMBOLS:=yes |
|
86 ifneq (,$(10)) |
|
87 $1_DEBUG_SYMBOLS:= |
|
88 endif |
|
89 |
|
90 $1_OPTIMIZATION:= LOW |
|
91 |
|
92 # TODO: maybe it's better to move this if-statement out of this function |
112 # TODO: maybe it's better to move this if-statement out of this function |
93 ifeq ($(1),java) |
113 ifeq ($1,java) |
94 $1_OPTIMIZATION:=HIGH |
114 $1_OPTIMIZATION_ARG:=HIGH |
|
115 $1_LDFLAGS_solaris:=-R$(OPENWIN_HOME)/lib$(OPENJDK_TARGET_CPU_ISADIR) |
|
116 else |
|
117 $1_OPTIMIZATION_ARG:=LOW |
|
118 endif |
|
119 |
|
120 $1_CFLAGS:=$(CFLAGS_JDKEXE) |
|
121 ifeq ($(10),true) |
|
122 $1_CFLAGS:=$(filter-out -MD,$(CFLAGS_JDKEXE)) |
95 endif |
123 endif |
96 |
124 |
97 $(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\ |
125 $(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\ |
98 SRC:=$(JDK_TOPDIR)/src/share/bin,\ |
126 SRC:=$(JDK_TOPDIR)/src/share/bin,\ |
99 INCLUDE_FILES:=main.c,\ |
127 INCLUDE_FILES:=main.c,\ |
100 LANG:=C,\ |
128 LANG:=C,\ |
101 OPTIMIZATION :=$$($1_OPTIMIZATION), \ |
129 OPTIMIZATION:=$$($1_OPTIMIZATION_ARG), \ |
102 CFLAGS:=$(CFLAGS_JDKEXE) \ |
130 CFLAGS:=$$($1_CFLAGS) \ |
103 -I$(JDK_TOPDIR)/src/share/bin \ |
131 -I$(JDK_TOPDIR)/src/share/bin \ |
104 -I$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin \ |
132 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/bin \ |
105 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS)/bin \ |
133 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS)/bin \ |
106 -DFULL_VERSION='"$(FULL_VERSION)"' \ |
134 -DFULL_VERSION='"$(FULL_VERSION)"' \ |
107 -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \ |
135 -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \ |
108 -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \ |
136 -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \ |
109 -DLIBARCHNAME='"$(ARCH)"' \ |
137 -DLIBARCHNAME='"$(OPENJDK_TARGET_CPU_LEGACY)"' \ |
110 -DLAUNCHER_NAME='"java"' \ |
138 -DLAUNCHER_NAME='"$(LAUNCHER_NAME)"' \ |
111 -DPROGNAME='"$1"' $(DPACKAGEPATH) \ |
139 -DPROGNAME='"$1"' $(DPACKAGEPATH) \ |
112 $2,\ |
140 $2,\ |
113 CFLAGS_linux:=-fPIC,\ |
141 CFLAGS_linux:=-fPIC,\ |
114 CFLAGS_solaris:=-KPIC -DHAVE_GETHRTIME,\ |
142 CFLAGS_solaris:=-KPIC -DHAVE_GETHRTIME,\ |
115 LDFLAGS:=$(LDFLAGS_JDKEXE) \ |
143 LDFLAGS:=$(LDFLAGS_JDKEXE) \ |
116 $(call SET_SHARED_LIBRARY_ORIGIN,../lib/$(LIBARCH)/jli) \ |
144 $(ORIGIN_ARG) \ |
117 $(call SET_SHARED_LIBRARY_ORIGIN,../jre/lib/$(LIBARCH)/jli) \ |
|
118 $$($1_LDFLAGS),\ |
145 $$($1_LDFLAGS),\ |
119 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(ARCH), \ |
146 LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_NAME,$1),\ |
|
147 LDFLAGS_linux:=-lpthread \ |
|
148 $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)$(SHARED_LIBRARY_SUFFIX)),\ |
|
149 LDFLAGS_solaris:=$$($1_LDFLAGS_solaris) \ |
|
150 $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)$(SHARED_LIBRARY_SUFFIX)),\ |
|
151 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU), \ |
120 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKEXE_SUFFIX) $$($1_LDFLAGS_SUFFIX),\ |
152 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKEXE_SUFFIX) $$($1_LDFLAGS_SUFFIX),\ |
121 LDFLAGS_SUFFIX_posix:=$4 -lc,\ |
153 LDFLAGS_SUFFIX_posix:=$4,\ |
122 LDFLAGS_SUFFIX_winapi:=$$($1_WINDOWS_JLI_LIB) \ |
154 LDFLAGS_SUFFIX_windows:=$$($1_WINDOWS_JLI_LIB) \ |
123 $(JDK_OUTPUTDIR)/objs/libjava/java.lib advapi32.lib $5,\ |
155 $(JDK_OUTPUTDIR)/objs/libjava/java.lib advapi32.lib $5,\ |
124 LDFLAGS_SUFFIX_solaris := -lthread $(LIBDL), \ |
156 LDFLAGS_SUFFIX_linux:=-L$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli -ljli $(LIBDL) -lc, \ |
125 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/$1_objs,\ |
157 LDFLAGS_SUFFIX_solaris:=-L$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli -ljli -lthread $(LIBDL) -lc, \ |
126 OUTPUT_DIR:=$$($1_OUTPUT_DIR_ARG),\ |
158 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/$1_objs$(OUTPUT_SUBDIR),\ |
|
159 OUTPUT_DIR:=$$($1_OUTPUT_DIR_ARG)$(OUTPUT_SUBDIR),\ |
127 PROGRAM:=$1,\ |
160 PROGRAM:=$1,\ |
128 DEBUG_SYMBOLS:=$$($1_DEBUG_SYMBOLS),\ |
161 DEBUG_SYMBOLS:=true,\ |
129 VERSIONINFO_RESOURCE:=$$($1_VERSION_INFO_RESOURCE),\ |
162 VERSIONINFO_RESOURCE:=$$($1_VERSION_INFO_RESOURCE),\ |
130 RC_FLAGS:=$(RC_FLAGS)\ |
163 RC_FLAGS:=$(RC_FLAGS)\ |
131 /D "JDK_FNAME=$1$(EXE_SUFFIX)" \ |
164 /D "JDK_FNAME=$1$(EXE_SUFFIX)" \ |
132 /D "JDK_INTERNAL_NAME=$1" \ |
165 /D "JDK_INTERNAL_NAME=$1" \ |
133 /D "JDK_FTYPE=0x1L" \ |
166 /D "JDK_FTYPE=0x1L" \ |
158 JAVA_RC_FLAGS += -i "$(JDK_TOPDIR)/src/windows/resource/icons" |
191 JAVA_RC_FLAGS += -i "$(JDK_TOPDIR)/src/windows/resource/icons" |
159 else |
192 else |
160 JAVA_RC_FLAGS += -i "$(JDK_TOPDIR)/src/closed/windows/native/sun/windows" |
193 JAVA_RC_FLAGS += -i "$(JDK_TOPDIR)/src/closed/windows/native/sun/windows" |
161 endif |
194 endif |
162 |
195 |
|
196 # On windows, the debuginfo files get the same name as for java.dll. Build |
|
197 # into another dir and copy selectively so debuginfo for java.dll isn't |
|
198 # overwritten. |
163 $(eval $(call SetupLauncher,java,\ |
199 $(eval $(call SetupLauncher,java,\ |
164 -DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib,\ |
200 -DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib,\ |
165 $(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\ |
201 $(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\ |
166 $(JDK_TOPDIR)/src/windows/resource/java.rc)) |
202 $(JDK_TOPDIR)/src/windows/resource/java.rc,$(JDK_OUTPUTDIR)/objs/java_objs,true)) |
|
203 |
|
204 $(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/java$(EXE_SUFFIX): $(BUILD_LAUNCHER_java) |
|
205 $(MKDIR) -p $(@D) |
|
206 $(RM) $@ |
|
207 $(CP) $(JDK_OUTPUTDIR)/objs/java_objs$(OUTPUT_SUBDIR)/java$(EXE_SUFFIX) $@ |
|
208 |
|
209 BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/java$(EXE_SUFFIX) |
167 |
210 |
168 ifeq ($(OPENJDK_TARGET_OS),windows) |
211 ifeq ($(OPENJDK_TARGET_OS),windows) |
169 $(eval $(call SetupLauncher,javaw,\ |
212 $(eval $(call SetupLauncher,javaw,\ |
170 -DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib,\ |
213 -DJAVAW -DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib,\ |
171 $(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\ |
214 $(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\ |
172 $(JDK_TOPDIR)/src/windows/resource/java.rc)) |
215 $(JDK_TOPDIR)/src/windows/resource/java.rc,,true)) |
173 endif |
216 endif |
174 |
217 |
175 ifeq ($(OPENJDK_TARGET_OS),solaris) |
|
176 THREAD_LIB:=-lthread |
|
177 endif |
|
178 ifeq ($(OPENJDK_TARGET_OS),linux) |
|
179 THREAD_LIB:=-lpthread |
|
180 endif |
|
181 |
218 |
182 ifndef BUILD_HEADLESS_ONLY |
219 ifndef BUILD_HEADLESS_ONLY |
183 $(eval $(call SetupLauncher,appletviewer,\ |
220 $(eval $(call SetupLauncher,appletviewer,\ |
184 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.applet.Main"$(COMMA) }',,\ |
221 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.applet.Main"$(COMMA) }',,\ |
185 $(THREAD_LIB) $(XLIBS) -ldl)) |
222 $(XLIBS))) |
186 endif |
223 endif |
187 |
224 |
188 $(eval $(call SetupLauncher,extcheck,\ |
225 $(eval $(call SetupLauncher,extcheck,\ |
189 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.extcheck.Main"$(COMMA) }')) |
226 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.extcheck.Main"$(COMMA) }')) |
190 |
227 |
234 $(eval $(call SetupLauncher,jinfo,\ |
271 $(eval $(call SetupLauncher,jinfo,\ |
235 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \ |
272 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \ |
236 "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \ |
273 "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \ |
237 "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \ |
274 "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \ |
238 "sun.tools.jinfo.JInfo"$(COMMA) }' \ |
275 "sun.tools.jinfo.JInfo"$(COMMA) }' \ |
239 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }')) |
276 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }' \ |
|
277 ,,,,,,,,,Info-privileged.plist)) |
240 |
278 |
241 $(eval $(call SetupLauncher,jmap,\ |
279 $(eval $(call SetupLauncher,jmap,\ |
242 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \ |
280 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \ |
243 "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \ |
281 "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \ |
244 "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \ |
282 "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \ |
245 "sun.tools.jmap.JMap"$(COMMA) }' \ |
283 "sun.tools.jmap.JMap"$(COMMA) }' \ |
246 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }')) |
284 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }' \ |
|
285 ,,,,,,,,,Info-privileged.plist)) |
247 |
286 |
248 $(eval $(call SetupLauncher,jps,\ |
287 $(eval $(call SetupLauncher,jps,\ |
249 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jps.Jps"$(COMMA) }')) |
288 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jps.Jps"$(COMMA) }')) |
250 |
289 |
251 $(eval $(call SetupLauncher,jrunscript,\ |
290 $(eval $(call SetupLauncher,jrunscript,\ |
252 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.script.shell.Main"$(COMMA) }')) |
291 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.script.shell.Main"$(COMMA) }')) |
253 |
292 |
254 $(eval $(call SetupLauncher,jsadebugd,\ |
293 $(eval $(call SetupLauncher,jsadebugd,\ |
255 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.jvm.hotspot.jdi.SADebugServer"$(COMMA) }' \ |
294 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.jvm.hotspot.jdi.SADebugServer"$(COMMA) }' \ |
256 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }')) |
295 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }' \ |
|
296 ,,,,,,,,,Info-privileged.plist)) |
257 |
297 |
258 $(eval $(call SetupLauncher,jstack,\ |
298 $(eval $(call SetupLauncher,jstack,\ |
259 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \ |
299 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \ |
260 "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \ |
300 "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \ |
261 "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \ |
301 "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \ |
262 "sun.tools.jstack.JStack"$(COMMA) }' \ |
302 "sun.tools.jstack.JStack"$(COMMA) }' \ |
263 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }')) |
303 -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }' \ |
|
304 ,,,,,,,,,Info-privileged.plist)) |
264 |
305 |
265 $(eval $(call SetupLauncher,jstat,\ |
306 $(eval $(call SetupLauncher,jstat,\ |
266 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jstat.Jstat"$(COMMA) }')) |
307 -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jstat.Jstat"$(COMMA) }')) |
267 |
308 |
268 $(eval $(call SetupLauncher,jstatd,\ |
309 $(eval $(call SetupLauncher,jstatd,\ |
359 $(JDK_OUTPUTDIR)/objs/libzip/inffast$(OBJ_SUFFIX) |
401 $(JDK_OUTPUTDIR)/objs/libzip/inffast$(OBJ_SUFFIX) |
360 |
402 |
361 endif |
403 endif |
362 |
404 |
363 ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) |
405 ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) |
364 UNPACKEXE_CFLAGS += -xregs=no%appl |
406 UNPACKEXE_CFLAGS += -xregs=no%appl |
|
407 endif |
|
408 |
|
409 UNPACKEXE_LANG:=C |
|
410 ifeq ($(OPENJDK_TARGET_OS),solaris) |
|
411 UNPACKEXE_LANG:=C++ |
365 endif |
412 endif |
366 |
413 |
367 $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\ |
414 $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\ |
368 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\ |
415 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\ |
369 EXCLUDE_FILES:=jni.cpp,\ |
416 EXCLUDE_FILES:=jni.cpp,\ |
370 LANG:=C,\ |
417 LANG:=$(UNPACKEXE_LANG),\ |
371 OPTIMIZATION := LOW, \ |
418 OPTIMIZATION := LOW, \ |
372 CFLAGS:=$(UNPACKEXE_CFLAGS) $(CXXFLAGS_JDKEXE)\ |
419 CFLAGS:=$(UNPACKEXE_CFLAGS) $(CXXFLAGS_JDKEXE)\ |
373 -DFULL, \ |
420 -DFULL, \ |
374 CFLAGS_release:=-DPRODUCT,\ |
421 CFLAGS_release:=-DPRODUCT,\ |
375 CFLAGS_linux:=-fPIC,\ |
422 CFLAGS_linux:=-fPIC,\ |
376 CFLAGS_solaris := -KPIC, \ |
423 CFLAGS_solaris := -KPIC, \ |
377 CFLAGS_macosx := -fPIC, \ |
424 CFLAGS_macosx := -fPIC, \ |
378 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200, \ |
425 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200, \ |
379 LDFLAGS:=$(LDFLAGS_JDKEXE) \ |
426 LDFLAGS:=$(LDFLAGS_JDKEXE) $(LDFLAGS_CXX_JDK) \ |
380 $(call SET_SHARED_LIBRARY_ORIGIN), \ |
427 $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)) \ |
381 LDFLAGS_SUFFIX:=$(UNPACKEXE_ZIPOBJS) $(LIBCXX),\ |
428 $(call SET_SHARED_LIBRARY_ORIGIN) \ |
|
429 $(UNPACKEXE_ZIPOBJS),\ |
|
430 LDFLAGS_linux:=-lc,\ |
|
431 LDFLAGS_SUFFIX:=$(LIBCXX),\ |
382 LDFLAGS_SUFFIX_solaris:=-lc,\ |
432 LDFLAGS_SUFFIX_solaris:=-lc,\ |
383 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe,\ |
433 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe$(OUTPUT_SUBDIR),\ |
384 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/bin,\ |
434 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR),\ |
385 PROGRAM:=unpack200,\ |
435 PROGRAM:=unpack200,\ |
386 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
436 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
387 RC_FLAGS:=$(RC_FLAGS)\ |
437 RC_FLAGS:=$(RC_FLAGS)\ |
388 /D "JDK_FNAME=unpack200.exe" \ |
438 /D "JDK_FNAME=unpack200.exe" \ |
389 /D "JDK_INTERNAL_NAME=unpack200" \ |
439 /D "JDK_INTERNAL_NAME=unpack200" \ |
482 # this time anyway. Since jdk6, it has been built from the wrong source and resulted |
535 # this time anyway. Since jdk6, it has been built from the wrong source and resulted |
483 # in a copy of the standard java launcher named "java-rmi.exe" ending up in the final |
536 # in a copy of the standard java launcher named "java-rmi.exe" ending up in the final |
484 # images bin dir. This weird behavior is mimicked here in the converted makefiles for |
537 # images bin dir. This weird behavior is mimicked here in the converted makefiles for |
485 # now. Should probably just be deleted. |
538 # now. Should probably just be deleted. |
486 # http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6512052 |
539 # http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6512052 |
487 ifeq ($(OPENJDK_TARGET_OS_API),winapi) |
540 ifeq ($(OPENJDK_TARGET_OS),windows) |
488 $(eval $(call SetupLauncher,java-rmi,\ |
541 $(eval $(call SetupLauncher,java-rmi,\ |
489 -DEXPAND_CLASSPATH_WILDCARDS,\ |
542 -DEXPAND_CLASSPATH_WILDCARDS,\ |
490 $(call SET_SHARED_LIBRARY_MAPFILE,$(JDK_TOPDIR)/makefiles/java/main/java/mapfile-$(ARCH)),\ |
543 $(call SET_SHARED_LIBRARY_MAPFILE,$(JDK_TOPDIR)/makefiles/java/main/java/mapfile-$(OPENJDK_TARGET_CPU)))) |
491 ,,,,,$(JDK_OUTPUTDIR)/objs)) |
|
492 |
|
493 $(JAVA_RMI_CGI): $(BUILD_LAUNCHER_java-rmi) |
|
494 $(MKDIR) -p $(@D) |
|
495 $(CP) $< $@ |
|
496 |
|
497 BUILD_LAUNCHERS += $(JAVA_RMI_CGI) |
|
498 else |
544 else |
499 $(JAVA_RMI_CGI): $(JDK_TOPDIR)/src/solaris/bin/java-rmi.cgi.sh |
545 $(JAVA_RMI_CGI): $(JDK_TOPDIR)/src/solaris/bin/java-rmi.cgi.sh |
500 $(MKDIR) -p $(@D) |
546 $(MKDIR) -p $(@D) |
501 $(CP) $< $@ |
547 $(CP) $< $@ |
502 $(CHMOD) a+x $@ |
548 $(CHMOD) a+x $@ |