makefiles/CompileJavaClasses.gmk

Print this page




 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 ##########################################################################################
 328 
 329 ifeq ($(OPENJDK_TARGET_OS),macosx)


 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 
 290 RT_SECURITY_CLASSES := sun/security/ec/ECParameters.java \
 291                         sun/security/ec/ECPrivateKeyImpl.java \
 292                         sun/security/ec/ECPublicKeyImpl.java \
 293                         sun/security/ec/NamedCurve.java
 294 
 295 NONRT_SECURITY_CLASSES := $(filter-out $(addprefix %,$(RT_SECURITY_CLASSES)),\
 296                 $(wildcard $(JDK_TOPDIR)/src/share/classes/sun/security/ec/*.java))
 297 
 298 
 299 # The exception handling of swing beaninfo
 300 # These resources violates the convention of having code and resources together under
 301 # $(JDK_TOPDIR)/src/.../classes directories
 302 $(JDK_OUTPUTDIR)/classes/javax/swing/beaninfo/images/%.gif: $(JDK_TOPDIR)/make/tools/swing-beans/beaninfo/images/%.gif
 303         $(call install-file)
 304 
 305 # The JDK_USER_DEFINED_FILTER is a poor man's incremental build: by specifying
 306 # JDK_FILTER at the make command line, only a subset of the JDK java files will
 307 # be recompiled. If multiple paths are separated by comma, convert that into a
 308 # space separated list.
 309 JDK_USER_DEFINED_FILTER:=$(strip $(subst $(COMMA),$(SPACE),$(JDK_FILTER)))
 310 
 311 $(eval $(call SetupJavaCompilation,BUILD_JDK,\
 312                 SETUP:=GENERATE_JDKBYTECODE,\
 313                 SRC:=$(JDK_TOPDIR)/src/share/classes \
 314                      $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \
 315                      $(MACOSX_SRC_DIRS) \
 316                      $(JDK_OUTPUTDIR)/gensrc \
 317                      $(JDK_OUTPUTDIR)/gensrc_no_srczip \
 318                      $(CLOSED_SRC_DIRS),\
 319                 INCLUDES:=$(JDK_USER_DEFINED_FILTER),\
 320                 EXCLUDES:=$(EXCLUDES) $(SECURITY_PKGS),\
 321                 EXCLUDE_FILES:=$(EXFILES) $(NONRT_SECURITY_CLASSES),\
 322                 BIN:=$(JDK_OUTPUTDIR)/classes,\
 323                 COPY:=$(COPY_PATTERNS),\
 324                 COPY_FILES:=$(COPY_FILES),\
 325                 HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers))
 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) sun/security/ec,\
 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 ##########################################################################################
 363 
 364 ifeq ($(OPENJDK_TARGET_OS),macosx)


 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