Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package native-platform for openSUSE:Factory 
checked in at 2024-09-25 21:55:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/native-platform (Old)
 and      /work/SRC/openSUSE:Factory/.native-platform.new.29891 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "native-platform"

Wed Sep 25 21:55:03 2024 rev:4 rq:1203520 version:0.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/native-platform/native-platform.changes  
2024-02-22 20:59:08.708543682 +0100
+++ 
/work/SRC/openSUSE:Factory/.native-platform.new.29891/native-platform.changes   
    2024-09-25 21:55:49.042585964 +0200
@@ -1,0 +2,9 @@
+Wed Sep 25 08:38:32 UTC 2024 - Fridrich Strba <[email protected]>
+
+- Added patch:
+  * reproducible-jar-mtime.patch
+    + Use SOURCE_DATE_EPOCH for reproducible jar mtime
+- Rename native-platform-0.7-Makefile to native-platform-Makefile
+  and modify to generate javadoc without hidden timestamps
+
+-------------------------------------------------------------------

Old:
----
  native-platform-0.7-Makefile

New:
----
  native-platform-Makefile
  reproducible-jar-mtime.patch

BETA DEBUG BEGIN:
  New:- Added patch:
  * reproducible-jar-mtime.patch
    + Use SOURCE_DATE_EPOCH for reproducible jar mtime
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ native-platform.spec ++++++
--- /var/tmp/diff_new_pack.3j18Oh/_old  2024-09-25 21:55:49.614609757 +0200
+++ /var/tmp/diff_new_pack.3j18Oh/_new  2024-09-25 21:55:49.614609757 +0200
@@ -24,14 +24,14 @@
 License:        Apache-2.0
 URL:            https://github.com/adammurdoch/native-platform
 Source0:        
https://github.com/adammurdoch/native-platform/archive/%{version}.tar.gz
-# From Debian
-Source4:        %{name}-0.7-Makefile
+Source4:        %{name}-Makefile
 # Try to load native library from /usr/lib*/native-platform
 # instead of extractDir or classpath.
 Patch0:         0001-Load-lib-from-system.patch
 # Use generate libraries without arch references
 # Add support for arm and other x64 arches
 Patch1:         0002-Use-library-name-without-arch.patch
+Patch2:         reproducible-jar-mtime.patch
 BuildRequires:  fdupes
 # build tools and deps
 BuildRequires:  gcc-c++
@@ -62,10 +62,13 @@
 find .  -name "*.jar" -delete
 find .  -name "*.class" -delete
 
+cp -p %{SOURCE4} Makefile
+
 %patch -P 0 -p1
 %patch -P 1 -p1
-
-cp -p %{SOURCE4} Makefile
+%if %{?pkg_vcmp:%pkg_vcmp java-devel >= 17}%{!?pkg_vcmp:0}
+%patch -P 2 -p1
+%endif
 
 chmod 644 readme.md
 sed -i 's/\r//' readme.md

++++++ native-platform-Makefile ++++++
#  Description: Use make as buildsystem instead of Gradle to
#  avoid a circular dependencies between gradle and native-platform.
#  This is very minimalistic Makefile so it will only work for
#  Debian use case for now.
#  Author: Damien Raude-Morvan <[email protected]>
#  Adapted for Fedora by: gil cattaneo <[email protected]>
CXX=g++
STRIP=strip
# which is the best solution?
JOPT_JAR=$(shell build-classpath jopt-simple)
#JOPT_JAR=$(shell locate jopt-simple.jar)
IDIR=src/shared/headers
SRCDIR=src/main/cpp
#SRCSHAREDIR=src/shared/cpp
#SRCCURSESDIR=src/curses/cpp
JSRCDIR=src/main/java
BUILD=build
IGEN=$(BUILD)/headers
JCLASSESDIR=$(BUILD)/classes
JDOCDIR=$(BUILD)/docs/javadoc
ODIR=$(BUILD)/binaries
JAR=$(BUILD)/native-platform.jar
known_os_archs := 
JAR_ARCH=$(BUILD)/native-platform-linux.jar

JTARGET=1.8
JSOURCE=1.8

INCLUDE=-I$(IDIR) -I$(IGEN) -I/usr/include -I$(JAVA_HOME)/include 
-I$(JAVA_HOME)/include/linux
LDLIBS=-lncurses

