[native-platform] update to 0.10
Mikolaj Izdebski
mizdebsk at fedoraproject.org
Tue Oct 21 11:13:37 UTC 2014
commit ddea250212fb6fcfe24f2c2976980c9fcc4c683c
Author: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Tue Oct 21 12:06:40 2014 +0200
update to 0.10
.gitignore | 1 +
...native-platform-0.10-NativeLibraryLocator.patch | 14 +-
...ative-platform-0.10-native-libraries-name.patch | 39 +++---
...atform-0.3-rc-2.pom => native-platform-0.10.pom | 29 +++-
native-platform-0.3-rc-2-build.patch | 143 --------------------
...e-platform-0.3-rc-2-native-libraries-name.patch | 31 -----
...atform-Makefile => native-platform-0.7-Makefile | 11 +-
...c-2.pom => native-platform-linux-amd64-0.10.pom | 2 +-
...rc-2.pom => native-platform-linux-i386-0.10.pom | 2 +-
native-platform.spec | 81 ++++++------
sources | 2 +-
11 files changed, 103 insertions(+), 252 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 5801d66..b54dd0a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
/native-platform-0.3-rc-2-src-git.tar.xz
/0.3-rc-2.tar.gz
+/0.10.tar.gz
diff --git a/native-platform-0.3-rc-2-NativeLibraryLocator.patch b/native-platform-0.10-NativeLibraryLocator.patch
similarity index 57%
rename from native-platform-0.3-rc-2-NativeLibraryLocator.patch
rename to native-platform-0.10-NativeLibraryLocator.patch
index 61a3fcb..b2ca0c1 100644
--- a/native-platform-0.3-rc-2-NativeLibraryLocator.patch
+++ b/native-platform-0.10-NativeLibraryLocator.patch
@@ -1,20 +1,20 @@
---- src/main/java/net/rubygrapefruit/platform/internal/NativeLibraryLocator.java 2013-02-25 23:04:25.000000000 +0100
-+++ src/main/java/net/rubygrapefruit/platform/internal/NativeLibraryLocator.java-gil 2013-10-18 09:25:04.732357649 +0200
-@@ -31,6 +31,17 @@
- }
+--- src/main/java/net/rubygrapefruit/platform/internal/NativeLibraryLocator.java 2014-04-02 10:28:19.000000000 +0200
++++ src/main/java/net/rubygrapefruit/platform/internal/NativeLibraryLocator.java-gil 2014-10-17 21:13:14.698629172 +0200
+@@ -32,6 +32,17 @@
- public File find(String libraryFileName) throws IOException {
+ public File find(LibraryDef libraryDef) throws IOException {
+ String resourceName = String.format("net/rubygrapefruit/platform/%s/%s", libraryDef.platform, libraryDef.name);
+ String bits = "";
+
+ if (System.getProperty("os.arch").contains("64")) {
+ bits = "64";
+ }
+
-+ File usrLibFile = new File("/usr/lib" + bits + "/native-platform/" + libraryFileName);
++ File usrLibFile = new File("/usr/lib" + bits + "/native-platform/" + libraryDef.name);
+ if (usrLibFile.isFile()) {
+ return usrLibFile;
+ }
+
if (extractDir != null) {
- File libFile = new File(extractDir, String.format("%s/%s", NativeLibraryFunctions.VERSION, libraryFileName));
+ File libFile = new File(extractDir, String.format("%s/%s/%s", NativeLibraryFunctions.VERSION, libraryDef.platform, libraryDef.name));
File lockFile = new File(libFile.getParentFile(), libFile.getName() + ".lock");
diff --git a/native-platform-0.3-rc-2-Platform.patch b/native-platform-0.10-native-libraries-name.patch
similarity index 51%
rename from native-platform-0.3-rc-2-Platform.patch
rename to native-platform-0.10-native-libraries-name.patch
index 978819d..4266b46 100644
--- a/native-platform-0.3-rc-2-Platform.patch
+++ b/native-platform-0.10-native-libraries-name.patch
@@ -1,5 +1,5 @@
---- src/main/java/net/rubygrapefruit/platform/internal/Platform.java 2013-10-18 09:34:09.462681852 +0200
-+++ src/main/java/net/rubygrapefruit/platform/internal/Platform.java-gil 2013-10-18 09:34:16.372327803 +0200
+--- src/main/java/net/rubygrapefruit/platform/internal/Platform.java 2014-04-02 10:28:19.000000000 +0200
++++ src/main/java/net/rubygrapefruit/platform/internal/Platform.java-gil 2014-10-17 21:39:32.472144445 +0200
@@ -37,12 +37,15 @@
platform = new Window64Bit();
}
@@ -14,25 +14,30 @@
+ else if (arch.startsWith("arm")) {
+ platform = new LinuxArm();
+ }
- } else if (osName.contains("os x")) {
- if (arch.equals("i386") || arch.equals("x86_64") || arch.equals("amd64")) {
- platform = new OsX();
-@@ -181,6 +184,18 @@
+ } else if (osName.contains("os x") || osName.contains("darwin")) {
+ if (arch.equals("i386")) {
+ platform = new OsX32Bit();
+@@ -190,14 +193,21 @@
+ private static class Linux32Bit extends Unix {
@Override
- public String getLibraryName() {
- return "libnative-platform.so";
-+ }
-+
-+ @Override
-+ String getCursesLibraryName() {
-+ return "libnative-platform-curses.so";
+ public String getId() {
+- return "linux-i386";
++ return "linux";
+ }
+ }
+
+ private static class Linux64Bit extends Unix {
+ @Override
+ public String getId() {
+- return "linux-amd64";
++ return "linux";
+ }
+ }
+
-+ private static class LinuxArm extends Linux {
++ private static class LinuxArm extends Unix {
+ @Override
-+ public String getLibraryName() {
-+ return "libnative-platform.so";
++ public String getId() {
++ return "linux";
}
+ }
- @Override
diff --git a/native-platform-0.3-rc-2.pom b/native-platform-0.10.pom
similarity index 58%
rename from native-platform-0.3-rc-2.pom
rename to native-platform-0.10.pom
index d4f89a2..19a0d40 100644
--- a/native-platform-0.3-rc-2.pom
+++ b/native-platform-0.10.pom
@@ -3,32 +3,47 @@
<modelVersion>4.0.0</modelVersion>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
<dependencies>
<dependency>
<groupId>net.rubygrapefruit</groupId>
- <artifactId>native-platform-osx-universal</artifactId>
- <version>0.3-rc-2</version>
+ <artifactId>native-platform-osx-i386</artifactId>
+ <version>0.10</version>
+ </dependency>
+ <dependency>
+ <groupId>net.rubygrapefruit</groupId>
+ <artifactId>native-platform-osx-amd64</artifactId>
+ <version>0.10</version>
</dependency>
<dependency>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform-linux-amd64</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
</dependency>
<dependency>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform-linux-i386</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
</dependency>
<dependency>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform-windows-amd64</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
</dependency>
<dependency>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform-windows-i386</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
+ </dependency>
+ <dependency>
+ <groupId>net.rubygrapefruit</groupId>
+ <artifactId>native-platform-freebsd-i386</artifactId>
+ <version>0.10</version>
+ </dependency>
+ <dependency>
+ <groupId>net.rubygrapefruit</groupId>
+ <artifactId>native-platform-freebsd-amd64</artifactId>
+ <version>0.10</version>
</dependency>
</dependencies>
</project>
diff --git a/native-platform-Makefile b/native-platform-0.7-Makefile
similarity index 91%
rename from native-platform-Makefile
rename to native-platform-0.7-Makefile
index 4ffd458..87df079 100644
--- a/native-platform-Makefile
+++ b/native-platform-0.7-Makefile
@@ -7,10 +7,12 @@
CXX=g++
STRIP=strip
# which is the best solution?
-JOPT_JAR=$(shell build-classpath jopt-simple.jar)
-#JOPT_JAR=$(shell locate jopt-simple.jar)
-IDIR=src/main/headers
+#JOPT_JAR=$(shell build-classpath jopt-simple.jar)
+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
@@ -77,7 +79,8 @@ $(IGEN)/native.h: $(JCLASSESDIR)/%.class
net.rubygrapefruit.platform.internal.jni.PosixTerminalFunctions \
net.rubygrapefruit.platform.internal.jni.TerminfoFunctions \
net.rubygrapefruit.platform.internal.jni.WindowsConsoleFunctions \
- net.rubygrapefruit.platform.internal.jni.WindowsHandleFunctions
+ net.rubygrapefruit.platform.internal.jni.WindowsHandleFunctions \
+ net.rubygrapefruit.platform.internal.jni.WindowsRegistryFunctions
clean:
-rm javafiles-list
diff --git a/native-platform-linux-amd64-0.3-rc-2.pom b/native-platform-linux-amd64-0.10.pom
similarity index 92%
rename from native-platform-linux-amd64-0.3-rc-2.pom
rename to native-platform-linux-amd64-0.10.pom
index bd4f7e0..76d0b91 100644
--- a/native-platform-linux-amd64-0.3-rc-2.pom
+++ b/native-platform-linux-amd64-0.10.pom
@@ -4,5 +4,5 @@
<modelVersion>4.0.0</modelVersion>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform-linux-amd64</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
</project>
diff --git a/native-platform-linux-i386-0.3-rc-2.pom b/native-platform-linux-i386-0.10.pom
similarity index 92%
rename from native-platform-linux-i386-0.3-rc-2.pom
rename to native-platform-linux-i386-0.10.pom
index e15b112..d162f27 100644
--- a/native-platform-linux-i386-0.3-rc-2.pom
+++ b/native-platform-linux-i386-0.10.pom
@@ -4,5 +4,5 @@
<modelVersion>4.0.0</modelVersion>
<groupId>net.rubygrapefruit</groupId>
<artifactId>native-platform-linux-i386</artifactId>
- <version>0.3-rc-2</version>
+ <version>0.10</version>
</project>
diff --git a/native-platform.spec b/native-platform.spec
index 9ffbc7e..650ad98 100644
--- a/native-platform.spec
+++ b/native-platform.spec
@@ -4,37 +4,33 @@
%ifarch x86_64 ppc64 s390x sparc64
%global bits 64
%endif
-%global namedreltag -rc-2
+%global namedreltag %{nil}
%global namedversion %{version}%{?namedreltag}
Name: native-platform
-Version: 0.3
-Release: 0.6.rc2%{?dist}
+Version: 0.10
+Release: 1%{?dist}
Summary: Java bindings for various native APIs
License: ASL 2.0
URL: https://github.com/adammurdoch/native-platform
-# git clone git://github.com/adammurdoch/native-platform native-platform-0.3-rc-2
-# (cd native-platform-0.3-rc-2/ && git archive --format=tar --prefix=native-platform-0.3-rc-2/ 0.3-rc-2 | xz > ../native-platform-0.3-rc-2-src-git.tar.xz)
Source0: https://github.com/adammurdoch/native-platform/archive/%{namedversion}.tar.gz
Source1: http://repo.gradle.org/gradle/libs-releases-local/net/rubygrapefruit/%{name}/%{namedversion}/%{name}-%{namedversion}.pom
Source2: http://repo.gradle.org/gradle/libs-releases-local/net/rubygrapefruit/%{name}-linux-i386/%{namedversion}/%{name}-linux-i386-%{namedversion}.pom
Source3: http://repo.gradle.org/gradle/libs-releases-local/net/rubygrapefruit/%{name}-linux-amd64/%{namedversion}/%{name}-linux-amd64-%{namedversion}.pom
# From Debian
-Source4: %{name}-Makefile
+Source4: %{name}-0.7-Makefile
# Try to load native library first from /usr/lib*/native-platform
# instead of extractDir or classpath.
-Patch0: %{name}-0.3-rc-2-NativeLibraryLocator.patch
+Patch0: %{name}-0.10-NativeLibraryLocator.patch
# Use generate libraries without arch references
-Patch1: %{name}-0.3-rc-2-native-libraries-name.patch
# Add support for arm and other x64 arches
-Patch2: %{name}-0.3-rc-2-Platform.patch
+Patch1: %{name}-0.10-native-libraries-name.patch
# build tools and deps
BuildRequires: java-devel
-BuildRequires: javapackages-tools
-BuildRequires: jopt-simple
+BuildRequires: javapackages-local
BuildRequires: ncurses-devel
-Requires: javapackages-tools
+BuildRequires: jopt-simple
%description
A collection of cross-platform Java APIs
@@ -44,12 +40,14 @@ These APIs support Java 5 and later. Some
of these APIs overlap with APIs available
in later Java versions.
+%if 0
%package javadoc
Summary: Javadoc for %{name}
BuildArch: noarch
%description javadoc
This package contains javadoc for %{name}.
+%endif
%prep
%setup -q -n %{name}-%{namedversion}
@@ -58,14 +56,15 @@ find . -name "*.class" -delete
%patch0 -p0
%patch1 -p0
-%patch2 -p0
cp -p %{SOURCE1} pom.xml
cp -p %{SOURCE4} Makefile
-
-%pom_remove_dep net.rubygrapefruit:%{name}-osx-universal pom.xml
+%pom_remove_dep net.rubygrapefruit:%{name}-osx-i386 pom.xml
+%pom_remove_dep net.rubygrapefruit:%{name}-osx-amd64 pom.xml
%pom_remove_dep net.rubygrapefruit:%{name}-windows-i386 pom.xml
%pom_remove_dep net.rubygrapefruit:%{name}-windows-amd64 pom.xml
+%pom_remove_dep net.rubygrapefruit:%{name}-freebsd-i386 pom.xml
+%pom_remove_dep net.rubygrapefruit:%{name}-freebsd-amd64 pom.xml
%if %{bits} == 64
%pom_remove_dep net.rubygrapefruit:%{name}-linux-i386 pom.xml
%else
@@ -75,8 +74,25 @@ cp -p %{SOURCE4} Makefile
chmod 644 readme.md
sed -i 's/\r//' readme.md
+# TODO
+mv src/curses/cpp/*.cpp src/main/cpp
+mv src/shared/cpp/* src/main/cpp
+
+sed -i.javadoc8 "s|.PHONY: clean jar javadoc|.PHONY: clean jar|" Makefile
+sed -i.javadoc8 "s|jar javadoc arch-jar|jar arch-jar|" Makefile
+
%build
+%if %{bits} == 64
+%mvn_file net.rubygrapefruit:%{name}-linux-amd64 %{name}-linux
+%mvn_artifact %{SOURCE3} %{name}-linux.jar
+%else
+%mvn_file net.rubygrapefruit:%{name}-linux-i386 %{name}-linux
+%mvn_artifact %{SOURCE2} %{name}-linux.jar
+%endif
+%mvn_file net.rubygrapefruit:%{name} %{name}
+%mvn_artifact pom.xml build/%{name}.jar
+
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
CPPFLAGS="${CPPFLAGS:-%optflags}" ; export CPPFLAGS ;
CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ;
@@ -84,43 +100,28 @@ LDFLAGS="${LDFLAGS:-%__global_ldflags}"; export LDFLAGS;
make %{?_smp_mflags} JAVA_HOME=%{_jvmdir}/java
%install
-
-mkdir -p %{buildroot}%{_javadir}
-install -m 644 build/%{name}.jar %{buildroot}%{_javadir}/%{name}.jar
-
-mkdir -p %{buildroot}%{_mavenpomdir}
-install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom
-%add_maven_depmap JPP-%{name}.pom %{name}.jar
-
-mkdir -p %{buildroot}%{_jnidir}
-install -pm 644 build/%{name}-linux.jar %{buildroot}%{_jnidir}/
-
-%if %{bits} == 64
-install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-%{name}-linux.pom
-%add_maven_depmap JPP-%{name}-linux.pom %{name}-linux.jar
+%if 0
+%mvn_install -J build/docs/javadoc
%else
-install -pm 644 %{SOURCE2} %{buildroot}%{_mavenpomdir}/JPP-%{name}-linux.pom
-%add_maven_depmap JPP-%{name}-linux.pom %{name}-linux.jar
+%mvn_install
%endif
-
mkdir -p %{buildroot}%{_libdir}/%{name}
install -pm 0755 build/binaries/libnative-platform-curses.so %{buildroot}%{_libdir}/%{name}
install -pm 0755 build/binaries/libnative-platform.so %{buildroot}%{_libdir}/%{name}
-#ln -sf %%{_jnidir}/%%{name}-linux.jar %%{buildroot}%%{_libdir}/%%{name}/%%{name}-linux.jar
-#ln -sf %%{_javadir}/%%{name}.jar %%{buildroot}%%{_libdir}/%%{name}/%%{name}.jar
-
-mkdir -p %{buildroot}%{_javadocdir}/%{name}
-cp -rp build/docs/javadoc/* %{buildroot}%{_javadocdir}/%{name}
%files -f .mfiles
%{_libdir}/%{name}
%doc readme.md LICENSE
-%files javadoc
-%{_javadocdir}/%{name}
+%if 0
+%files javadoc -f .mfiles-javadoc
%doc LICENSE
+%endif
%changelog
+* Fri Oct 17 2014 gil cattaneo <puntogil at libero.it> 0.10-1
+- update to 0.10
+
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.3-0.6.rc2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
@@ -145,4 +146,4 @@ cp -rp build/docs/javadoc/* %{buildroot}%{_javadocdir}/%{name}
- update to 0.3-rc-2
* Thu Dec 13 2012 gil cattaneo <puntogil at libero.it> 0.2-1
-- initial rpm
\ No newline at end of file
+- initial rpm
diff --git a/sources b/sources
index 1484975..df3dc22 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-9a8dd12f789b8fe003dda862c2365c39 0.3-rc-2.tar.gz
+ff3eebd4793f7bc1fa846dd3cd05138c 0.10.tar.gz
More information about the scm-commits
mailing list