diff --git a/.gitlab/ci/configure_fedora39_java.cmake b/.gitlab/ci/configure_fedora39_java.cmake index 7730670a912205a1b9bce5ef0a2d9654b3e8ccdd..12d1d9c9b30ce9763c27c101f0f91481d2e4ca7e 100644 --- a/.gitlab/ci/configure_fedora39_java.cmake +++ b/.gitlab/ci/configure_fedora39_java.cmake @@ -3,7 +3,7 @@ set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE) include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39.cmake") -set(MAVEN_LOCAL_NATIVE_NAME "Linux-amd64") +set(MAVEN_LOCAL_NATIVE_NAME "linux-amd" CACHE STRING "" FORCE) set(VTK_GENERATE_SPDX OFF CACHE BOOL "" FORCE) set(VTK_MODULE_ENABLE_VTK_fides NO CACHE STRING "") diff --git a/.gitlab/ci/configure_macos_arm64_java.cmake b/.gitlab/ci/configure_macos_arm64_java.cmake index c203228c9ab5a48e4be5d4883f8423c8304b5d96..f590c264b30a25a876ed7e8bde1e4eb2232cb846 100644 --- a/.gitlab/ci/configure_macos_arm64_java.cmake +++ b/.gitlab/ci/configure_macos_arm64_java.cmake @@ -3,7 +3,7 @@ set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE) include("${CMAKE_CURRENT_LIST_DIR}/configure_macos.cmake") -set(MAVEN_LOCAL_NATIVE_NAME "Darwin-arm64") +set(MAVEN_LOCAL_NATIVE_NAME "darwin-arm" CACHE STRING "" FORCE) set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0" CACHE STRING "") diff --git a/.gitlab/ci/configure_macos_x86_64_java.cmake b/.gitlab/ci/configure_macos_x86_64_java.cmake index cb5a54abbe2f40da12092ae6d9fe830faf4153eb..ff5e7ca4f30112a137c95ce316a0d8ffa5e6e444 100644 --- a/.gitlab/ci/configure_macos_x86_64_java.cmake +++ b/.gitlab/ci/configure_macos_x86_64_java.cmake @@ -3,7 +3,7 @@ set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE) include("${CMAKE_CURRENT_LIST_DIR}/configure_macos.cmake") -set(MAVEN_LOCAL_NATIVE_NAME "Darwin-amd64") +set(MAVEN_LOCAL_NATIVE_NAME "darwin-amd" CACHE STRING "" FORCE) # Ensure that we're targeting 11.0. set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0" CACHE STRING "") diff --git a/.gitlab/ci/configure_options.cmake b/.gitlab/ci/configure_options.cmake index 5348c4403c004b3aa2a1b8c7af0d27598e088764..59b3d0c29b3271ac802fbae80841afbe72c70c3f 100644 --- a/.gitlab/ci/configure_options.cmake +++ b/.gitlab/ci/configure_options.cmake @@ -50,27 +50,30 @@ if ("$ENV{CMAKE_CONFIGURATION}" MATCHES "java") set(BUILD_TESTING OFF CACHE BOOL "" FORCE) set(CMAKE_INSTALL_JNILIBDIR "" CACHE STRING "") set(JOGL_VERSION "2.3.2" CACHE STRING "") + # Naming is <arch-platform> since some maven versions fail to properly parse + # the artifact name when numbers are trailing in the classifer name. + set(MAVEN_NATIVE_ARTIFACTS "darwin-amd;darwin-arm;linux-amd;windows-amd" CACHE STRING "" FORCE) set(MAVEN_VTK_ARTIFACT_SUFFIX "-java${VTK_JAVA_TARGET_VERSION}" CACHE STRING "") - set(MAVEN_VTK_SNAPSHOT "-SNAPSHOT" CACHE STRING "") + # Disable snapshots for tag releases and also when the env variable + # VTK_JAVA_FORCE_RELEASE is defined through the Gitlab schedule pipeline UI. + # Note that VTK_JAVA_FORCE_RELEASE is used to create/override VTK java + # releases. + if (NOT DEFINED ENV{CI_COMMIT_TAG} AND NOT DEFINED ENV{VTK_JAVA_FORCE_RELEASE}) + set(MAVEN_VTK_SNAPSHOT "-SNAPSHOT" CACHE STRING "") + endif() set(VTK_BUILD_TESTING OFF CACHE BOOL "" FORCE) - set(VTK_DEBUG_LEAKS OFF CACHE BOOL "" FORCE) set(VTK_CUSTOM_LIBRARY_SOVERSION "" CACHE STRING "") set(VTK_CUSTOM_LIBRARY_VERSION "" CACHE STRING "") + set(VTK_DEBUG_LEAKS OFF CACHE BOOL "" FORCE) set(VTK_GROUP_ENABLE_Rendering "YES" CACHE STRING "") set(VTK_JAVA_JOGL_COMPONENT "YES" CACHE STRING "") + set(VTK_MODULE_ENABLE_VTK_RenderingOpenXR NO CACHE STRING "" FORCE) set(VTK_MODULE_ENABLE_VTK_TestingCore NO CACHE STRING "") set(VTK_MODULE_ENABLE_VTK_TestingDataModel NO CACHE STRING "") set(VTK_MODULE_ENABLE_VTK_TestingGenericBridge NO STRING STRING "") set(VTK_MODULE_ENABLE_VTK_TestingIOSQL NO CACHE STRING "") set(VTK_MODULE_ENABLE_VTK_TestingRendering NO CACHE STRING "") - set(VTK_MODULE_ENABLE_VTK_RenderingOpenXR NO CACHE STRING "" FORCE) set(VTK_VERSIONED_INSTALL "OFF" CACHE BOOL "" FORCE) - set(MAVEN_NATIVE_ARTIFACTS - Darwin-amd64 - Darwin-arm64 - Linux-amd64 - Windows-amd64 - ) endif() # qt diff --git a/.gitlab/ci/configure_windows_vs2022_java.cmake b/.gitlab/ci/configure_windows_vs2022_java.cmake index 3c5fdb0d9dccb4e6acc2112148b9568903b6b4e1..f68bfb2126d6ffaf998936c6cd20e1edfeb86e11 100644 --- a/.gitlab/ci/configure_windows_vs2022_java.cmake +++ b/.gitlab/ci/configure_windows_vs2022_java.cmake @@ -5,6 +5,6 @@ set(VTK_MODULE_ENABLE_VTK_vtkvtkm NO CACHE STRING "") # Java Wrap errors in wind include("${CMAKE_CURRENT_LIST_DIR}/configure_windows.cmake") -set(MAVEN_LOCAL_NATIVE_NAME "Windows-amd64") +set(MAVEN_LOCAL_NATIVE_NAME "windows-amd" CACHE STRING "" FORCE) set(JOGL_GLUE "$ENV{GIT_CLONE_PATH}/.gitlab/m2/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar" CACHE FILEPATH "") set(JOGL_LIB "$ENV{GIT_CLONE_PATH}/.gitlab/m2/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar" CACHE FILEPATH "") diff --git a/Wrapping/Java/CMakeLists.txt b/Wrapping/Java/CMakeLists.txt index 2d923d9ad9d24ef6fa9c0b2c48948bc658040e56..0641368800fa9374e42ab74ae865b87de8fd1511 100644 --- a/Wrapping/Java/CMakeLists.txt +++ b/Wrapping/Java/CMakeLists.txt @@ -400,10 +400,11 @@ endif() if(VTK_JAVA_INSTALL) set(MAVEN_NATIVE_ARTIFACT_XML) foreach(native_name ${MAVEN_NATIVE_ARTIFACTS}) - string(APPEND MAVEN_NATIVE_ARTIFACT_XML "${MAVEN_NATIVE_ARTIFACT_XML}\n <artifact><file>vtk${MAVEN_VTK_ARTIFACT_SUFFIX}-${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}-natives-${native_name}.jar</file><classifier>natives-${native_name}</classifier><type>jar</type></artifact>") + string(APPEND MAVEN_NATIVE_ARTIFACT_XML + "\n <artifact><file>vtk${MAVEN_VTK_ARTIFACT_SUFFIX}-${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}-natives-${native_name}.jar</file><classifier>natives-${native_name}</classifier><type>jar</type></artifact>") endforeach() if(VTK_JAVA_JOGL_COMPONENT) - string(APPEND MAVEN_DEPENDENCY_XML "${MAVEN_DEPENDENCY_XML}\n <dependency><groupId>org.jogamp.jogl</groupId><artifactId>jogl-all-main</artifactId><version>${JOGL_VERSION}</version></dependency>\n <dependency><groupId>org.jogamp.gluegen</groupId><artifactId>gluegen-rt-main</artifactId><version>${JOGL_VERSION}</version></dependency>") + string(APPEND MAVEN_DEPENDENCY_XML "\n <dependency><groupId>org.jogamp.jogl</groupId><artifactId>jogl-all-main</artifactId><version>${JOGL_VERSION}</version></dependency>\n <dependency><groupId>org.jogamp.gluegen</groupId><artifactId>gluegen-rt-main</artifactId><version>${JOGL_VERSION}</version></dependency>") endif() configure_file(JavaInstall.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/JavaInstall.cmake @ONLY) diff --git a/Wrapping/Java/Maven/pom.xml.in b/Wrapping/Java/Maven/pom.xml.in index ea79176bf337c9d5cfd0d2ec6653fcec4cacb9d2..d5376a362e1dfabdf2ef5a038f910dba04d67c5b 100644 --- a/Wrapping/Java/Maven/pom.xml.in +++ b/Wrapping/Java/Maven/pom.xml.in @@ -54,8 +54,9 @@ <distribution>repo</distribution> </license> </licenses> - <dependencies>@MAVEN_DEPENDENCY_XML@ - </dependencies> + <dependencies> +@MAVEN_DEPENDENCY_XML@ + </dependencies> <distributionManagement> <!-- Warning: Generating release artifacts is only meant to be used after a compilation of VTK across all the targeted platforms while overriding @@ -140,7 +141,7 @@ <file>vtk-@VTK_MAJOR_VERSION@.@VTK_MINOR_VERSION@.jar</file> <type>jar</type> </artifact> - @MAVEN_NATIVE_ARTIFACT_XML@ +@MAVEN_NATIVE_ARTIFACT_XML@ </artifacts> </configuration> </execution>