jdk/makefiles/CompileJavaClasses.gmk
changeset 20547 453837141fac
parent 20102 30b8aaa80ae2
child 20551 8518304d2097
equal deleted inserted replaced
20546:5e40a295cce2 20547:453837141fac
    36 EXFILES :=
    36 EXFILES :=
    37 EXCLUDES :=
    37 EXCLUDES :=
    38 
    38 
    39 ##########################################################################################
    39 ##########################################################################################
    40 
    40 
    41 EXCLUDES +=	com/sun/pept \
    41 EXCLUDES += com/sun/pept \
    42 		com/sun/tools/example/trace\
    42     com/sun/tools/example/trace \
    43 		com/sun/tools/example/debug/bdi\
    43     com/sun/tools/example/debug/bdi \
    44 		com/sun/tools/example/debug/event\
    44     com/sun/tools/example/debug/event \
    45 		com/sun/tools/example/debug/gui
    45     com/sun/tools/example/debug/gui
    46 
    46 
    47 ifdef OPENJDK
    47 ifdef OPENJDK
    48     EXCLUDES+=	sun/dc \
    48   EXCLUDES += sun/dc \
    49 		com/sun/jmx/snmp \
    49       com/sun/jmx/snmp \
    50 		sun/management/snmp \
    50       sun/management/snmp \
    51 		com/sun/script
    51       com/sun/script
    52 endif
    52 endif
    53 
    53 
    54 ifndef OPENJDK
    54 ifndef OPENJDK
    55    # There exists two versions of this file...
    55   # There exists two versions of this file...
    56    EXFILES := $(JDK_TOPDIR)/src/share/classes/javax/crypto/JarVerifier.java
    56   EXFILES := $(JDK_TOPDIR)/src/share/classes/javax/crypto/JarVerifier.java
    57 
    57 
    58    ifeq ($(OPENJDK_TARGET_OS),windows)
    58   ifeq ($(OPENJDK_TARGET_OS), windows)
    59       # This gets built on unix platforms implicitly in the old build even though
    59     # This gets built on unix platforms implicitly in the old build even though
    60       # it's excluded in the closed build.
    60     # it's excluded in the closed build.
    61       EXCLUDES+=sun/java2d/pisces
    61     EXCLUDES += sun/java2d/pisces
    62 
    62 
    63       # AccessBridge is compiled separately below.
    63     # AccessBridge is compiled separately below.
    64       EXFILES += AccessBridge.java \
    64     EXFILES += AccessBridge.java \
    65 		 AccessBridgeLoader.java \
    65         AccessBridgeLoader.java \
    66 		 com/sun/java/accessibility/util/java/awt/ChoiceTranslator.java
    66         com/sun/java/accessibility/util/java/awt/ChoiceTranslator.java
    67       # This seems to never be built
    67     # This seems to never be built
    68       EXCLUDES += com/sun/java/accessibility/extensions
    68     EXCLUDES += com/sun/java/accessibility/extensions
    69    endif
    69   endif
    70 
    70 
    71 endif
    71 endif
    72 
    72 
    73 ifneq ($(OPENJDK_TARGET_OS),solaris)
    73 ifneq ($(OPENJDK_TARGET_OS), solaris)
    74    # Exclude Solaris nio and two security related files in src/share/classes
    74   # Exclude Solaris nio and two security related files in src/share/classes
    75    EXFILES += SolarisAclFileAttributeView.java \
    75   EXFILES += SolarisAclFileAttributeView.java \
    76 	SolarisFileStore.java \
    76       SolarisFileStore.java \
    77 	SolarisFileSystem.java \
    77       SolarisFileSystem.java \
    78 	SolarisFileSystemProvider.java \
    78       SolarisFileSystemProvider.java \
    79 	SolarisNativeDispatcher.java \
    79       SolarisNativeDispatcher.java \
    80 	SolarisUserDefinedFileAttributeView.java \
    80       SolarisUserDefinedFileAttributeView.java \
    81 	SolarisWatchService.java \
    81       SolarisWatchService.java \
    82 	SolarisAclFileAttributeView.java \
    82       SolarisAclFileAttributeView.java \
    83 	SolarisLoginModule.java \
    83       SolarisLoginModule.java \
    84 	SolarisSystem.java \
    84       SolarisSystem.java \
    85         sun/nio/ch/DevPollArrayWrapper.java \
    85       sun/nio/ch/DevPollArrayWrapper.java \
    86         sun/nio/ch/DevPollSelectorImpl.java \
    86       sun/nio/ch/DevPollSelectorImpl.java \
    87         sun/nio/ch/DevPollSelectorProvider.java \
    87       sun/nio/ch/DevPollSelectorProvider.java \
    88 	sun/nio/ch/EventPortSelectorImpl.java \
    88       sun/nio/ch/EventPortSelectorImpl.java \
    89 	sun/nio/ch/EventPortSelectorProvider.java \
    89       sun/nio/ch/EventPortSelectorProvider.java \
    90 	sun/nio/ch/EventPortWrapper.java \
    90       sun/nio/ch/EventPortWrapper.java \
    91         sun/nio/ch/SolarisAsynchronousChannelProvider.java \
    91       sun/nio/ch/SolarisAsynchronousChannelProvider.java \
    92         sun/nio/ch/SolarisEventPort.java \
    92       sun/nio/ch/SolarisEventPort.java \
    93 	sun/tools/attach/SolarisAttachProvider.java \
    93       sun/tools/attach/SolarisAttachProvider.java \
    94 	sun/tools/attach/SolarisVirtualMachine.java
    94       sun/tools/attach/SolarisVirtualMachine.java
    95 
    95 
    96    EXCLUDES += com/oracle/security
    96   EXCLUDES += com/oracle/security
    97 endif
    97 endif
    98 
    98 
    99 # In the old build, this isn't excluded on macosx, even though it probably
    99 # In the old build, this isn't excluded on macosx, even though it probably
   100 # should be.
   100 # should be.
   101 ifneq ($(OPENJDK_TARGET_OS),macosx)
   101 ifneq ($(OPENJDK_TARGET_OS), macosx)
   102 	EXFILES+=WrapperGenerator.java
   102   EXFILES += WrapperGenerator.java
   103 endif
   103 endif
   104 
   104 
   105 ifneq ($(OPENJDK_TARGET_OS),windows)
   105 ifneq ($(OPENJDK_TARGET_OS), windows)
   106     # Exclude Window security related files in src/share/classes
   106   # Exclude Window security related files in src/share/classes
   107     EXFILES+=NTLoginModule.java \
   107   EXFILES += NTLoginModule.java \
   108              NTSystem.java
   108       NTSystem.java
   109 else
   109 else
   110     EXFILES+=UnixLoginModule.java \
   110   EXFILES += UnixLoginModule.java \
   111 	     UnixSystem.java
   111       UnixSystem.java
   112 endif
   112 endif
   113 
   113 
   114 ifeq ($(OPENJDK_TARGET_OS),windows)
   114 ifeq ($(OPENJDK_TARGET_OS), windows)
   115     # Don't build GTK L&F on Windows
   115   # Don't build GTK L&F on Windows
   116     EXCLUDES+=com/sun/java/swing/plaf/gtk
   116   EXCLUDES += com/sun/java/swing/plaf/gtk
   117 endif
   117 endif
   118 
   118 
   119 ifneq ($(OPENJDK_TARGET_OS),linux)
   119 ifneq ($(OPENJDK_TARGET_OS), linux)
   120     EXFILES+=sun/tools/attach/LinuxAttachProvider.java \
   120   EXFILES += sun/tools/attach/LinuxAttachProvider.java \
   121 	     sun/tools/attach/LinuxVirtualMachine.java \
   121       sun/tools/attach/LinuxVirtualMachine.java \
   122              sun/nio/ch/EPoll.java \
   122       sun/nio/ch/EPoll.java \
   123              sun/nio/ch/EPollArrayWrapper.java \
   123       sun/nio/ch/EPollArrayWrapper.java \
   124              sun/nio/ch/EPollPort.java \
   124       sun/nio/ch/EPollPort.java \
   125              sun/nio/ch/EPollSelectorImpl.java \
   125       sun/nio/ch/EPollSelectorImpl.java \
   126              sun/nio/ch/EPollSelectorProvider.java \
   126       sun/nio/ch/EPollSelectorProvider.java \
   127              sun/nio/ch/LinuxAsynchronousChannelProvider.java \
   127       sun/nio/ch/LinuxAsynchronousChannelProvider.java \
   128 	     sun/nio/fs/LinuxDosFileAttributeView.java \
   128       sun/nio/fs/LinuxDosFileAttributeView.java \
   129 	     sun/nio/fs/LinuxFileStore.java \
   129       sun/nio/fs/LinuxFileStore.java \
   130 	     sun/nio/fs/LinuxFileSystem.java \
   130       sun/nio/fs/LinuxFileSystem.java \
   131 	     sun/nio/fs/LinuxFileSystemProvider.java \
   131       sun/nio/fs/LinuxFileSystemProvider.java \
   132 	     sun/nio/fs/MagicFileTypeDetector.java \
   132       sun/nio/fs/MagicFileTypeDetector.java \
   133 	     sun/nio/fs/LinuxNativeDispatcher.java \
   133       sun/nio/fs/LinuxNativeDispatcher.java \
   134 	     sun/nio/fs/LinuxUserDefinedFileAttributeView.java \
   134       sun/nio/fs/LinuxUserDefinedFileAttributeView.java \
   135 	     sun/nio/fs/LinuxWatchService.java
   135       sun/nio/fs/LinuxWatchService.java
   136 endif
   136 endif
   137 
   137 
   138 ifneq ($(OPENJDK_TARGET_OS),macosx)
   138 ifneq ($(OPENJDK_TARGET_OS), macosx)
   139     EXFILES+=sun/nio/ch/BsdAsynchronousChannelProvider.java \
   139   EXFILES += sun/nio/ch/BsdAsynchronousChannelProvider.java \
   140              sun/nio/ch/KQueue.java \
   140       sun/nio/ch/KQueue.java \
   141              sun/nio/ch/KQueuePort.java \
   141       sun/nio/ch/KQueuePort.java \
   142              sun/nio/fs/BsdFileStore.java \
   142       sun/nio/fs/BsdFileStore.java \
   143 	     sun/nio/fs/BsdFileSystem.java \
   143       sun/nio/fs/BsdFileSystem.java \
   144              sun/nio/fs/BsdFileSystemProvider.java \
   144       sun/nio/fs/BsdFileSystemProvider.java \
   145              sun/nio/fs/BsdNativeDispatcher.java \
   145       sun/nio/fs/BsdNativeDispatcher.java \
   146              sun/nio/fs/MacOSXFileSystemProvider.java \
   146       sun/nio/fs/MacOSXFileSystemProvider.java \
   147              sun/nio/fs/MacOSXFileSystem.java \
   147       sun/nio/fs/MacOSXFileSystem.java \
   148              sun/nio/fs/MacOSXNativeDispatcher.java \
   148       sun/nio/fs/MacOSXNativeDispatcher.java \
   149              sun/tools/attach/BsdAttachProvider.java \
   149       sun/tools/attach/BsdAttachProvider.java \
   150              sun/tools/attach/BsdVirtualMachine.java
   150       sun/tools/attach/BsdVirtualMachine.java
   151 endif
   151 endif
   152 
   152 
   153 # Exclude BreakIterator classes that are just used in compile process to generate
   153 # Exclude BreakIterator classes that are just used in compile process to generate
   154 # data files and shouldn't go in the product
   154 # data files and shouldn't go in the product
   155 EXFILES+=sun/text/resources/BreakIteratorRules.java \
   155 EXFILES += sun/text/resources/BreakIteratorRules.java \
   156 	 sun/text/resources/BreakIteratorRules_th.java
   156     sun/text/resources/BreakIteratorRules_th.java
   157 
   157 
   158 # TODO: Add BUILD_HEADLESS_ONLY to configure?
   158 # TODO: Add BUILD_HEADLESS_ONLY to configure?
   159 ifdef BUILD_HEADLESS_ONLY
   159 ifdef BUILD_HEADLESS_ONLY
   160     EXCLUDES+=sun/applet
   160   EXCLUDES += sun/applet
   161 endif
   161 endif
   162 
   162 
   163 ifdef OPENJDK
   163 ifdef OPENJDK
   164     EXCLUDES+=sun/java2d/cmm/kcms
   164   EXCLUDES += sun/java2d/cmm/kcms
   165 endif
   165 endif
   166 
   166 
   167 # Used on windows and macosx
   167 # Used on windows and macosx
   168 ifeq (,$(filter $(OPENJDK_TARGET_OS), windows macosx))
   168 ifeq (, $(filter $(OPENJDK_TARGET_OS), windows macosx))
   169     EXFILES+=sun/awt/AWTCharset.java
   169   EXFILES += sun/awt/AWTCharset.java
   170 endif
   170 endif
   171 
   171 
   172 ifneq ($(OPENJDK_TARGET_OS), macosx)
   172 ifneq ($(OPENJDK_TARGET_OS), macosx)
   173     EXFILES+=sun/awt/X11/ScreenFormat.java \
   173   EXFILES += sun/awt/X11/ScreenFormat.java \
   174              sun/awt/X11/XArc.java \
   174       sun/awt/X11/XArc.java \
   175              sun/awt/X11/XChar2b.java \
   175       sun/awt/X11/XChar2b.java \
   176              sun/awt/X11/XCharStruct.java \
   176       sun/awt/X11/XCharStruct.java \
   177              sun/awt/X11/XClassHint.java \
   177       sun/awt/X11/XClassHint.java \
   178              sun/awt/X11/XComposeStatus.java \
   178       sun/awt/X11/XComposeStatus.java \
   179              sun/awt/X11/XExtCodes.java \
   179       sun/awt/X11/XExtCodes.java \
   180              sun/awt/X11/XFontProp.java \
   180       sun/awt/X11/XFontProp.java \
   181              sun/awt/X11/XFontSetExtents.java \
   181       sun/awt/X11/XFontSetExtents.java \
   182              sun/awt/X11/XFontStruct.java \
   182       sun/awt/X11/XFontStruct.java \
   183              sun/awt/X11/XGCValues.java \
   183       sun/awt/X11/XGCValues.java \
   184              sun/awt/X11/XHostAddress.java \
   184       sun/awt/X11/XHostAddress.java \
   185              sun/awt/X11/XIMCallback.java \
   185       sun/awt/X11/XIMCallback.java \
   186              sun/awt/X11/XIMHotKeyTrigger.java \
   186       sun/awt/X11/XIMHotKeyTrigger.java \
   187              sun/awt/X11/XIMHotKeyTriggers.java \
   187       sun/awt/X11/XIMHotKeyTriggers.java \
   188              sun/awt/X11/XIMPreeditCaretCallbackStruct.java \
   188       sun/awt/X11/XIMPreeditCaretCallbackStruct.java \
   189              sun/awt/X11/XIMPreeditDrawCallbackStruct.java \
   189       sun/awt/X11/XIMPreeditDrawCallbackStruct.java \
   190              sun/awt/X11/XIMPreeditStateNotifyCallbackStruct.java \
   190       sun/awt/X11/XIMPreeditStateNotifyCallbackStruct.java \
   191              sun/awt/X11/XIMStatusDrawCallbackStruct.java \
   191       sun/awt/X11/XIMStatusDrawCallbackStruct.java \
   192              sun/awt/X11/XIMStringConversionCallbackStruct.java \
   192       sun/awt/X11/XIMStringConversionCallbackStruct.java \
   193              sun/awt/X11/XIMStringConversionText.java \
   193       sun/awt/X11/XIMStringConversionText.java \
   194              sun/awt/X11/XIMStyles.java \
   194       sun/awt/X11/XIMStyles.java \
   195              sun/awt/X11/XIMText.java \
   195       sun/awt/X11/XIMText.java \
   196              sun/awt/X11/XIMValuesList.java \
   196       sun/awt/X11/XIMValuesList.java \
   197              sun/awt/X11/XImage.java \
   197       sun/awt/X11/XImage.java \
   198              sun/awt/X11/XKeyboardControl.java \
   198       sun/awt/X11/XKeyboardControl.java \
   199              sun/awt/X11/XKeyboardState.java \
   199       sun/awt/X11/XKeyboardState.java \
   200              sun/awt/X11/XOMCharSetList.java \
   200       sun/awt/X11/XOMCharSetList.java \
   201              sun/awt/X11/XOMFontInfo.java \
   201       sun/awt/X11/XOMFontInfo.java \
   202              sun/awt/X11/XOMOrientation.java \
   202       sun/awt/X11/XOMOrientation.java \
   203              sun/awt/X11/XPoint.java \
   203       sun/awt/X11/XPoint.java \
   204              sun/awt/X11/XRectangle.java \
   204       sun/awt/X11/XRectangle.java \
   205              sun/awt/X11/XSegment.java \
   205       sun/awt/X11/XSegment.java \
   206              sun/awt/X11/XStandardColormap.java \
   206       sun/awt/X11/XStandardColormap.java \
   207              sun/awt/X11/XTextItem.java \
   207       sun/awt/X11/XTextItem.java \
   208              sun/awt/X11/XTextItem16.java \
   208       sun/awt/X11/XTextItem16.java \
   209              sun/awt/X11/XTextProperty.java \
   209       sun/awt/X11/XTextProperty.java \
   210              sun/awt/X11/XTimeCoord.java \
   210       sun/awt/X11/XTimeCoord.java \
   211              sun/awt/X11/XWindowChanges.java \
   211       sun/awt/X11/XWindowChanges.java \
   212              sun/awt/X11/XdbeSwapInfo.java \
   212       sun/awt/X11/XdbeSwapInfo.java \
   213              sun/awt/X11/XmbTextItem.java \
   213       sun/awt/X11/XmbTextItem.java \
   214              sun/awt/X11/XwcTextItem.java
   214       sun/awt/X11/XwcTextItem.java
   215 endif
   215 endif
   216 
   216 
   217 # Exclude another implicitly not included file.
   217 # Exclude another implicitly not included file.
   218 EXFILES+=sun/util/locale/AsciiUtil.java
   218 EXFILES += sun/util/locale/AsciiUtil.java
   219 
   219 
   220 ifeq (,$(filter $(OPENJDK_TARGET_OS), solaris macosx))
   220 ifeq (, $(filter $(OPENJDK_TARGET_OS), solaris macosx))
   221 #
   221   #
   222 # only solaris and macosx
   222   # only solaris and macosx
   223 #
   223   #
   224     EXFILES+=sun/nio/fs/PollingWatchService.java
   224   EXFILES += sun/nio/fs/PollingWatchService.java
   225 endif
   225 endif
   226 
   226 
   227 # TODO: Fix when converting NIO
   227 # TODO: Fix when converting NIO
   228 # Exclude *-linux-arm.java and *-linux-ppc.java from closed.
   228 # Exclude *-linux-arm.java and *-linux-ppc.java from closed.
   229 EXFILES+=-linux-arm.java \
   229 EXFILES += -linux-arm.java \
   230 	 -linux-ppc.java
   230     -linux-ppc.java
   231 
   231 
   232 ifeq ($(OPENJDK_TARGET_OS), windows)
   232 ifeq ($(OPENJDK_TARGET_OS), windows)
   233     EXFILES+=sun/nio/ch/AbstractPollSelectorImpl.java \
   233   EXFILES += sun/nio/ch/AbstractPollSelectorImpl.java \
   234         sun/nio/ch/PollSelectorProvider.java \
   234       sun/nio/ch/PollSelectorProvider.java \
   235 	sun/nio/ch/SimpleAsynchronousFileChannelImpl.java
   235       sun/nio/ch/SimpleAsynchronousFileChannelImpl.java
   236 endif
   236 endif
   237 
   237 
   238 # These files do not appear in the build result of the old build. This
   238 # These files do not appear in the build result of the old build. This
   239 # is because they are generated sources, but the AUTO_JAVA_FILES won't
   239 # is because they are generated sources, but the AUTO_JAVA_FILES won't
   240 # pick them up since they aren't generated when the source dirs are 
   240 # pick them up since they aren't generated when the source dirs are
   241 # searched and they aren't referenced by any other classes so they won't
   241 # searched and they aren't referenced by any other classes so they won't
   242 # be picked up by implicit compilation. On a rebuild, they are picked up
   242 # be picked up by implicit compilation. On a rebuild, they are picked up
   243 # and compiled. Exclude them here to produce the same rt.jar as the old 
   243 # and compiled. Exclude them here to produce the same rt.jar as the old
   244 # build does when building just once.
   244 # build does when building just once.
   245 EXFILES+=javax/swing/plaf/nimbus/InternalFrameTitlePanePainter.java \
   245 EXFILES += javax/swing/plaf/nimbus/InternalFrameTitlePanePainter.java \
   246 	 javax/swing/plaf/nimbus/OptionPaneMessageAreaPainter.java \
   246     javax/swing/plaf/nimbus/OptionPaneMessageAreaPainter.java \
   247 	 javax/swing/plaf/nimbus/ScrollBarPainter.java \
   247     javax/swing/plaf/nimbus/ScrollBarPainter.java \
   248 	 javax/swing/plaf/nimbus/SliderPainter.java \
   248     javax/swing/plaf/nimbus/SliderPainter.java \
   249 	 javax/swing/plaf/nimbus/SpinnerPainter.java \
   249     javax/swing/plaf/nimbus/SpinnerPainter.java \
   250 	 javax/swing/plaf/nimbus/SplitPanePainter.java \
   250     javax/swing/plaf/nimbus/SplitPanePainter.java \
   251 	 javax/swing/plaf/nimbus/TabbedPanePainter.java
   251     javax/swing/plaf/nimbus/TabbedPanePainter.java
   252 
   252 
   253 # Acquire a list of files that should be copied straight over to the classes.
   253 # Acquire a list of files that should be copied straight over to the classes.
   254 include CopyIntoClasses.gmk
   254 include CopyIntoClasses.gmk
   255 # Now we have COPY_PATTERNS, COPY_FILES and COPY_EXTRA
   255 # Now we have COPY_PATTERNS, COPY_FILES and COPY_EXTRA
   256 
   256 
   257 ifndef OPENJDK
   257 ifndef OPENJDK
   258     CLOSED_SRC_DIRS:=$(JDK_TOPDIR)/src/closed/share/classes \
   258   CLOSED_SRC_DIRS := $(JDK_TOPDIR)/src/closed/share/classes \
   259 		     $(JDK_TOPDIR)/src/closed/$(OPENJDK_TARGET_OS_API_DIR)/classes
   259       $(JDK_TOPDIR)/src/closed/$(OPENJDK_TARGET_OS_API_DIR)/classes
   260 endif
   260 endif
   261 
   261 
   262 MACOSX_SRC_DIRS :=
   262 MACOSX_SRC_DIRS :=
   263 ifeq ($(OPENJDK_TARGET_OS),macosx)
   263 ifeq ($(OPENJDK_TARGET_OS), macosx)
   264      MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes
   264   MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes
   265 
   265 
   266      # this files are duplicated in MACOSX_SRC_DIRS
   266   # this files are duplicated in MACOSX_SRC_DIRS
   267      EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \
   267   EXFILES += $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \
   268                $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \
   268       $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \
   269                $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \
   269       $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \
   270                $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java \
   270       $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java \
   271                $(JDK_TOPDIR)/src/solaris/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \
   271       $(JDK_TOPDIR)/src/solaris/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \
   272                $(JDK_TOPDIR)/src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java
   272       $(JDK_TOPDIR)/src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java
   273 
   273 
   274      # JObjC.jar contains 1.5 byte-code...so skip it here :-(
   274   # JObjC.jar contains 1.5 byte-code...so skip it here :-(
   275      # MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/jobjc/src
   275   # MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/jobjc/src
   276      # EXCLUDES+= tests/java/com/apple/jobjc
   276   # EXCLUDES += tests/java/com/apple/jobjc
   277 
   277 
   278      EXCLUDES+= com/apple/jobjc
   278   EXCLUDES += com/apple/jobjc
   279 endif
   279 endif
   280 
   280 
   281 # The exception handling of swing beaninfo
   281 # The exception handling of swing beaninfo
   282 # These resources violates the convention of having code and resources together under
   282 # These resources violates the convention of having code and resources together under
   283 # $(JDK_TOPDIR)/src/.../classes directories
   283 # $(JDK_TOPDIR)/src/.../classes directories
   286 
   286 
   287 # The JDK_USER_DEFINED_FILTER is a poor man's incremental build: by specifying
   287 # The JDK_USER_DEFINED_FILTER is a poor man's incremental build: by specifying
   288 # JDK_FILTER at the make command line, only a subset of the JDK java files will
   288 # JDK_FILTER at the make command line, only a subset of the JDK java files will
   289 # be recompiled. If multiple paths are separated by comma, convert that into a
   289 # be recompiled. If multiple paths are separated by comma, convert that into a
   290 # space separated list.
   290 # space separated list.
   291 JDK_USER_DEFINED_FILTER:=$(strip $(subst $(COMMA),$(SPACE),$(JDK_FILTER)))
   291 JDK_USER_DEFINED_FILTER := $(strip $(subst $(COMMA),$(SPACE), $(JDK_FILTER)))
   292 
   292 
   293 $(eval $(call SetupJavaCompilation,BUILD_JDK,\
   293 $(eval $(call SetupJavaCompilation,BUILD_JDK, \
   294                 SETUP:=GENERATE_JDKBYTECODE,\
   294     SETUP := GENERATE_JDKBYTECODE, \
   295 		SRC:=$(JDK_TOPDIR)/src/share/classes \
   295     SRC := $(JDK_TOPDIR)/src/share/classes \
   296 		     $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \
   296          $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \
   297 		     $(MACOSX_SRC_DIRS) \
   297          $(MACOSX_SRC_DIRS) \
   298 		     $(JDK_OUTPUTDIR)/gensrc \
   298          $(JDK_OUTPUTDIR)/gensrc \
   299 		     $(JDK_OUTPUTDIR)/gensrc_no_srczip \
   299          $(JDK_OUTPUTDIR)/gensrc_no_srczip \
   300 		     $(CLOSED_SRC_DIRS),\
   300          $(CLOSED_SRC_DIRS), \
   301 		INCLUDES:=$(JDK_USER_DEFINED_FILTER),\
   301     INCLUDES := $(JDK_USER_DEFINED_FILTER), \
   302 		EXCLUDES:=$(EXCLUDES),\
   302     EXCLUDES := $(EXCLUDES), \
   303 		EXCLUDE_FILES:=$(EXFILES),\
   303     EXCLUDE_FILES := $(EXFILES), \
   304 		BIN:=$(JDK_OUTPUTDIR)/classes,\
   304     BIN := $(JDK_OUTPUTDIR)/classes, \
   305 		COPY:=$(COPY_PATTERNS),\
   305     COPY := $(COPY_PATTERNS), \
   306 		COPY_FILES:=$(COPY_FILES),\
   306     COPY_FILES := $(COPY_FILES), \
   307 		HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers))
   307     HEADERS := $(JDK_OUTPUTDIR)/gensrc_headers))
   308 
   308 
   309 ##########################################################################################
   309 ##########################################################################################
   310 
   310 
   311 ifndef OPENJDK
   311 ifndef OPENJDK
   312 
   312 
   313     $(eval $(call SetupJavaCompilation,BUILD_ALTCLASSES,\
   313   $(eval $(call SetupJavaCompilation,BUILD_ALTCLASSES, \
   314 		SETUP:=GENERATE_JDKBYTECODE,\
   314       SETUP := GENERATE_JDKBYTECODE, \
   315 		SRC:=$(JDK_TOPDIR)/src/closed/share/altclasses, \
   315       SRC := $(JDK_TOPDIR)/src/closed/share/altclasses, \
   316 		BIN:=$(JDK_OUTPUTDIR)/altclasses_classes))
   316       BIN := $(JDK_OUTPUTDIR)/altclasses_classes))
   317 
   317 
   318     $(BUILD_ALTCLASSES): $(BUILD_JDK)
   318   $(BUILD_ALTCLASSES): $(BUILD_JDK)
   319 
   319 
   320 endif
   320 endif
   321 
   321 
   322 ##########################################################################################
   322 ##########################################################################################
   323 
   323 
   325 	$(MKDIR) -p $(@D)
   325 	$(MKDIR) -p $(@D)
   326 	$(TOUCH) $@
   326 	$(TOUCH) $@
   327 
   327 
   328 ##########################################################################################
   328 ##########################################################################################
   329 
   329 
   330 ifeq ($(OPENJDK_TARGET_OS),macosx)
   330 ifeq ($(OPENJDK_TARGET_OS), macosx)
   331 #
   331   #
   332 # JObjC.jar is compiled with BOOT_JAVAC which (may) not support the "-h" flag.
   332   # JObjC.jar is compiled with BOOT_JAVAC which (may) not support the "-h" flag.
   333 #   so we first compile classes with BOOT_JAVAC and then with JDK_JAVAC :-(
   333   # so we first compile classes with BOOT_JAVAC and then with JDK_JAVAC :-(
   334 #
   334   #
   335 $(eval $(call SetupJavaCompiler,GENERATE_15BYTECODE,\
   335   $(eval $(call SetupJavaCompiler,GENERATE_15BYTECODE, \
   336      JAVAC:=$(JAVAC),\
   336       JAVAC := $(JAVAC), \
   337      FLAGS:=-source 1.5 -target 1.5 -g -bootclasspath $(BOOT_RTJAR) -cp $(JDK_OUTPUTDIR)/../langtools/dist/lib/classes.jar $(DISABLE_WARNINGS),\
   337       FLAGS := -source 1.5 -target 1.5 -g -bootclasspath $(BOOT_RTJAR) -cp $(JDK_OUTPUTDIR)/../langtools/dist/lib/classes.jar $(DISABLE_WARNINGS), \
   338      SERVER_DIR:=$(SJAVAC_SERVER_DIR),\
   338       SERVER_DIR := $(SJAVAC_SERVER_DIR), \
   339      SERVER_JVM:=$(SJAVAC_SERVER_JAVA)))
   339       SERVER_JVM := $(SJAVAC_SERVER_JAVA)))
   340 
   340 
   341 $(eval $(call SetupJavaCompilation,BUILD_JOBJC,\
   341   $(eval $(call SetupJavaCompilation,BUILD_JOBJC, \
   342 		SETUP:=GENERATE_15BYTECODE,\
   342       SETUP := GENERATE_15BYTECODE, \
   343 		DISABLE_SJAVAC:=true,\
   343       DISABLE_SJAVAC := true, \
   344 		SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
   344       SRC := $(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
   345 		     $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
   345           $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
   346 		     $(JDK_OUTPUTDIR)/gensrc_jobjc/src, \
   346           $(JDK_OUTPUTDIR)/gensrc_jobjc/src, \
   347 		INCLUDES := com/apple/jobjc,\
   347       INCLUDES := com/apple/jobjc, \
   348                 EXCLUDES := tests/java/com/apple/jobjc,\
   348       EXCLUDES := tests/java/com/apple/jobjc, \
   349 		BIN:=$(JDK_OUTPUTDIR)/jobjc_classes,\
   349       BIN := $(JDK_OUTPUTDIR)/jobjc_classes, \
   350 		JAR:=$(JDK_OUTPUTDIR)/lib/JObjC.jar, \
   350       JAR := $(JDK_OUTPUTDIR)/lib/JObjC.jar, \
   351 		JARINDEX := true))
   351       JARINDEX := true))
   352 
   352 
   353 $(BUILD_JOBJC) : $(BUILD_JDK)
   353   $(BUILD_JOBJC): $(BUILD_JDK)
   354 
   354 
   355 $(eval $(call SetupJavaCompilation,BUILD_JOBJC_HEADERS,\
   355   $(eval $(call SetupJavaCompilation,BUILD_JOBJC_HEADERS, \
   356 		SETUP:=GENERATE_JDKBYTECODE,\
   356       SETUP := GENERATE_JDKBYTECODE, \
   357 		SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
   357       SRC := $(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
   358 		     $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
   358           $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
   359 		     $(JDK_OUTPUTDIR)/gensrc_jobjc/src, \
   359           $(JDK_OUTPUTDIR)/gensrc_jobjc/src, \
   360 		INCLUDES := com/apple/jobjc,\
   360       INCLUDES := com/apple/jobjc, \
   361                 EXCLUDES := tests/java/com/apple/jobjc,\
   361       EXCLUDES := tests/java/com/apple/jobjc, \
   362 		BIN:=$(JDK_OUTPUTDIR)/jobjc_classes_headers,\
   362       BIN := $(JDK_OUTPUTDIR)/jobjc_classes_headers, \
   363 		HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers_jobjc))
   363       HEADERS := $(JDK_OUTPUTDIR)/gensrc_headers_jobjc))
   364 
   364 
   365 $(BUILD_JOBJC_HEADERS) : $(BUILD_JDK)
   365 $(BUILD_JOBJC_HEADERS): $(BUILD_JDK)
   366 
   366 
   367 endif
   367 endif
   368 
   368 
   369 ##########################################################################################
   369 ##########################################################################################
   370 
   370 
   371 ifndef OPENJDK
   371 ifndef OPENJDK
   372 ifeq ($(OPENJDK_TARGET_OS), windows)
   372   ifeq ($(OPENJDK_TARGET_OS), windows)
   373 ifeq ($(OPENJDK_TARGET_CPU_BITS), 32)
   373     ifeq ($(OPENJDK_TARGET_CPU_BITS), 32)
   374     $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_32,\
   374       $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_32, \
   375 		SETUP:=GENERATE_JDKBYTECODE,\
   375           SETUP := GENERATE_JDKBYTECODE, \
   376 		JAVAC_FLAGS:=-cp $(JDK_OUTPUTDIR)/classes,\
   376           JAVAC_FLAGS := -cp $(JDK_OUTPUTDIR)/classes, \
   377 		SRC:=$(JDK_OUTPUTDIR)/gensrc_ab/32bit,\
   377           SRC := $(JDK_OUTPUTDIR)/gensrc_ab/32bit, \
   378 		BIN:=$(JDK_OUTPUTDIR)/classes_ab/32bit))
   378           BIN := $(JDK_OUTPUTDIR)/classes_ab/32bit))
   379 
   379 
   380     $(BUILD_ACCESSBRIDGE_32): $(BUILD_JDK)
   380       $(BUILD_ACCESSBRIDGE_32): $(BUILD_JDK)
   381 
   381 
   382     $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_LEGACY,\
   382       $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_LEGACY, \
   383 		SETUP:=GENERATE_JDKBYTECODE,\
   383           SETUP := GENERATE_JDKBYTECODE, \
   384 		JAVAC_FLAGS:=-cp $(JDK_OUTPUTDIR)/classes,\
   384           JAVAC_FLAGS := -cp $(JDK_OUTPUTDIR)/classes, \
   385 		SRC:=$(JDK_OUTPUTDIR)/gensrc_ab/legacy,\
   385           SRC := $(JDK_OUTPUTDIR)/gensrc_ab/legacy, \
   386 		BIN:=$(JDK_OUTPUTDIR)/classes_ab/legacy))
   386           BIN := $(JDK_OUTPUTDIR)/classes_ab/legacy))
   387 
   387 
   388     $(BUILD_ACCESSBRIDGE_LEGACY): $(BUILD_JDK)
   388       $(BUILD_ACCESSBRIDGE_LEGACY): $(BUILD_JDK)
   389 
   389 
   390 else
   390     else
   391 
   391 
   392     $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_64,\
   392       $(eval $(call SetupJavaCompilation,BUILD_ACCESSBRIDGE_64, \
   393 		SETUP:=GENERATE_JDKBYTECODE,\
   393           SETUP := GENERATE_JDKBYTECODE, \
   394 		JAVAC_FLAGS:=-cp $(JDK_OUTPUTDIR)/classes,\
   394           JAVAC_FLAGS := -cp $(JDK_OUTPUTDIR)/classes, \
   395 		SRC:=$(JDK_OUTPUTDIR)/gensrc_ab/64bit,\
   395           SRC := $(JDK_OUTPUTDIR)/gensrc_ab/64bit, \
   396 		BIN:=$(JDK_OUTPUTDIR)/classes_ab/64bit))
   396           BIN := $(JDK_OUTPUTDIR)/classes_ab/64bit))
   397 
   397 
   398     $(BUILD_ACCESSBRIDGE_64): $(BUILD_JDK)
   398       $(BUILD_ACCESSBRIDGE_64): $(BUILD_JDK)
   399 
   399 
   400 endif
   400     endif
   401 endif
   401   endif
   402 endif
   402 endif
   403 
   403 
   404 ##########################################################################################
   404 ##########################################################################################
   405 
   405 
   406 all: $(BUILD_JDK) $(BUILD_ALTCLASSES) $(BUILD_JOBJC) $(BUILD_JOBJC_HEADERS) $(COPY_EXTRA) \
   406 all: $(BUILD_JDK) $(BUILD_ALTCLASSES) $(BUILD_JOBJC) $(BUILD_JOBJC_HEADERS) $(COPY_EXTRA) \
   407 	$(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \
   407     $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \
   408 	$(BUILD_ACCESSBRIDGE_32) $(BUILD_ACCESSBRIDGE_64) \
   408     $(BUILD_ACCESSBRIDGE_32) $(BUILD_ACCESSBRIDGE_64) \
   409 	$(BUILD_ACCESSBRIDGE_LEGACY)
   409     $(BUILD_ACCESSBRIDGE_LEGACY)
   410 
   410 
   411 .PHONY: all
   411 .PHONY: all