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 INCLUDEDIR = $(JDK_OUTPUTDIR)/include
27
28 PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM)
29
30 ifeq ($(PLATFORM), windows)
31 PLATFORM_INCLUDE = $(INCLUDEDIR)/win32
32 else ifeq ($(PLATFORM), macosx)
33 PLATFORM_INCLUDE = $(INCLUDEDIR)/darwin
34 endif
35
36 #
37 # Copy exported header files to outputdir.
38 #
39 H_TARGET_FILES =$(INCLUDEDIR)/jdwpTransport.h \
40 $(INCLUDEDIR)/jni.h \
41 $(INCLUDEDIR)/jvmti.h \
42 $(INCLUDEDIR)/jvmticmlr.h \
43 $(INCLUDEDIR)/classfile_constants.h \
44 $(INCLUDEDIR)/jawt.h \
45 $(PLATFORM_INCLUDE)/jni_md.h \
46 $(PLATFORM_INCLUDE)/jawt_md.h
47
48 $(INCLUDEDIR)/%.h: $(JDK_TOPDIR)/src/share/javavm/export/%.h
49 $(MKDIR) -p $(@D)
50 $(RM) -f $@
51 $(CP) $< $@
52
53 $(PLATFORM_INCLUDE)/%.h: $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/javavm/export/%.h
54 $(MKDIR) -p $(@D)
55 $(RM) -f $@
56 $(CP) $< $@
57
58 COPY_FILES = $(H_TARGET_FILES)
59
60 ##########################################################################################
61
62 LIBDIR = $(JDK_OUTPUTDIR)/lib
63 SERVICETAG_LIBDIR = $(LIBDIR)/servicetag
64
65 $(SERVICETAG_LIBDIR)/jdk_header.png: $(JDK_TOPDIR)/src/share/classes/com/sun/servicetag/resources/jdk_header.png
66 $(MKDIR) -p $(@D)
67 $(RM) -f $@
68 $(CP) $< $@
69 $(CHMOD) 444 $@
70
71 COPY_FILES += $(SERVICETAG_LIBDIR)/jdk_header.png
72
73 ##########################################################################################
74
75 MGMT_LIBDIR = $(LIBDIR)/management
76 MGMT_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/management
77 MGMT_SRC_FILES = $(wildcard $(MGMT_LIB_SRC)/*)
78 MGMT_TARGET_FILES = $(subst $(MGMT_LIB_SRC),$(MGMT_LIBDIR),$(MGMT_SRC_FILES))
79
80 $(MGMT_LIBDIR)/management.properties: $(MGMT_LIB_SRC)/management.properties
81 $(MKDIR) -p $(@D)
82 $(RM) -f $@
83 $(CP) $< $@
84 $(CHMOD) 644 $@
85
86 $(MGMT_LIBDIR)/%: $(MGMT_LIB_SRC)/%
87 $(MKDIR) -p $(@D)
88 $(RM) -f $@
89 $(CP) $< $@
90 $(CHMOD) 444 $@
91
92 COPY_FILES += $(MGMT_TARGET_FILES)
93
94 ##########################################################################################
95
96 LOGGING_LIB_SRC = $(JDK_TOPDIR)/src/share/lib
97
98 $(LIBDIR)/logging.properties: $(LOGGING_LIB_SRC)/logging.properties
99 $(MKDIR) -p $(@D)
100 $(RM) -f $@
101 $(CP) $< $@
102
103 COPY_FILES += $(LIBDIR)/logging.properties
104
105 ##########################################################################################
106 #
107 # Copy property files from sun/print to LIBDIR
108 #
109 PSFONTPROPFILE_SRC_DIR = $(JDK_TOPDIR)/src/share/classes/sun/print
110 PSFONTPROPFILE_SRCS = $(wildcard $(PSFONTPROPFILE_SRC_DIR)/*.properties*)
111 PSFONTPROPFILE_TARGET_FILES = $(subst $(PSFONTPROPFILE_SRC_DIR),$(LIBDIR),$(PSFONTPROPFILE_SRCS))
112
113 $(LIBDIR)/%: $(PSFONTPROPFILE_SRC_DIR)/%
114 $(MKDIR) -p $(@D)
115 $(RM) -f $@
116 $(CP) $< $@
117
118 COPY_FILES += $(PSFONTPROPFILE_TARGET_FILES)
119
120 ##########################################################################################
121 #
122 # Copy flavormap.properties, cursor.properties and cursors gif files to LIBDIR
123 #
124 PLATFORM_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib
125
126 $(LIBDIR)/flavormap.properties: $(PLATFORM_LIB_SRC)/flavormap.properties
127 $(MKDIR) -p $(@D)
128 $(RM) -f $@
129 $(CP) $< $@
130
131 COPY_FILES += $(LIBDIR)/flavormap.properties
132
133 CURSORS_DEST_DIR = $(LIBDIR)/images/cursors
134 CURSORS_PLATFORM_LIB_SRC = $(PLATFORM_LIB_SRC)/images/cursors
135
136 $(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_PLATFORM_LIB_SRC)/cursors.properties
137 $(MKDIR) -p $(@D)
138 $(RM) -f $@
139 $(CP) $< $@
140
141 COPY_FILES += $(CURSORS_DEST_DIR)/cursors.properties
142
143 CURSORS_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/images/cursors
144 ifeq ($(PLATFORM), windows)
145 CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/win32_*.gif)
146 else # PLATFORM
147 CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/motif_*.gif)
148 endif # PLATFORM
149 CURSORS_TARGET_FILES = $(subst $(CURSORS_LIB_SRC),$(CURSORS_DEST_DIR),$(CURSORS_SRC_FILES))
150
151 $(CURSORS_DEST_DIR)/%: $(CURSORS_LIB_SRC)/%
152 $(MKDIR) -p $(@D)
153 $(RM) -f $@
154 $(CP) $< $@
155
156 COPY_FILES += $(CURSORS_TARGET_FILES)
157
158 ##########################################################################################
159
160 CONTENT_TYPES_SRC=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib
161
162 $(LIBDIR)/content-types.properties: $(CONTENT_TYPES_SRC)/content-types.properties
163 $(MKDIR) -p $(@D)
164 $(RM) -f $@
165 $(CP) $< $@
166
167 COPY_FILES += $(LIBDIR)/content-types.properties
168
169 ##########################################################################################
170
171 CALENDARS_SRC := $(JDK_TOPDIR)/src/share/lib
172
173 $(LIBDIR)/calendars.properties: $(CALENDARS_SRC)/calendars.properties
174 $(MKDIR) -p $(@D)
175 $(RM) -f $@
176 $(CP) $< $@
177
178 COPY_FILES += $(LIBDIR)/calendars.properties
179
180 ##########################################################################################
181
182 ifeq ($(PLATFORM),windows)
183
184 TZMAPPINGS_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib
185
186 $(LIBDIR)/tzmappings: $(TZMAPPINGS_SRC)/tzmappings
187 $(MKDIR) -p $(@D)
188 $(RM) -f $@
189 $(CP) $< $@
190
191 COPY_FILES += $(LIBDIR)/tzmappings
192
193 endif
194
195 ##########################################################################################
196
197 ICCPROFILE_DEST_DIR := $(LIBDIR)/cmm
198
199 ifdef OPENJDK
200 ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/share/lib/cmm/lcms
201 else
202 ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/cmm/kcms
203 endif
204
216 ##########################################################################################
217
218 #make sure freetype dll will be available at runtime as well as link time
219 #
220 #NB: Default freetype build system uses -h linker option and
221 # result .so contains hardcoded library name that is later
222 # used for adding dependencies to other objects
223 # (e.g. libfontmanager.so).
224 #
225 # It is not obvious how to extract that hardcoded name (libfreetype.so.6)
226 # without overcomplicating logic here.
227 # To workaround this we hardcode .6 suffix for now.
228 #
229 # Note that .so.6 library will not be found by System.loadLibrary()
230 # but fortunately we need to load FreeType library explicitly
231 # on windows only
232 #
233 #TODO: rework this to avoid hardcoding library name in the makefile
234 #
235 ifdef OPENJDK
236 ifeq ($(PLATFORM), windows)
237 FREETYPE_LIB = $(JDK_OUTPUTDIR)/bin/$(call SHARED_LIBRARY,freetype)
238 else
239 ifeq ($(USING_SYSTEM_FT_LIB), false)
240 FREETYPE_LIB = $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/$(call SHARED_LIBRARY,freetype).6
241 endif
242 endif
243
244 $(FREETYPE_LIB): $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype)
245 $(CP) $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $@
246 ifeq ($(BUILD_OS), windows)
247 $(CHMOD) +rx $@
248 endif
249
250 COPY_FILES += $(FREETYPE_LIB)
251 endif
252
253 ##########################################################################################
254
255 # Copy msvcr100.dll on windows
256
257 ifeq ($(PLATFORM),windows)
258 MSVCRNN_TARGET := $(JDK_OUTPUTDIR)/bin/$(notdir $(MSVCRNN_DLL))
259 $(MSVCRNN_TARGET): $(MSVCRNN_DLL)
260 $(MKDIR) -p $(@D)
261 $(RM) -f $@
262 $(CP) $< $@
263
264 COPY_FILES += $(MSVCRNN_TARGET)
265 endif
266
267 ##########################################################################################
268
269 HPROF_SRC=$(JDK_TOPDIR)/src/share/demo/jvmti/hprof/jvm.hprof.txt
270
271 $(LIBDIR)/jvm.hprof.txt : $(HPROF_SRC)
272 $(MKDIR) -p $(@D)
273 $(RM) -f $@
274 $(CP) $< $@
275
276 COPY_FILES += $(LIBDIR)/jvm.hprof.txt
277
278 ##########################################################################################
279
280 #
281 # How to install jvm.cfg.
282 #
283 ifeq ($(JVM_VARIANT_ZERO), true)
284 JVMCFG_ARCH := zero
285 else
286 JVMCFG_ARCH := $(ARCH)
287 endif
288
289 ifeq ($(PLATFORM),macosx)
290 ifeq ($(JVMCFG_ARCH),amd64)
291 JVMCFG_ARCH := x86_64
292 endif
293 JVMCFG_SRC := $(JDK_TOPDIR)/src/macosx/bin/$(JVMCFG_ARCH)/jvm.cfg
294 JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib
295 else
296 JVMCFG_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin/$(JVMCFG_ARCH)/jvm.cfg
297 JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)
298 endif
299
300 JVMCFG := $(JVMCFG_DIR)/jvm.cfg
301
302
303 ifeq ($(ARCH_DATA_MODEL),32)
304 # On 32 bit machines, we can have client and/or server libjvms installed.
305 # Since the currently committed jvm.cfg expects clientANDserver, we need
306 # to patch the jvm.cfg when we have built only a client or only a server.
307 # This should also support -kernel, -zero and -zeroshark.
308 ifeq ($(JVM_VARIANTS),$(COMMA)client$(COMMA))
309 # Create a patched jvm.cfg to use -client by default and alias -server to -client.
310 $(JVMCFG):
311 $(MKDIR) -p $(@D)
312 $(RM) -f $(JVMCFG)
313 $(PRINTF) "-client KNOWN\n">$(JVMCFG)
314 $(PRINTF) "-server IGNORE\n">>$(JVMCFG)
315 $(PRINTF) "-hotspot ALIASED_TO -client\n">>$(JVMCFG)
316 $(PRINTF) "-classic WARN\n">>$(JVMCFG)
336 $(MKDIR) -p $(@D)
337 $(RM) -f $@
338 $(CP) $< $@
339 endif
340 endif
341 else
342 # Use the default jvm.cfg for this 64 bit setup.
343 $(JVMCFG): $(JVMCFG_SRC)
344 $(MKDIR) -p $(@D)
345 $(RM) -f $@
346 $(CP) $< $@
347 endif
348
349 COPY_FILES += $(JVMCFG)
350
351 ##########################################################################################
352
353 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security
354 PROPS_DST := $(JDK_OUTPUTDIR)/lib/security/java.security
355
356 ifeq ($(PLATFORM), solaris)
357 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-solaris
358 endif
359
360 ifeq ($(PLATFORM), windows)
361 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-windows
362 endif
363
364 ifeq ($(PLATFORM), macosx)
365 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-macosx
366 endif
367
368 $(PROPS_DST): $(PROPS_SRC)
369 $(MKDIR) -p $(@D)
370 $(RM) -f $@
371 $(CP) $< $@
372
373 COPY_FILES += $(PROPS_DST)
374
375 ##########################################################################################
376
377 POLICY_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.policy
378 POLICY_DST := $(JDK_OUTPUTDIR)/lib/security/java.policy
379
380 $(POLICY_DST): $(POLICY_SRC)
381 $(MKDIR) -p $(@D)
382 $(RM) -f $@
383 $(CP) $< $@
384
436 LucidaBrightItalic.ttf \
437 LucidaBrightDemiItalic.ttf \
438 LucidaSansRegular.ttf \
439 LucidaSansDemiBold.ttf \
440
441 SHARED_FONTS_SRC := $(foreach F,$(SHARED_FONTS_FILES),$(SHARED_FONTS_SRC_DIR)/$(F))
442 SHARED_FONTS_DST := $(foreach F,$(SHARED_FONTS_FILES),$(SHARED_FONTS_DST_DIR)/$(F))
443
444 $(SHARED_FONTS_DST_DIR)/%.ttf : $(SHARED_FONTS_SRC_DIR)/%.ttf
445 $(MKDIR) -p $(@D)
446 $(RM) $@
447 $(CP) $< $@
448
449 $(SHARED_FONTS_DST_DIR)/fonts.dir : $(JDK_TOPDIR)/src/solaris/classes/sun/awt/motif/java.fonts.dir
450 $(MKDIR) -p $(@D)
451 $(RM) $@
452 $(CP) $< $@
453
454 COPY_FILES += $(SHARED_FONTS_DST) $(SHARED_FONTS_DST_DIR)/fonts.dir
455
456 ifeq ($(PLATFORM), linux)
457
458 # The oblique fonts are only needed/wanted on Linux.
459
460 OBL_FONTS_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/fonts/oblique
461 OBL_FONTS_DST_DIR := $(JDK_OUTPUTDIR)/lib/oblique-fonts
462 OBL_FONTS_FILES := LucidaTypewriterOblique.ttf LucidaTypewriterBoldOblique.ttf \
463 LucidaSansOblique.ttf LucidaSansDemiOblique.ttf
464
465 OBL_FONTS_SRC := $(foreach F,$(OBL_FONTS_FILES),$(OBL_FONTS_SRC_DIR)/$(F))
466 OBL_FONTS_DST := $(foreach F,$(OBL_FONTS_FILES),$(OBL_FONTS_DST_DIR)/$(F))
467
468 $(OBL_FONTS_DST_DIR)/%.ttf : $(OBL_FONTS_SRC_DIR)/%.ttf
469 $(MKDIR) -p $(@D)
470 $(RM) $@
471 $(CP) $< $@
472
473 $(OBL_FONTS_DST_DIR)/fonts.dir : $(JDK_TOPDIR)/src/solaris/classes/sun/awt/motif/java.oblique-fonts.dir
474 $(MKDIR) -p $(@D)
475 $(RM) $@
476 $(CP) $< $@
515 libjdgaSUNWm64.so \
516 libjdgaSUNWafb.so
517
518 _DGALIBS_sparcv9 = \
519 libxinerama.so \
520 libjdgaSUNWcg6.so \
521 libjdgaSUNWffb.so \
522 libjdgaSUNWm64.so \
523 libjdgaSUNWafb.so
524
525 _DGALIBS_i586 = # no i586 library yet
526
527 _DGALIBS_amd64 = # no amd64 library yet
528
529 DGALIBS = $(_DGALIBS_$(ARCH):%=$(JDK_OUTPUTDIR)/lib/$(LIBARCH)/%)
530
531 $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libxinerama.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(ARCH)/libxinerama.so
532 $(MKDIR) -p $(@D)
533 $(RM) $@
534 $(CP) $< $@
535
536 $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNW%.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(ARCH)/libjdgaSUNW%.so
537 $(MKDIR) -p $(@D)
538 $(RM) $@
539 $(CP) $< $@
540
541 $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWafb.so: $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWffb.so
542 $(MKDIR) -p $(@D)
543 $(RM) $@
544 $(LN) -s $< $@
545
546 COPY_FILES += $(DGALIBS)
547
548 endif
549
550 ##########################################################################################
551
552 ifeq ($(PLATFORM), solaris)
553
554 SUNPKCS11_CFG_SRC := $(JDK_TOPDIR)/src/share/lib/security/sunpkcs11-solaris.cfg
555 SUNPKCS11_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/sunpkcs11-solaris.cfg
556
557 $(SUNPKCS11_CFG_DST) : $(SUNPKCS11_CFG_SRC)
558 $(MKDIR) -p $(@D)
559 $(RM) $@
560 $(CP) $< $@
561
562 COPY_FILES += $(SUNPKCS11_CFG_DST)
563
564 endif
565
566 ##########################################################################################
567
568 ifndef OPENJDK
569 ifeq ($(PLATFORM), solaris)
570
571 UCRYPTO_CFG_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/ucrypto-solaris.cfg
572 UCRYPTO_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/ucrypto-solaris.cfg
573
574 $(UCRYPTO_CFG_DST) : $(UCRYPTO_CFG_SRC)
575 $(MKDIR) -p $(@D)
576 $(RM) $@
577 $(CP) $< $@
578
579 COPY_FILES += $(UCRYPTO_CFG_DST)
580
581 endif
582 endif
583
584 ##########################################################################################
585
586 $(JDK_OUTPUTDIR)/lib/sound.properties : $(JDK_TOPDIR)/src/share/lib/sound.properties
587 $(MKDIR) -p $(@D)
588 $(RM) $@
589 $(CP) $< $(@)
|
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 INCLUDEDIR = $(JDK_OUTPUTDIR)/include
27
28 OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/$(OPENJDK_TARGET_OS)
29
30 ifeq ($(OPENJDK_TARGET_OS), windows)
31 OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/win32
32 else ifeq ($(OPENJDK_TARGET_OS), macosx)
33 OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/darwin
34 endif
35
36 #
37 # Copy exported header files to outputdir.
38 #
39 H_TARGET_FILES =$(INCLUDEDIR)/jdwpTransport.h \
40 $(INCLUDEDIR)/jni.h \
41 $(INCLUDEDIR)/jvmti.h \
42 $(INCLUDEDIR)/jvmticmlr.h \
43 $(INCLUDEDIR)/classfile_constants.h \
44 $(INCLUDEDIR)/jawt.h \
45 $(OPENJDK_TARGET_OS_INCLUDE)/jni_md.h \
46 $(OPENJDK_TARGET_OS_INCLUDE)/jawt_md.h
47
48 $(INCLUDEDIR)/%.h: $(JDK_TOPDIR)/src/share/javavm/export/%.h
49 $(MKDIR) -p $(@D)
50 $(RM) -f $@
51 $(CP) $< $@
52
53 $(OPENJDK_TARGET_OS_INCLUDE)/%.h: $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/javavm/export/%.h
54 $(MKDIR) -p $(@D)
55 $(RM) -f $@
56 $(CP) $< $@
57
58 COPY_FILES = $(H_TARGET_FILES)
59
60 ##########################################################################################
61
62 LIBDIR = $(JDK_OUTPUTDIR)/lib
63 SERVICETAG_LIBDIR = $(LIBDIR)/servicetag
64
65 $(SERVICETAG_LIBDIR)/jdk_header.png: $(JDK_TOPDIR)/src/share/classes/com/sun/servicetag/resources/jdk_header.png
66 $(MKDIR) -p $(@D)
67 $(RM) -f $@
68 $(CP) $< $@
69 $(CHMOD) 444 $@
70
71 COPY_FILES += $(SERVICETAG_LIBDIR)/jdk_header.png
72
73 ##########################################################################################
74
75 MGMT_LIBDIR = $(LIBDIR)/management
76 MGMT_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/management
77 MGMT_SRC_FILES = $(wildcard $(MGMT_LIB_SRC)/*)
78 MGMT_TARGET_FILES = $(subst $(MGMT_LIB_SRC),$(MGMT_LIBDIR),$(MGMT_SRC_FILES))
79
80 $(MGMT_LIBDIR)/management.properties: $(MGMT_LIB_SRC)/management.properties
81 $(MKDIR) -p $(@D)
82 $(RM) -f $@
83 $(CP) $< $@
84 $(CHMOD) 644 $@
85
86 # this file has different permissions...don't know why...
87 $(MGMT_LIBDIR)/jmxremote.access: $(MGMT_LIB_SRC)/jmxremote.access
88 $(MKDIR) -p $(@D)
89 $(RM) -f $@
90 $(CP) $< $@
91 $(CHMOD) 644 $@
92
93 $(MGMT_LIBDIR)/%: $(MGMT_LIB_SRC)/%
94 $(MKDIR) -p $(@D)
95 $(RM) -f $@
96 $(CP) $< $@
97 $(CHMOD) 444 $@
98
99 COPY_FILES += $(MGMT_TARGET_FILES)
100
101 ##########################################################################################
102
103 LOGGING_LIB_SRC = $(JDK_TOPDIR)/src/share/lib
104
105 $(LIBDIR)/logging.properties: $(LOGGING_LIB_SRC)/logging.properties
106 $(MKDIR) -p $(@D)
107 $(RM) -f $@
108 $(CP) $< $@
109
110 COPY_FILES += $(LIBDIR)/logging.properties
111
112 ##########################################################################################
113 #
114 # Copy property files from sun/print to LIBDIR
115 #
116 PSFONTPROPFILE_SRC_DIR = $(JDK_TOPDIR)/src/share/classes/sun/print
117 PSFONTPROPFILE_SRCS = $(wildcard $(PSFONTPROPFILE_SRC_DIR)/*.properties*)
118 PSFONTPROPFILE_TARGET_FILES = $(subst $(PSFONTPROPFILE_SRC_DIR),$(LIBDIR),$(PSFONTPROPFILE_SRCS))
119
120 $(LIBDIR)/%: $(PSFONTPROPFILE_SRC_DIR)/%
121 $(MKDIR) -p $(@D)
122 $(RM) -f $@
123 $(CP) $< $@
124
125 COPY_FILES += $(PSFONTPROPFILE_TARGET_FILES)
126
127 ##########################################################################################
128 #
129 # Copy flavormap.properties, cursor.properties and cursors gif files to LIBDIR
130 #
131 ifneq ($(OPENJDK_TARGET_OS), macosx)
132 OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib
133 else
134 OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/macosx/lib
135 endif
136
137 $(LIBDIR)/flavormap.properties: $(OPENJDK_TARGET_OS_LIB_SRC)/flavormap.properties
138 $(MKDIR) -p $(@D)
139 $(RM) -f $@
140 $(CP) $< $@
141
142 COPY_FILES += $(LIBDIR)/flavormap.properties
143
144 CURSORS_DEST_DIR = $(LIBDIR)/images/cursors
145 CURSORS_OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib/images/cursors
146
147 $(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_OPENJDK_TARGET_OS_LIB_SRC)/cursors.properties
148 $(MKDIR) -p $(@D)
149 $(RM) -f $@
150 $(CP) $< $@
151
152 COPY_FILES += $(CURSORS_DEST_DIR)/cursors.properties
153
154 CURSORS_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/images/cursors
155 ifeq ($(OPENJDK_TARGET_OS), windows)
156 CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/win32_*.gif)
157 else # OPENJDK_TARGET_OS
158 CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/motif_*.gif)
159 endif # OPENJDK_TARGET_OS
160 CURSORS_TARGET_FILES = $(subst $(CURSORS_LIB_SRC),$(CURSORS_DEST_DIR),$(CURSORS_SRC_FILES))
161
162 $(CURSORS_DEST_DIR)/%: $(CURSORS_LIB_SRC)/%
163 $(MKDIR) -p $(@D)
164 $(RM) -f $@
165 $(CP) $< $@
166
167 COPY_FILES += $(CURSORS_TARGET_FILES)
168
169 ##########################################################################################
170
171 CONTENT_TYPES_SRC=$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib
172
173 $(LIBDIR)/content-types.properties: $(CONTENT_TYPES_SRC)/content-types.properties
174 $(MKDIR) -p $(@D)
175 $(RM) -f $@
176 $(CP) $< $@
177
178 COPY_FILES += $(LIBDIR)/content-types.properties
179
180 ##########################################################################################
181
182 CALENDARS_SRC := $(JDK_TOPDIR)/src/share/lib
183
184 $(LIBDIR)/calendars.properties: $(CALENDARS_SRC)/calendars.properties
185 $(MKDIR) -p $(@D)
186 $(RM) -f $@
187 $(CP) $< $@
188
189 COPY_FILES += $(LIBDIR)/calendars.properties
190
191 ##########################################################################################
192
193 ifeq ($(OPENJDK_TARGET_OS),windows)
194
195 TZMAPPINGS_SRC := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib
196
197 $(LIBDIR)/tzmappings: $(TZMAPPINGS_SRC)/tzmappings
198 $(MKDIR) -p $(@D)
199 $(RM) -f $@
200 $(CP) $< $@
201
202 COPY_FILES += $(LIBDIR)/tzmappings
203
204 endif
205
206 ##########################################################################################
207
208 ICCPROFILE_DEST_DIR := $(LIBDIR)/cmm
209
210 ifdef OPENJDK
211 ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/share/lib/cmm/lcms
212 else
213 ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/cmm/kcms
214 endif
215
227 ##########################################################################################
228
229 #make sure freetype dll will be available at runtime as well as link time
230 #
231 #NB: Default freetype build system uses -h linker option and
232 # result .so contains hardcoded library name that is later
233 # used for adding dependencies to other objects
234 # (e.g. libfontmanager.so).
235 #
236 # It is not obvious how to extract that hardcoded name (libfreetype.so.6)
237 # without overcomplicating logic here.
238 # To workaround this we hardcode .6 suffix for now.
239 #
240 # Note that .so.6 library will not be found by System.loadLibrary()
241 # but fortunately we need to load FreeType library explicitly
242 # on windows only
243 #
244 #TODO: rework this to avoid hardcoding library name in the makefile
245 #
246 ifdef OPENJDK
247 ifeq ($(OPENJDK_TARGET_OS), windows)
248 FREETYPE_LIB = $(JDK_OUTPUTDIR)/bin/$(call SHARED_LIBRARY,freetype)
249 else
250 ifeq ($(USING_SYSTEM_FT_LIB), false)
251 FREETYPE_LIB = $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/$(call SHARED_LIBRARY,freetype).6
252 endif
253 endif
254
255 $(FREETYPE_LIB): $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype)
256 $(CP) $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $@
257 ifeq ($(OPENJDK_BUILD_OS), windows)
258 $(CHMOD) +rx $@
259 endif
260
261 COPY_FILES += $(FREETYPE_LIB)
262 endif
263
264 ##########################################################################################
265
266 # Copy msvcr100.dll on windows
267
268 ifeq ($(OPENJDK_TARGET_OS),windows)
269 MSVCRNN_TARGET := $(JDK_OUTPUTDIR)/bin/$(notdir $(MSVCRNN_DLL))
270 $(MSVCRNN_TARGET): $(MSVCRNN_DLL)
271 $(MKDIR) -p $(@D)
272 $(RM) -f $@
273 $(CP) $< $@
274
275 COPY_FILES += $(MSVCRNN_TARGET)
276 endif
277
278 ##########################################################################################
279
280 HPROF_SRC=$(JDK_TOPDIR)/src/share/demo/jvmti/hprof/jvm.hprof.txt
281
282 $(LIBDIR)/jvm.hprof.txt : $(HPROF_SRC)
283 $(MKDIR) -p $(@D)
284 $(RM) -f $@
285 $(CP) $< $@
286
287 COPY_FILES += $(LIBDIR)/jvm.hprof.txt
288
289 ##########################################################################################
290
291 #
292 # How to install jvm.cfg.
293 #
294 ifeq ($(JVM_VARIANT_ZERO), true)
295 JVMCFG_ARCH := zero
296 else
297 JVMCFG_ARCH := $(ARCH)
298 endif
299
300 ifeq ($(OPENJDK_TARGET_OS),macosx)
301 ifeq ($(JVMCFG_ARCH),amd64)
302 JVMCFG_ARCH := x86_64
303 endif
304 JVMCFG_SRC := $(JDK_TOPDIR)/src/macosx/bin/$(JVMCFG_ARCH)/jvm.cfg
305 JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib
306 else
307 JVMCFG_SRC := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin/$(JVMCFG_ARCH)/jvm.cfg
308 JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)
309 endif
310
311 JVMCFG := $(JVMCFG_DIR)/jvm.cfg
312
313
314 ifeq ($(ARCH_DATA_MODEL),32)
315 # On 32 bit machines, we can have client and/or server libjvms installed.
316 # Since the currently committed jvm.cfg expects clientANDserver, we need
317 # to patch the jvm.cfg when we have built only a client or only a server.
318 # This should also support -kernel, -zero and -zeroshark.
319 ifeq ($(JVM_VARIANTS),$(COMMA)client$(COMMA))
320 # Create a patched jvm.cfg to use -client by default and alias -server to -client.
321 $(JVMCFG):
322 $(MKDIR) -p $(@D)
323 $(RM) -f $(JVMCFG)
324 $(PRINTF) "-client KNOWN\n">$(JVMCFG)
325 $(PRINTF) "-server IGNORE\n">>$(JVMCFG)
326 $(PRINTF) "-hotspot ALIASED_TO -client\n">>$(JVMCFG)
327 $(PRINTF) "-classic WARN\n">>$(JVMCFG)
347 $(MKDIR) -p $(@D)
348 $(RM) -f $@
349 $(CP) $< $@
350 endif
351 endif
352 else
353 # Use the default jvm.cfg for this 64 bit setup.
354 $(JVMCFG): $(JVMCFG_SRC)
355 $(MKDIR) -p $(@D)
356 $(RM) -f $@
357 $(CP) $< $@
358 endif
359
360 COPY_FILES += $(JVMCFG)
361
362 ##########################################################################################
363
364 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security
365 PROPS_DST := $(JDK_OUTPUTDIR)/lib/security/java.security
366
367 ifeq ($(OPENJDK_TARGET_OS), solaris)
368 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-solaris
369 endif
370
371 ifeq ($(OPENJDK_TARGET_OS), windows)
372 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-windows
373 endif
374
375 ifeq ($(OPENJDK_TARGET_OS), macosx)
376 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-macosx
377 endif
378
379 $(PROPS_DST): $(PROPS_SRC)
380 $(MKDIR) -p $(@D)
381 $(RM) -f $@
382 $(CP) $< $@
383
384 COPY_FILES += $(PROPS_DST)
385
386 ##########################################################################################
387
388 POLICY_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.policy
389 POLICY_DST := $(JDK_OUTPUTDIR)/lib/security/java.policy
390
391 $(POLICY_DST): $(POLICY_SRC)
392 $(MKDIR) -p $(@D)
393 $(RM) -f $@
394 $(CP) $< $@
395
447 LucidaBrightItalic.ttf \
448 LucidaBrightDemiItalic.ttf \
449 LucidaSansRegular.ttf \
450 LucidaSansDemiBold.ttf \
451
452 SHARED_FONTS_SRC := $(foreach F,$(SHARED_FONTS_FILES),$(SHARED_FONTS_SRC_DIR)/$(F))
453 SHARED_FONTS_DST := $(foreach F,$(SHARED_FONTS_FILES),$(SHARED_FONTS_DST_DIR)/$(F))
454
455 $(SHARED_FONTS_DST_DIR)/%.ttf : $(SHARED_FONTS_SRC_DIR)/%.ttf
456 $(MKDIR) -p $(@D)
457 $(RM) $@
458 $(CP) $< $@
459
460 $(SHARED_FONTS_DST_DIR)/fonts.dir : $(JDK_TOPDIR)/src/solaris/classes/sun/awt/motif/java.fonts.dir
461 $(MKDIR) -p $(@D)
462 $(RM) $@
463 $(CP) $< $@
464
465 COPY_FILES += $(SHARED_FONTS_DST) $(SHARED_FONTS_DST_DIR)/fonts.dir
466
467 ifeq ($(OPENJDK_TARGET_OS), linux)
468
469 # The oblique fonts are only needed/wanted on Linux.
470
471 OBL_FONTS_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/fonts/oblique
472 OBL_FONTS_DST_DIR := $(JDK_OUTPUTDIR)/lib/oblique-fonts
473 OBL_FONTS_FILES := LucidaTypewriterOblique.ttf LucidaTypewriterBoldOblique.ttf \
474 LucidaSansOblique.ttf LucidaSansDemiOblique.ttf
475
476 OBL_FONTS_SRC := $(foreach F,$(OBL_FONTS_FILES),$(OBL_FONTS_SRC_DIR)/$(F))
477 OBL_FONTS_DST := $(foreach F,$(OBL_FONTS_FILES),$(OBL_FONTS_DST_DIR)/$(F))
478
479 $(OBL_FONTS_DST_DIR)/%.ttf : $(OBL_FONTS_SRC_DIR)/%.ttf
480 $(MKDIR) -p $(@D)
481 $(RM) $@
482 $(CP) $< $@
483
484 $(OBL_FONTS_DST_DIR)/fonts.dir : $(JDK_TOPDIR)/src/solaris/classes/sun/awt/motif/java.oblique-fonts.dir
485 $(MKDIR) -p $(@D)
486 $(RM) $@
487 $(CP) $< $@
526 libjdgaSUNWm64.so \
527 libjdgaSUNWafb.so
528
529 _DGALIBS_sparcv9 = \
530 libxinerama.so \
531 libjdgaSUNWcg6.so \
532 libjdgaSUNWffb.so \
533 libjdgaSUNWm64.so \
534 libjdgaSUNWafb.so
535
536 _DGALIBS_i586 = # no i586 library yet
537
538 _DGALIBS_amd64 = # no amd64 library yet
539
540 DGALIBS = $(_DGALIBS_$(ARCH):%=$(JDK_OUTPUTDIR)/lib/$(LIBARCH)/%)
541
542 $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libxinerama.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(ARCH)/libxinerama.so
543 $(MKDIR) -p $(@D)
544 $(RM) $@
545 $(CP) $< $@
546 $(CHMOD) 755 $@
547
548 $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNW%.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(ARCH)/libjdgaSUNW%.so
549 $(MKDIR) -p $(@D)
550 $(RM) $@
551 $(CP) $< $@
552 $(CHMOD) 755 $@
553
554 $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWafb.so: $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWffb.so
555 $(MKDIR) -p $(@D)
556 $(RM) $@
557 $(LN) -s $< $@
558
559 COPY_FILES += $(DGALIBS)
560
561 endif
562
563 ##########################################################################################
564
565 ifeq ($(OPENJDK_TARGET_OS), solaris)
566
567 SUNPKCS11_CFG_SRC := $(JDK_TOPDIR)/src/share/lib/security/sunpkcs11-solaris.cfg
568 SUNPKCS11_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/sunpkcs11-solaris.cfg
569
570 $(SUNPKCS11_CFG_DST) : $(SUNPKCS11_CFG_SRC)
571 $(MKDIR) -p $(@D)
572 $(RM) $@
573 $(CP) $< $@
574
575 COPY_FILES += $(SUNPKCS11_CFG_DST)
576
577 endif
578
579 ##########################################################################################
580
581 ifndef OPENJDK
582 ifeq ($(OPENJDK_TARGET_OS), solaris)
583
584 UCRYPTO_CFG_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/ucrypto-solaris.cfg
585 UCRYPTO_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/ucrypto-solaris.cfg
586
587 $(UCRYPTO_CFG_DST) : $(UCRYPTO_CFG_SRC)
588 $(MKDIR) -p $(@D)
589 $(RM) $@
590 $(CP) $< $@
591
592 COPY_FILES += $(UCRYPTO_CFG_DST)
593
594 endif
595 endif
596
597 ##########################################################################################
598
599 $(JDK_OUTPUTDIR)/lib/sound.properties : $(JDK_TOPDIR)/src/share/lib/sound.properties
600 $(MKDIR) -p $(@D)
601 $(RM) $@
602 $(CP) $< $(@)
|