File plplot-reproducible-jar-mtime.patch of Package plplot
--- plplot-5.15.0/examples/java/CMakeLists.txt 2024-09-26 18:42:42.679062899 +0200
+++ plplot-5.15.0/examples/java/CMakeLists.txt 2024-09-26 19:09:37.234642501 +0200
@@ -60,6 +60,15 @@
"33"
)
+if (DEFINED ENV{SOURCE_DATE_EPOCH})
+ execute_process(
+ COMMAND "date" "-u" "-d" "@$ENV{SOURCE_DATE_EPOCH}" "+%Y-%m-%dT%H:%M:%SZ"
+ OUTPUT_VARIABLE COMPILATION_DATE
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+else ()
+ string (TIMESTAMP COMPILATION_DATE "+%Y-%m-%dT%H:%M:%SZ")
+endif ()
+
if(CORE_BUILD)
set(java_SRCS)
foreach(STRING_INDEX ${java_STRING_INDICES})
@@ -133,7 +142,8 @@
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/plplot.jar
COMMAND ${CMAKE_Java_ARCHIVE}
- -cf ${CMAKE_CURRENT_BINARY_DIR}/plplot.jar -C ${CMAKE_BINARY_DIR}/bindings/java plplot/core -C ${CMAKE_CURRENT_BINARY_DIR} plplot/examples
+ --date=${COMPILATION_DATE} --create --file=${CMAKE_CURRENT_BINARY_DIR}/plplot.jar
+ -C ${CMAKE_BINARY_DIR}/bindings/java plplot/core -C ${CMAKE_CURRENT_BINARY_DIR} plplot/examples
DEPENDS ${java_CLASSES} ${java_CORE_CLASSES}
)