Fix Java build ordering when building with parallel jobs (#6354)

This commit is contained in:
jhendersonHDF
2026-04-08 11:47:50 -05:00
committed by GitHub
parent c1fa9a9b8f
commit 7a62abb03d
3 changed files with 13 additions and 7 deletions
+1 -1
View File
@@ -147,7 +147,7 @@ else ()
set (H5EXAMPLE_JAVA_LIBRARY ${HDF5_LIBSH_TARGET})
endif ()
message (STATUS "HDF5 Example java lib: ${H5EXAMPLE_JAVA_LIBRARY} jars: ${HDF5_JAVA_INCLUDE_DIRS}")
set (H5EXAMPLE_JAVA_LIBRARIES ${HDF5_JAVA_HDF5_LIB_TARGET} ${H5EXAMPLE_JAVA_LIBRARY})
set (H5EXAMPLE_JAVA_LIBRARIES ${HDF5_JAVA_LIBRARY} ${H5EXAMPLE_JAVA_LIBRARY})
set (HDF5_LIBRARY_PATH ${CMAKE_TEST_OUTPUT_DIRECTORY})
message (STATUS "HDF5 Example java jar: ${HDF5_JAVA_HDF5_LIB_TARGET} path: ${CMAKE_TEST_OUTPUT_DIRECTORY}")
endif ()
+6 -3
View File
@@ -233,6 +233,9 @@ if (HDF5_ENABLE_MAVEN_DEPLOY)
# Export both JARs for installation
SET_GLOBAL_VARIABLE (HDF5_JAVA_JARS_TO_EXPORT "${HDF5_JAVA_JARS_TO_EXPORT};${HDF5_JAVA_UNIVERSAL_JAR_FILE}")
SET_GLOBAL_VARIABLE (HDF5_MAVEN_PLATFORM_JAR_FILE "${HDF5_JAVA_PLATFORM_JAR_FILE}")
# Set HDF5_JAVA_LIBRARY for examples to depend on
SET_GLOBAL_VARIABLE (HDF5_JAVA_LIBRARY ${HDF5_JAVA_UNIVERSAL_TARGET})
else ()
# Standard JAR creation without Maven classifiers
# Include FFM bindings if this is an FFM build
@@ -265,6 +268,9 @@ else ()
get_target_property (${HDF5_JAVA_HDF5_LIB_TARGET}_JAR_FILE ${HDF5_JAVA_HDF5_LIB_TARGET} JAR_FILE)
SET_GLOBAL_VARIABLE (HDF5_JAVA_JARS "${HDF5_JAVA_JARS};${${HDF5_JAVA_HDF5_LIB_TARGET}_JAR_FILE}")
SET_GLOBAL_VARIABLE (HDF5_JAVA_JARS_TO_EXPORT "${HDF5_JAVA_JARS_TO_EXPORT};${${HDF5_JAVA_HDF5_LIB_TARGET}_JAR_FILE}")
# Set HDF5_JAVA_LIBRARY for examples to depend on
SET_GLOBAL_VARIABLE (HDF5_JAVA_LIBRARY ${HDF5_JAVA_HDF5_LIB_TARGET})
endif ()
message (STATUS "HDF5 java jar: ${HDF5_JAVA_JARS}")
@@ -276,9 +282,6 @@ message (STATUS "HDF5 java export jar: ${HDF5_JAVA_JARS}")
add_dependencies (${HDF5_JAVA_HDF5_LIB_TARGET} ${HDF5_JAVA_JSRC_LIB_TARGET})
set_target_properties (${HDF5_JAVA_HDF5_LIB_TARGET} PROPERTIES FOLDER libraries/java)
# Set HDF5_JAVA_LIBRARY for examples to depend on
SET_GLOBAL_VARIABLE (HDF5_JAVA_LIBRARY ${HDF5_JAVA_HDF5_LIB_TARGET})
#-----------------------------------------------------------------------------
# Maven POM Generation
#-----------------------------------------------------------------------------
+6 -3
View File
@@ -208,6 +208,9 @@ if (HDF5_ENABLE_MAVEN_DEPLOY)
# Export both JARs for installation
SET_GLOBAL_VARIABLE (HDF5_JAVA_JARS_TO_EXPORT "${HDF5_JAVA_JARS_TO_EXPORT};${HDF5_JAVA_UNIVERSAL_JAR_FILE}")
SET_GLOBAL_VARIABLE (HDF5_MAVEN_PLATFORM_JAR_FILE "${HDF5_JAVA_PLATFORM_JAR_FILE}")
# Set HDF5_JAVA_LIBRARY for examples to depend on
SET_GLOBAL_VARIABLE (HDF5_JAVA_LIBRARY ${HDF5_JAVA_UNIVERSAL_TARGET})
else ()
# Standard JAR creation without Maven classifiers
add_jar (${HDF5_JAVA_HDF5_LIB_TARGET} OUTPUT_NAME "${HDF5_JAVA_HDF5_LIB_TARGET}-${HDF5_PACKAGE_VERSION}" MANIFEST ${PROJECT_BINARY_DIR}/Manifest.txt ${HDF5_JAVA_HDF_HDF5_CALLBACKS_SOURCES} ${HDF5_JAVA_HDF_HDF5_EXCEPTIONS_SOURCES} ${HDF5_JAVA_HDF_HDF5_STRUCTS_SOURCES} ${HDF5_JAVA_HDF_HDF5_SOURCES})
@@ -216,6 +219,9 @@ else ()
get_target_property (${HDF5_JAVA_HDF5_LIB_TARGET}_JAR_FILE ${HDF5_JAVA_HDF5_LIB_TARGET} JAR_FILE)
SET_GLOBAL_VARIABLE (HDF5_JAVA_JARS "${HDF5_JAVA_JARS};${${HDF5_JAVA_HDF5_LIB_TARGET}_JAR_FILE}")
SET_GLOBAL_VARIABLE (HDF5_JAVA_JARS_TO_EXPORT "${HDF5_JAVA_JARS_TO_EXPORT};${${HDF5_JAVA_HDF5_LIB_TARGET}_JAR_FILE}")
# Set HDF5_JAVA_LIBRARY for examples to depend on
SET_GLOBAL_VARIABLE (HDF5_JAVA_LIBRARY ${HDF5_JAVA_HDF5_LIB_TARGET})
endif ()
# Always export the platform-specific JAR for reference (used by Maven deployment)
@@ -226,9 +232,6 @@ message (STATUS "HDF5 JNI java lib: ${HDF5_JAVA_JNI_LIB_TARGET} jar: ${HDF5_JAVA
add_dependencies (${HDF5_JAVA_HDF5_LIB_TARGET} ${HDF5_JAVA_JNI_LIB_TARGET})
set_target_properties (${HDF5_JAVA_HDF5_LIB_TARGET} PROPERTIES FOLDER libraries/java)
# Set HDF5_JAVA_LIBRARY for examples to depend on
SET_GLOBAL_VARIABLE (HDF5_JAVA_LIBRARY ${HDF5_JAVA_HDF5_LIB_TARGET})
#-----------------------------------------------------------------------------
# Maven POM Generation
#-----------------------------------------------------------------------------