_OBJ_STD = generic.o generic_posix.o linux.o osx.o posix.o win.o unix_strings.o
_OBJ_CURSES = generic.o generic_posix.o curses.o unix_strings.o
OBJ_STD = $(patsubst %,$(ODIR)/%,$(_OBJ_STD))
OBJ_CURSES = $(patsubst %,$(ODIR)/%,$(_OBJ_CURSES))
_JAVA = $(shell find $(JSRCDIR) -name "*.java" -print)

.PHONY: clean jar javadoc

build: $(ODIR)/libnative-platform.so $(ODIR)/libnative-platform-curses.so jar 
javadoc arch-jar

$(ODIR)/libnative-platform.so: $(OBJ_STD)
        $(CXX) -shared -fPIC $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ 
$^
        $(STRIP) $@

$(ODIR)/libnative-platform-curses.so: $(OBJ_CURSES)
        $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(LDLIBS) -shared 
-fPIC -o $@ $^ $(LDLIBS)
        $(STRIP) $@

$(JCLASSESDIR)/%.class: javafiles-list
        mkdir -p $(JCLASSESDIR)
        mkdir -p $(IGEN)
        $(JAVA_HOME)/bin/javac -source $(JTARGET) -target $(JSOURCE) -d 
$(JCLASSESDIR) -h $(IGEN) -classpath $(JOPT_JAR) @javafiles-list

javafiles-list: $(_JAVA)
        echo $^ > javafiles-list

javadoc: javafiles-list
        mkdir -p $(JDOCDIR)
        $(JAVA_HOME)/bin/javadoc -notimestamp -d $(JDOCDIR) -classpath 
$(JOPT_JAR) @javafiles-list

jar: $(JCLASSESDIR)/%.class
        mkdir -p $(JDOCDIR)
        (cd $(JCLASSESDIR) ; $(JAVA_HOME)/bin/jar --create --file=../../$(JAR) 
.)

arch-jar: $(ODIR)/libnative-platform.so $(ODIR)/libnative-platform-curses.so
        (cd $(ODIR) ; $(JAVA_HOME)/bin/jar --create --file=../../$(JAR_ARCH) 
*.so)

$(ODIR)/%.o: $(SRCDIR)/%.cpp $(IGEN)/native.h
        mkdir -p $(ODIR)
        $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(INCLUDE) -fPIC -c 
-o $@ $<

$(IGEN)/native.h: $(JCLASSESDIR)/%.class
        mkdir -p $(IGEN)
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_NativeLibraryFunctions.h\"" > 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_PosixFileFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_PosixFileSystemFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_PosixProcessFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_PosixTerminalFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_TerminfoFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_WindowsConsoleFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_WindowsHandleFunctions.h\"" >> 
$(IGEN)/native.h
        @echo "#include 
\"net_rubygrapefruit_platform_internal_jni_WindowsRegistryFunctions.h\"" >> 
$(IGEN)/native.h

clean:
        -rm javafiles-list
        -rm -Rf $(BUILD)

++++++ reproducible-jar-mtime.patch ++++++
--- native-platform-0.14/Makefile       2024-09-25 10:25:12.649998838 +0200
+++ native-platform-0.14/Makefile       2024-09-25 10:27:13.894145263 +0200
@@ -61,10 +61,10 @@
 
 jar: $(JCLASSESDIR)/%.class
        mkdir -p $(JDOCDIR)
-       (cd $(JCLASSESDIR) ; $(JAVA_HOME)/bin/jar --create --file=../../$(JAR) 
.)
+       (cd $(JCLASSESDIR) ; $(JAVA_HOME)/bin/jar --date="$$(date -u -d 
@$${SOURCE_DATE_EPOCH:-$$(date +%s)} +%Y-%m-%dT%H:%M:%SZ)" --create 
--file=../../$(JAR) .)
 
 arch-jar: $(ODIR)/libnative-platform.so $(ODIR)/libnative-platform-curses.so
-       (cd $(ODIR) ; $(JAVA_HOME)/bin/jar --create --file=../../$(JAR_ARCH) 
*.so)
+       (cd $(ODIR) ; $(JAVA_HOME)/bin/jar --date="$$(date -u -d 
@$${SOURCE_DATE_EPOCH:-$$(date +%s)} +%Y-%m-%dT%H:%M:%SZ)" --create 
--file=../../$(JAR_ARCH) *.so)
 
 $(ODIR)/%.o: $(SRCDIR)/%.cpp $(IGEN)/native.h
        mkdir -p $(ODIR)

Reply via email to