260
261 MACOSX_SRC_DIRS :=
262 ifeq ($(OPENJDK_TARGET_OS),macosx)
263 MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes
264
265 # this files are duplicated in MACOSX_SRC_DIRS
266 EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \
267 $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \
268 $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \
269 $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java \
270 $(JDK_TOPDIR)/src/solaris/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \
271 $(JDK_TOPDIR)/src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java
272
273 # JObjC.jar contains 1.5 byte-code...so skip it here :-(
274 # MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/jobjc/src
275 # EXCLUDES+= tests/java/com/apple/jobjc
276
277 EXCLUDES+= com/apple/jobjc
278 endif
279
280 # The exception handling of swing beaninfo
281 # These resources violates the convention of having code and resources together under
282 # $(JDK_TOPDIR)/src/.../classes directories
283 $(JDK_OUTPUTDIR)/classes/javax/swing/beaninfo/images/%.gif: $(JDK_TOPDIR)/make/tools/swing-beans/beaninfo/images/%.gif
284 $(call install-file)
285
286 # The JDK_USER_DEFINED_FILTER is a poor man's incremental build: by specifying
287 # JDK_FILTER at the make command line, only a subset of the JDK java files will
288 # be recompiled. If multiple paths are separated by comma, convert that into a
289 # space separated list.
290 JDK_USER_DEFINED_FILTER:=$(strip $(subst $(COMMA),$(SPACE),$(JDK_FILTER)))
291
292 $(eval $(call SetupJavaCompilation,BUILD_JDK,\
293 SETUP:=GENERATE_JDKBYTECODE,\
294 SRC:=$(JDK_TOPDIR)/src/share/classes \
295 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \
296 $(MACOSX_SRC_DIRS) \
297 $(JDK_OUTPUTDIR)/gensrc \
298 $(JDK_OUTPUTDIR)/gensrc_no_srczip \
299 $(CLOSED_SRC_DIRS),\
300 INCLUDES:=$(JDK_USER_DEFINED_FILTER),\
301 EXCLUDES:=$(EXCLUDES),\
302 EXCLUDE_FILES:=$(EXFILES),\
303 BIN:=$(JDK_OUTPUTDIR)/classes,\
304 COPY:=$(COPY_PATTERNS),\
305 COPY_FILES:=$(COPY_FILES),\
306 HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers))
307
308 ##########################################################################################
309
310 ifndef OPENJDK
311
312 $(eval $(call SetupJavaCompilation,BUILD_ALTCLASSES,\
313 SETUP:=GENERATE_JDKBYTECODE,\
314 SRC:=$(JDK_TOPDIR)/src/closed/share/altclasses, \
315 BIN:=$(JDK_OUTPUTDIR)/altclasses_classes))
316
317 $(BUILD_ALTCLASSES): $(BUILD_JDK)
318
319 endif
320
321 ##########################################################################################
322
323 $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin:
324 $(MKDIR) -p $(@D)
325 $(TOUCH) $@
326
327 ##########################################################################################
385 BIN:=$(JDK_OUTPUTDIR)/classes_ab/legacy))
386
387 $(BUILD_ACCESSBRIDGE_LEGACY): $(BUILD_JDK)
388
389 else
390
391 $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_64,\
392 SETUP:=GENERATE_JDKBYTECODE,\
393 JAVAC_FLAGS:=-cp $(JDK_OUTPUTDIR)/classes,\
394 SRC:=$(JDK_OUTPUTDIR)/gensrc_ab/64bit,\
395 BIN:=$(JDK_OUTPUTDIR)/classes_ab/64bit))
396
397 $(BUILD_ACCESSBRIDGE_64): $(BUILD_JDK)
398
399 endif
400 endif
401 endif
402
403 ##########################################################################################
404
405 all: $(BUILD_JDK) $(BUILD_ALTCLASSES) $(BUILD_JOBJC) $(BUILD_JOBJC_HEADERS) $(COPY_EXTRA) \
406 $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \
407 $(BUILD_ACCESSBRIDGE_32) $(BUILD_ACCESSBRIDGE_64) \
408 $(BUILD_ACCESSBRIDGE_LEGACY)
409
410 .PHONY: all
|
260
261 MACOSX_SRC_DIRS :=
262 ifeq ($(OPENJDK_TARGET_OS),macosx)
263 MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes
264
265 # this files are duplicated in MACOSX_SRC_DIRS
266 EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \
267 $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \
268 $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \
269 $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java \
270 $(JDK_TOPDIR)/src/solaris/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \
271 $(JDK_TOPDIR)/src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java
272
273 # JObjC.jar contains 1.5 byte-code...so skip it here :-(
274 # MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/jobjc/src
275 # EXCLUDES+= tests/java/com/apple/jobjc
276
277 EXCLUDES+= com/apple/jobjc
278 endif
279
280 # The security classes should not end up in the classes directory as that will prevent them
281 # from working when running the exploded jdk image. Compile them separately to a different
282 # directory from where the jars can be created.
283 SECURITY_PKGS := sun/security/pkcs11 \
284 com/sun/crypto/provider \
285 javax/crypto \
286 sun/security/internal \
287 sun/security/mscapi \
288 com/oracle/security/ucrypto \
289 sun/security/ec
290
291 # The exception handling of swing beaninfo
292 # These resources violates the convention of having code and resources together under
293 # $(JDK_TOPDIR)/src/.../classes directories
294 $(JDK_OUTPUTDIR)/classes/javax/swing/beaninfo/images/%.gif: $(JDK_TOPDIR)/make/tools/swing-beans/beaninfo/images/%.gif
295 $(call install-file)
296
297 # The JDK_USER_DEFINED_FILTER is a poor man's incremental build: by specifying
298 # JDK_FILTER at the make command line, only a subset of the JDK java files will
299 # be recompiled. If multiple paths are separated by comma, convert that into a
300 # space separated list.
301 JDK_USER_DEFINED_FILTER:=$(strip $(subst $(COMMA),$(SPACE),$(JDK_FILTER)))
302
303 ifeq ($(ENABLE_SJAVAC),yes)
304 # With sjavac enabled, excluded sources are not even considered for linking.
305 # Explicitly add the security sources to sourcepath for linking.
306 BUILD_JDK_SOURCEPATH:=$(patsubst %,-i$(SPACE)%.*,$(subst /,.,$(SECURITY_PKGS))) \
307 -sourcepath $(JDK_TOPDIR)/src/share/classes
308 endif
309
310 $(eval $(call SetupJavaCompilation,BUILD_JDK,\
311 SETUP:=GENERATE_JDKBYTECODE,\
312 SRC:=$(JDK_TOPDIR)/src/share/classes \
313 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \
314 $(MACOSX_SRC_DIRS) \
315 $(JDK_OUTPUTDIR)/gensrc \
316 $(JDK_OUTPUTDIR)/gensrc_no_srczip \
317 $(CLOSED_SRC_DIRS),\
318 INCLUDES:=$(JDK_USER_DEFINED_FILTER),\
319 EXCLUDES:=$(EXCLUDES) $(SECURITY_PKGS),\
320 EXCLUDE_FILES:=$(EXFILES),\
321 BIN:=$(JDK_OUTPUTDIR)/classes,\
322 COPY:=$(COPY_PATTERNS),\
323 COPY_FILES:=$(COPY_FILES),\
324 HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers,\
325 ADD_JAVAC_FLAGS:=$(BUILD_JDK_SOURCEPATH)))
326
327 ##########################################################################################
328
329 $(eval $(call SetupJavaCompilation,BUILD_SECURITY,\
330 SETUP:=GENERATE_JDKBYTECODE,\
331 SRC:=$(JDK_TOPDIR)/src/share/classes \
332 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \
333 $(MACOSX_SRC_DIRS) \
334 $(CLOSED_SRC_DIRS),\
335 INCLUDES:=$(SECURITY_PKGS),\
336 EXCLUDES:=$(EXCLUDES),\
337 EXCLUDE_FILES:=$(EXFILES),\
338 BIN:=$(JDK_OUTPUTDIR)/classes_security,\
339 HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers))
340
341 $(BUILD_SECURITY): $(BUILD_JDK)
342
343 ##########################################################################################
344
345 ifndef OPENJDK
346
347 $(eval $(call SetupJavaCompilation,BUILD_ALTCLASSES,\
348 SETUP:=GENERATE_JDKBYTECODE,\
349 SRC:=$(JDK_TOPDIR)/src/closed/share/altclasses, \
350 BIN:=$(JDK_OUTPUTDIR)/altclasses_classes))
351
352 $(BUILD_ALTCLASSES): $(BUILD_JDK)
353
354 endif
355
356 ##########################################################################################
357
358 $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin:
359 $(MKDIR) -p $(@D)
360 $(TOUCH) $@
361
362 ##########################################################################################
420 BIN:=$(JDK_OUTPUTDIR)/classes_ab/legacy))
421
422 $(BUILD_ACCESSBRIDGE_LEGACY): $(BUILD_JDK)
423
424 else
425
426 $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_64,\
427 SETUP:=GENERATE_JDKBYTECODE,\
428 JAVAC_FLAGS:=-cp $(JDK_OUTPUTDIR)/classes,\
429 SRC:=$(JDK_OUTPUTDIR)/gensrc_ab/64bit,\
430 BIN:=$(JDK_OUTPUTDIR)/classes_ab/64bit))
431
432 $(BUILD_ACCESSBRIDGE_64): $(BUILD_JDK)
433
434 endif
435 endif
436 endif
437
438 ##########################################################################################
439
440 all: $(BUILD_JDK) $(BUILD_SECURITY) $(BUILD_ALTCLASSES) $(BUILD_JOBJC) \
441 $(BUILD_JOBJC_HEADERS) $(COPY_EXTRA) \
442 $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \
443 $(BUILD_ACCESSBRIDGE_32) $(BUILD_ACCESSBRIDGE_64) \
444 $(BUILD_ACCESSBRIDGE_LEGACY)
445
446 .PHONY: all
|