[OpenJDK 2D-Dev] RFR: JDK-8003593: build-infra: Paths to optional platform-specific files should not be hardwired to src/closed

Erik Joelsson erik.joelsson at oracle.com
Fri Jul 1 17:47:06 UTC 2016

The separation between OpenJDK and Oracle's closed additions have 
historically been quite messy. The build-infra project has tried to 
improve on this, but failed in one regard, which was to hard code all 
references to "closed" source instead of using a variable. I decided to 
finally fix this. Along the way, I found that there weren't that many 
references left in open makefiles, which is a good thing. OpenJDK should 
not be tainted with Oracle specific stuff unnecessarily. So then I 
decided to completely remove the last references as part of fixing this 
bug. With this patch, the following is now in effect:

* There is no longer a variable named "OPENJDK". That variable was 
confusing and got in the way of other people trying to add custom 
additions to the OpenJDK code base. In configure there is now only 
"SUPPRESS_CUSTOM_SOURCE" which is set using the --enable-openjdk-only 
option. This variable can be read by custom extensions to configure and 
should be used to disable those custom extensions.

* There is no Oracle specific logic left in open makefiles. All 
customizations and references to custom source should be done in custom 
makefiles, included using the IncludeCustomExtension macro. I have 
converted the last uses of "ifndef OPENJDK" to such constructs.

I have moved all Oracle specific mapfiles out of the open jdk repository.

Specifically to 2d-dev reviewers, I have moved 
jdk/src/java.desktop/share/classes/sun/dc/DuctusRenderingEngine.java out 
of the open as well. This file has been explicitly excluded from all 
open builds since forever AFAICT. I see no reason for it be in the open. 
If someone would like to read the source outside of Oracle, it will 
still be in the hg history.

I have tested these changes extensively using the compare script and 
-testset buildinfra in JPRT. This covers a wide variety of build 
configurations so I feel pretty confident that it won't break anything.

Bug: https://bugs.openjdk.java.net/browse/JDK-8003593
Webrev: http://cr.openjdk.java.net/~erikj/8003593/webrev.01/


More information about the 2d-dev mailing list