Skip to content
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

Flag changes and minor fixes for Open XL compile #7322

Merged
merged 1 commit into from
Jun 5, 2024

Conversation

Deigue
Copy link
Contributor

@Deigue Deigue commented Apr 25, 2024

Some of the remaining compiling issues require some updates to the existing ZOS flags and conditionals in code in order to compile properly using Open XL for z/OS. Tested to ensure that XLC remains compiling properly and passes its tests.

(This is one part of the multiple changes added for supporting Open XL compilation on OMR)

@babsingh
Copy link
Contributor

jenkins build all

1 similar comment
@babsingh
Copy link
Contributor

jenkins build all

@babsingh
Copy link
Contributor

@Deigue The zOS PR build has failed to build: https://ci.eclipse.org/omr/job/PullRequest-zos_390-64/4398/. Please investigate the errors.

@AdamBrousseau Other PR builds failed due to machine issues. Are these known infra issues?

@Deigue
Copy link
Contributor Author

Deigue commented May 27, 2024

When going to the full log I am seeing:

09:01:59  [ 94%] Building CXX object fvtest/rastest/CMakeFiles/omrsubscribertest.dir/__/__/util/main_function/main_function.cpp.o
09:02:00  [ 94%] Linking CXX executable ../../omrsubscribertest
09:02:00  make[2]: *** No rule to make target 'libomrsig.x', needed by 'omrsigtest'.  Stop.
09:02:00  make[2]: *** Waiting for unfinished jobs....
09:02:00  [ 94%] Building CXX object fvtest/sigtest/CMakeFiles/omrsigtest.dir/__/__/util/main_function/main_function.cpp.o
09:02:01  CMakeFiles/Makefile2:3742: recipe for target 'fvtest/sigtest/CMakeFiles/omrsigtest.dir/all' failed
09:02:01  make[1]: *** [fvtest/sigtest/CMakeFiles/omrsigtest.dir/all] Error 2
09:02:01  make[1]: *** Waiting for unfinished jobs....

Hinting towards the problem perhaps being something related to sigTest.cpp , since the changes there were only the OPEN_THREADS tweak, not sure what is the underlying issue behind the .x file generated. I do see its part of omrsigtest , so might be able to double check and see whats happen by making/running that standalone.

@babsingh
Copy link
Contributor

babsingh commented Jun 3, 2024

jenkins build all

@Deigue
Copy link
Contributor Author

Deigue commented Jun 3, 2024

Need to double check this build with XLC (looping in Open J9 compilation) by building jdk21 zos.
as well as trying to compile Open XL with Open J9, to ensure it is reaching as far (as per current progress), since the zos_rename_exports.cmake tweak was only throwing errors during compilation of Open J9 with Open XL.

@Deigue Deigue force-pushed the openxl-flags branch 2 times, most recently from 65de917 to a8b5469 Compare June 3, 2024 20:40
@Deigue
Copy link
Contributor Author

Deigue commented Jun 3, 2024

@babsingh So I had to tweak stuff around a bit to actually get everything to work as expected with Open XL (these changes are used when compiling with Open J9 with jdk21 zos)

I ended up having to change it to the following below:

if(EXISTS ${SRC_FILE} AND NOT "${SRC_FILE}" STREQUAL "${DEST_FILE}")
	file(RENAME "${SRC_FILE}" "${DEST_FILE}")
endif()

# Work around a bug in CMake where it looks for .x files in the runime dir rather than the archive dir.
if(EXISTS ${DEST_FILE} AND NOT "${ARCHIVE_DIR}" STREQUAL "${RUNTIME_DIR}")
	file(COPY "${DEST_FILE}" DESTINATION "${RUNTIME_DIR}")
endif()

Still double-checking the XLC build and will get back to you once it clears up.

@babsingh
Copy link
Contributor

babsingh commented Jun 4, 2024

jenkins build zos

@Deigue
Copy link
Contributor Author

Deigue commented Jun 4, 2024

Doing a full XLC build with only OMR branch pointing to this PR and saw this error, not sure if its related, since I can't see any direct relation yet.

[ 69%] Building CXX object runtime/compiler/CMakeFiles/j9jit.dir/codegen/J9CodeGenerator.cpp.o
openj9/runtime/compiler/runtime/J9CodeCacheManager.hpp", line 59.70: CCN5274 (S) The name lookup for "TR_EnableCodeCacheDisclaiming" did not find a declaration.
CCN0793(I) Compilation failed for file openj9/runtime/compiler/codegen/J9CodeGenerator.cpp.  Object file not created.
make[6]: *** [runtime/compiler/CMakeFiles/j9jit.dir/build.make:270: runtime/compiler/CMakeFiles/j9jit.dir/codegen/J9CodeGenerator.cpp.o] Error 12

edit: Oh I notice its semi-recent (within a week or 2 change), perhaps I need to rebase OMR.

Some of the remaining compiling issues require some updates
to the existing ZOS flags in order to compile properly using
Open XL for z/OS. Tested to ensure that XLC remains compiling properly
and passes its tests.

Bump to D_OPEN_THREADS=3 as recommended by Open XL devs to enable/expose
pthread functions that may be used and without which can cause compilation
issues.
source: https://www.ibm.com/docs/en/zos/2.5.0?topic=files-feature-test-macros

Signed-off-by: Gaurav Chaudhari <gaurav.chaudhari@ibm.com>
@babsingh
Copy link
Contributor

babsingh commented Jun 4, 2024

jenkins build all

@babsingh babsingh merged commit 753ebae into eclipse-omr:master Jun 5, 2024
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants