-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve support for builds with multiple configurations #249
Conversation
jenkins compile aix,osx,win,plinux jdknext |
The osx build hung for no obvious reason. https://ci.eclipse.org/openj9/job/Build_JDKnext_x86-64_mac_Personal/45 |
jenkins compile osx jdknext |
The second one found some diagnostic files |
Jenkins compile osx jdknext depends eclipse-omr/omr#5668 |
I don't think those are from the same build. If you look through the log at the corresponding time (2020-11-12T03:04:25) you won't find any messages that should accompany creation of those files. On the other hand, this can't be good (I believe this is the bootjdk talking):
|
The build is hung again. I didn't stop it.
|
Given the builds last night were all fine, and osx is failing to compile with this change for jdk11 and jdk15, plus the hangs for jdk16, I'd say this change is problematic for osx. |
Agreed, although it's not immediately clear why only OSX has trouble with this. |
* define J9JCL_SOURCES_DIR & J9JCL_SOURCES_DONEFILE in custom-spec.gmk and use as appropriate * move j9jcl preprocessing to a separate makefile * remove redundant definition of FixPath * remove unused macro OPENJ9_BIN_OR_LIB_DIR Signed-off-by: Keith W. Campbell <[email protected]>
ee15e75
to
2a8e8a4
Compare
As I explored a fix for this, I encountered the symptoms on Linux previously only seen on OSX. The updated code has been seen to work on Linux and OSX. |
Jenkins compile aix,osx,plinux,win jdknext |
module-deps.gmk
is based on the right set of modulesThe OpenJDK build system supports multiple configurations.
One example use might be building both with UMA and with cmake (while cmake development is ongoing):
Or you might be working on code sensitive to how references are represented [1]:
With multiple configurations, you can say
make CONF= reconfigure
ormake CONF= clean
, butmake CONF= images
would fail. You could say (for the first example):but that is somewhat tedious, and gets worse as the number of configuration grows. With these changes the shorter
make CONF= images
command will work.[1] see ibmruntimes/openj9-openjdk-jdk11#359