Version bump.
authorRalph Sennhauser <sera@gentoo.org>
Thu, 12 Jan 2012 09:52:45 +0000 (09:52 +0000)
committerRalph Sennhauser <sera@gentoo.org>
Thu, 12 Jan 2012 09:52:45 +0000 (09:52 +0000)
Switch to https://github.com/jnr as project home.
No longer use netbeans build system.
Use slot coresponding to .so version.

Package-Manager: portage-2.1.10.44/cvs/Linux x86_64

dev-java/jffi/ChangeLog
dev-java/jffi/Manifest
dev-java/jffi/files/jffi-1.0.11_no-werror.patch [new file with mode: 0644]
dev-java/jffi/files/jffi_maven-build.xml [new file with mode: 0644]
dev-java/jffi/jffi-1.0.11.ebuild [new file with mode: 0644]

index 9694379e76d60ce3279f608728c65eb9ad26116d..6881c6ab596535d4489cf8e2a8605dd347fd7a22 100644 (file)
@@ -1,6 +1,15 @@
 # ChangeLog for dev-java/jffi
-# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/ChangeLog,v 1.16 2010/05/24 19:02:03 pacho Exp $
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/ChangeLog,v 1.17 2012/01/12 09:52:45 sera Exp $
+
+*jffi-1.0.11 (12 Jan 2012)
+
+  12 Jan 2012; Ralph Sennhauser <sera@gentoo.org> +jffi-1.0.11.ebuild,
+  +files/jffi-1.0.11_no-werror.patch, +files/jffi_maven-build.xml:
+  Version bump.
+  Switch to https://github.com/jnr as project home.
+  No longer use netbeans build system.
+  Use slot coresponding to .so version.
 
   24 May 2010; Pacho Ramos <pacho@gentoo.org> jffi-1.0.0.ebuild:
   stable amd64, bug 318153
index 137d3dbbdb6285ecac501a4b2fe0e6fe040f4669..26c384e30f129ad7aebb2d436f5be462976701a8 100644 (file)
@@ -8,19 +8,27 @@ AUX 0.6.0.2-makefile-flags.patch 1818 RMD160 8a2abc05364c2cc6adf95d6c1fad15f706c
 AUX 1.0.0-gcc-3.4.patch 327 RMD160 2425bf5a97893fbb300bb0a01d86c7595acb3a31 SHA1 836da57c448cae9da015c9ac98d821b7e5d43d0e SHA256 13328b03fd69a2934f1266446b6ae62e614e112ba305d92a73008d620be52339
 AUX jffi-0.7-makefile-flags.patch 6079 RMD160 80ac08701b4d675746a635c821ba0f53c9c56f38 SHA1 b29666fa499e9f6bf7ac5b7551895a0968f60b9c SHA256 cbe88df14f6cc99367e1d5140483d4f6c0b3f057e6a8a7e6a1d15eea91f89105
 AUX jffi-1.0.0-makefile.patch 3196 RMD160 ed9ff4ca88b326c46e4b089e5f1c51fff5e65583 SHA1 71f37c938454f6d309c90338a102ca3030a5bd36 SHA256 51d5299b057924f37727baf34cf4ba8915fe967e5ad1a60e673d6c241c6c4740
+AUX jffi-1.0.11_no-werror.patch 382 RMD160 4c71e7ec264b96340a19c2ef6492d6a1d8a9b4d1 SHA1 7129d85400c017d33cc682a14e8893b8e4e8c4fb SHA256 24fb274a3ec39eb94d6f9d3401df2127518b00a30d1f06276cb880b70f769f63
+AUX jffi_maven-build.xml 11287 RMD160 ff4159b0904b0d9c2ad8454ee5b1926611280c36 SHA1 ec77644d2821669098ff109943e5fa6f20ec6c5b SHA256 fa81bee544d5304731268fd807c5176ffeca6d50c0882aebd2d9510118782a0b
 DIST jffi-0.6.0.2.tar.bz2 1855529 RMD160 be9ecd77eb17fb80c75f8dfe21f1bdd62d34596b SHA1 b957f8b52573f4e96a3c242d016cb7fc100a3399 SHA256 a2e5cd14484027807a2ab757d8010fb9903d33a4a0e5e1f045ad8de806a0cb24
 DIST jffi-1.0.0.tar.gz 1627422 RMD160 0b20a343239b8480e1b6ee787288862b02a4f575 SHA1 fa7d9c3ca58afea36e9ef643f882c828e7ce96d0 SHA256 9950edbaf897cc1fa10fb944336a86ceba92674f54a1eaf59b2ab4881825d25e
+DIST jffi-1.0.11.tar.gz 1899655 RMD160 7780cc45e4c777d5d70814bc3a25bbd96bb9146e SHA1 744fa907573b37801c9a4085f83cdc8b1ed2f2c6 SHA256 b66781a07e095dbaf9d568b77762e06215da4458d963956ea22dd5adb5f3126a
 DIST jffi-git-0.7_pre20100131.tgz 1484965 RMD160 8efaecd9575926e268a3b63160a196f6ea466ce2 SHA1 b58cd19600acf6ea8a2adf04b1f1d72b7f84bce5 SHA256 b2256550a38cd120cd61bebd61a76dd373994b62a1c31191c74aec3a0970e30a
 EBUILD jffi-0.6.0.2-r1.ebuild 2141 RMD160 adf9806e42fe085a749aed6648fa119bdf5f6e2d SHA1 ce17b7146d6b1098106bc7a9e14d0527187c3530 SHA256 e6fa781e9156c8e8466af23430281863bc6107fe6a0dbbd647e031030b530084
 EBUILD jffi-0.6.0.2.ebuild 2001 RMD160 c451d40cb93da4761e01dd34089ba7ed8bba0f1f SHA1 25fa3f3a1cb9a3b73d283272c7023a62f767544c SHA256 df3c5514815568d8a62b2107cca68ed859b490469ec1d37573040fb6a62d0646
 EBUILD jffi-0.7_pre20100131.ebuild 2522 RMD160 c56f2129e7787fa4048b1820068a24962eb12b77 SHA1 82391a8da3233dab77d4cb78a5033575f18480b5 SHA256 4a8ebe9cc1798a108b4af14197f871c49b3f38ba60f37c8a5b7f8e103f462776
 EBUILD jffi-1.0.0.ebuild 2181 RMD160 4ef27dd5295311e4b1cdf42e41d327acdf62a1ca SHA1 89125f9d8c59c6376e0bb859d1442cb5e2fd5e00 SHA256 c731320629590c9037fe62b56b6ec4760296c83ac27195da9ea9b83935891886
-MISC ChangeLog 2865 RMD160 67688fe451d0266afe35a6752a44277633c320a0 SHA1 30201a0599766aa9b14e932782253025dade79e6 SHA256 d768cb2d9091e9ba4db140eb32cae6abcec6d5e3d4e2fd0e2696b41374716f67
+EBUILD jffi-1.0.11.ebuild 2401 RMD160 0289aa9fabf498be1a026e12ab60642ff810ef61 SHA1 94711e4598bc79f6cafaea939917f7040085cd47 SHA256 04ec1756d7f97e6bff2534c02811475e324008693670b3e8dfe6ac5a2832f760
+MISC ChangeLog 3178 RMD160 0c8c99bf0023be36e8bb1cf31f601953755c8a5c SHA1 b4c253b3024c5faa3b925485b6933ec86a12b211 SHA256 303e142d9b2cbd2d26ac6edee4b552065fcc128f53e039a64304b8388de3a79d
 MISC metadata.xml 159 RMD160 5259d4be0ca7b74c28e711d45a289def9aeadbd9 SHA1 c4ec40cd8f19e0d780a5133941bc50043be198cf SHA256 1c070a909e96d9d193f84ad9304d196febbe33b60a724cc4b0d20634bb82255b
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.14 (GNU/Linux)
+Version: GnuPG v2.0.17 (GNU/Linux)
 
-iEYEARECAAYFAkv6zTIACgkQCaWpQKGI+9R72ACfY207HFfDFIW6RLyPsgPcCt1r
-AeoAn29rYxbxE5Ijk7/3MxZ8TdqIv4sl
-=PyM9
+iQEcBAEBAgAGBQJPDq19AAoJEIUJ+svaV163/AgH/R9DOxBOrjxrgYz0JAJiER83
+BieQfy2Gy/eMHy0z5q0jV+ZYHbBqcQJ/OMbyVw4An+sjHxSoMxwMdnMDYyUQ/ZNm
+KixafkDvSSgRrwOSIGSR2zHWAHbYyAHGIW4cQOxKo7KuK1vJq8jAv37z01Whuxfc
+DxYwr7eC0RhMw+UZe50rg0Sjg37BpWH/NALL15fIyzPM9ZI/Pk5nmSkO8/Qv3n+i
+ZkSHQ+KI2uIhGuSnNO0cz8bxasKJG83PbBoE8E8NW6OqTytMhl/L8iEwm2tTP7+C
+mZCrt2JeVF8OOfV4kpahKCrgDZZwYs4LKGVBxLYCOMrR3wT1wpuXyAA0dYXTV2k=
+=x/mW
 -----END PGP SIGNATURE-----
diff --git a/dev-java/jffi/files/jffi-1.0.11_no-werror.patch b/dev-java/jffi/files/jffi-1.0.11_no-werror.patch
new file mode 100644 (file)
index 0000000..25b7e4f
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/jni/GNUmakefile b/jni/GNUmakefile
+index efe6230..25053c7 100755
+--- a/jni/GNUmakefile
++++ b/jni/GNUmakefile
+@@ -64,7 +64,7 @@ JFLAGS = -fno-omit-frame-pointer -fno-strict-aliasing -DNDEBUG
+ OFLAGS = -O2 $(JFLAGS)
+ # MacOS headers aren't completely warning free, so turn them off
+-WERROR = -Werror
++WERROR =
+ ifneq ($(OS),darwin)
+   WFLAGS += -Wundef $(WERROR)
+ endif
diff --git a/dev-java/jffi/files/jffi_maven-build.xml b/dev-java/jffi/files/jffi_maven-build.xml
new file mode 100644 (file)
index 0000000..d811418
--- /dev/null
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ====================================================================== -->
+<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above.        -->
+<!-- ====================================================================== -->
+
+<!-- ====================================================================== -->
+<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
+<!-- ====================================================================== -->
+<!--                                                                        -->
+<!-- Any modifications will be overwritten.                                 -->
+<!--                                                                        -->
+<!-- Generated by Maven Ant Plugin on 1/9/12 9:52 AM                        -->
+<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/                 -->
+<!--                                                                        -->
+<!-- ====================================================================== -->
+
+<project name="jffi-from-maven" default="package" basedir=".">
+
+  <!-- ====================================================================== -->
+  <!-- Build environment properties                                           -->
+  <!-- ====================================================================== -->
+
+  <property file="${user.home}/.m2/maven.properties"/>
+  <property file="maven-build.properties"/>
+
+  <property name="maven.build.finalName" value="jffi-1.0.11"/>
+  <property name="maven.build.dir" value="target"/>
+  <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
+  <property name="maven.build.srcDir.0" value="src/main/java"/>
+  <property name="maven.build.resourceDir.0" value="src/main/resources"/>
+  <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
+  <property name="maven.build.testDir.0" value="src/test/java"/>
+  <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
+  <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
+  <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
+
+  <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
+  <property name="maven.settings.offline" value="false"/>
+  <property name="maven.settings.interactiveMode" value="true"/>
+
+  <!-- ====================================================================== -->
+  <!-- Defining classpaths                                                    -->
+  <!-- ====================================================================== -->
+
+  <path id="build.classpath"/>
+  <path id="build.test.classpath">
+    <pathelement location="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"/>
+  </path>
+
+  <!-- ====================================================================== -->
+  <!-- Cleaning up target                                                     -->
+  <!-- ====================================================================== -->
+
+  <target name="clean" description="Clean the output directory">
+    <delete dir="${maven.build.dir}"/>
+  </target>
+
+  <!-- ====================================================================== -->
+  <!-- Compilation target                                                     -->
+  <!-- ====================================================================== -->
+
+  <target name="compile" depends="get-deps" description="Compile the code">
+    <mkdir dir="${maven.build.outputDir}"/>
+    <javac destdir="${maven.build.outputDir}" 
+           nowarn="false" 
+           debug="true" 
+           optimize="false" 
+           deprecation="true" 
+           target="1.1" 
+           verbose="false" 
+           fork="false" 
+           source="1.3">
+      <src>
+        <pathelement location="${maven.build.srcDir.0}"/>
+      </src>
+      <classpath refid="build.classpath"/>
+    </javac>
+  </target>
+
+  <!-- ====================================================================== -->
+  <!-- Test-compilation target                                                -->
+  <!-- ====================================================================== -->
+
+  <target name="compile-tests" 
+          depends="compile" 
+          description="Compile the test code" 
+          unless="maven.test.skip">
+    <mkdir dir="${maven.build.testOutputDir}"/>
+    <javac destdir="${maven.build.testOutputDir}" 
+           nowarn="false" 
+           debug="true" 
+           optimize="false" 
+           deprecation="true" 
+           target="1.1" 
+           verbose="false" 
+           fork="false" 
+           source="1.3">
+      <src>
+        <pathelement location="${maven.build.testDir.0}"/>
+      </src>
+      <classpath>
+        <path refid="build.test.classpath"/>
+        <pathelement location="${maven.build.outputDir}"/>
+      </classpath>
+    </javac>
+  </target>
+
+  <!-- ====================================================================== -->
+  <!-- Run all tests                                                          -->
+  <!-- ====================================================================== -->
+
+  <target name="test" 
+          depends="compile-tests, junit-missing" 
+          unless="junit.skipped" 
+          description="Run the test cases">
+    <mkdir dir="${maven.test.reports}"/>
+    <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
+      <sysproperty key="basedir" value="."/>
+      <formatter type="xml"/>
+      <formatter type="plain" usefile="false"/>
+      <classpath>
+        <path refid="build.test.classpath"/>
+        <pathelement location="${maven.build.outputDir}"/>
+        <pathelement location="${maven.build.testOutputDir}"/>
+      </classpath>
+      <batchtest todir="${maven.test.reports}" unless="test">
+        <fileset dir="${maven.build.testDir.0}">
+          <include name="**/Test*.java"/>
+          <include name="**/*Test.java"/>
+          <include name="**/*TestCase.java"/>
+          <exclude name="**/*Abstract*Test.java"/>
+        </fileset>
+      </batchtest>
+      <batchtest todir="${maven.test.reports}" if="test">
+        <fileset dir="${maven.build.testDir.0}">
+          <include name="**/${test}.java"/>
+          <exclude name="**/*Abstract*Test.java"/>
+        </fileset>
+      </batchtest>
+    </junit>
+  </target>
+
+  <target name="test-junit-present">
+    <available classname="junit.framework.Test" property="junit.present"/>
+  </target>
+
+  <target name="test-junit-status" 
+          depends="test-junit-present">
+    <condition property="junit.missing">
+      <and>
+        <isfalse value="${junit.present}"/>
+        <isfalse value="${maven.test.skip}"/>
+      </and>
+    </condition>
+    <condition property="junit.skipped">
+      <or>
+        <isfalse value="${junit.present}"/>
+        <istrue value="${maven.test.skip}"/>
+      </or>
+    </condition>
+  </target>
+
+  <target name="junit-missing" 
+          depends="test-junit-status" 
+          if="junit.missing">
+    <echo>=================================== WARNING ===================================</echo>
+    <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
+    <echo>===============================================================================</echo>
+  </target>
+
+  <!-- ====================================================================== -->
+  <!-- Javadoc target                                                         -->
+  <!-- ====================================================================== -->
+
+  <target name="javadoc" description="Generates the Javadoc of the application">
+    <javadoc sourcepath="${maven.build.srcDir.0}" 
+             packagenames="*" 
+             destdir="${maven.reporting.outputDirectory}/apidocs" 
+             access="protected" 
+             old="false" 
+             verbose="false" 
+             version="true" 
+             use="true" 
+             author="true" 
+             splitindex="false" 
+             nodeprecated="false" 
+             nodeprecatedlist="false" 
+             notree="false" 
+             noindex="false" 
+             nohelp="false" 
+             nonavbar="false" 
+             serialwarn="false" 
+             charset="ISO-8859-1" 
+             linksource="false" 
+             breakiterator="false"/>
+  </target>
+
+  <!-- ====================================================================== -->
+  <!-- Package target                                                         -->
+  <!-- ====================================================================== -->
+
+  <target name="package" depends="compile,test" description="Package the application">
+    <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar" 
+         compress="true" 
+         index="false" 
+         basedir="${maven.build.outputDir}" 
+         excludes="**/package.html"/>
+  </target>
+
+  <!-- ====================================================================== -->
+  <!-- A dummy target for the package named after the type it creates         -->
+  <!-- ====================================================================== -->
+
+  <target name="jar" depends="package" description="Builds the jar for the application"/>
+
+  <!-- ====================================================================== -->
+  <!-- Download dependencies target                                           -->
+  <!-- ====================================================================== -->
+
+  <target name="test-offline">
+    <condition property="maven.mode.offline">
+      <equals arg1="${maven.settings.offline}" arg2="true"/>
+    </condition>
+  </target>
+
+  <target name="get-deps" 
+          depends="test-offline" 
+          description="Download all dependencies" 
+          unless="maven.mode.offline">
+    <mkdir dir="${maven.repo.local}"/>
+    <mkdir dir="${maven.repo.local}/junit/junit/4.8.2"/>
+    <get src="http://repository.jboss.com/maven2/junit/junit/4.8.2/junit-4.8.2.jar" 
+         dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar" 
+         usetimestamp="false" 
+         ignoreerrors="true"/>
+    <get src="http://snapshots.jboss.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar" 
+         dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar" 
+         usetimestamp="false" 
+         ignoreerrors="true"/>
+    <get src="http://repository.jboss.org/maven2//junit/junit/4.8.2/junit-4.8.2.jar" 
+         dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar" 
+         usetimestamp="false" 
+         ignoreerrors="true"/>
+    <get src="https://repository.jboss.org/nexus/content/groups/public-jboss//junit/junit/4.8.2/junit-4.8.2.jar" 
+         dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar" 
+         usetimestamp="false" 
+         ignoreerrors="true"/>
+    <get src="https://oss.sonatype.org/content/repositories/snapshots/junit/junit/4.8.2/junit-4.8.2.jar" 
+         dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar" 
+         usetimestamp="false" 
+         ignoreerrors="true"/>
+    <get src="http://repo1.maven.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar" 
+         dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar" 
+         usetimestamp="false" 
+         ignoreerrors="true"/>
+  </target>
+
+</project>
diff --git a/dev-java/jffi/jffi-1.0.11.ebuild b/dev-java/jffi/jffi-1.0.11.ebuild
new file mode 100644 (file)
index 0000000..0129073
--- /dev/null
@@ -0,0 +1,101 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/jffi-1.0.11.ebuild,v 1.1 2012/01/12 09:52:45 sera Exp $
+
+EAPI="4"
+
+JAVA_PKG_IUSE="doc source test"
+
+inherit eutils java-pkg-2 java-ant-2 versionator
+
+DESCRIPTION="An optimized Java interface to libffi"
+HOMEPAGE="http://github.com/jnr"
+SRC_URI="https://github.com/jnr/jffi/tarball/${PV} -> ${P}.tar.gz"
+
+LICENSE="|| ( Apache-2.0 LGPL-3 )"
+SLOT="1.0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+COMMON_DEP="
+       virtual/libffi"
+RDEPEND="${COMMON_DEP}
+       >=virtual/jre-1.5"
+DEPEND="${COMMON_DEP}
+       >=virtual/jdk-1.5
+       dev-util/pkgconfig
+       test? (
+               dev-java/ant-junit:0
+               dev-java/junit:4
+       )"
+
+src_unpack() {
+       unpack ${A}
+       mv jnr-jffi-* "${P}" || die
+}
+
+java_prepare() {
+       cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die
+       epatch "${FILESDIR}"/${P}_no-werror.patch
+
+       find "${WORKDIR}" -iname '*.jar' -delete
+}
+
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+
+EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
+src_compile() {
+       # generate Version.java
+       cat <<-EOF > src/main/java/com/kenai/jffi/Version.java
+               package com.kenai.jffi;
+               public final class Version {
+                       private Version() {}
+                       public static final int MAJOR = $(get_version_component_range 1);
+                       public static final int MINOR = $(get_version_component_range 2);
+                       public static final int MICRO = $(get_version_component_range 3);
+               }
+       EOF
+
+       java-pkg-2_src_compile
+
+       # generate headers
+       mkdir -p build/jni
+       javah -d build/jni -classpath target/classes \
+               com.kenai.jffi.Foreign \
+               com.kenai.jffi.ObjectBuffer \
+               com.kenai.jffi.Version \
+               || die
+
+       #build native library.
+       local args=(
+               SRC_DIR=jni
+               JNI_DIR=jni
+               BUILD_DIR=build/jni
+               VERSION=$(get_version_component_range 1-2)
+               USE_SYSTEM_LIBFFI=1
+               -f jni/GNUmakefile
+       )
+       emake "${args[@]}"
+}
+
+EANT_TEST_GENTOO_CLASSPATH="junit-4"
+src_test() {
+       # build native test library
+       emake BUILD_DIR=build -f libtest/GNUmakefile
+
+       _JAVA_OPTIONS="-Djffi.boot.library.path=build/jni" \
+               java-pkg-2_src_test
+}
+
+src_install() {
+       cat <<-EOF > boot.properties
+               jffi.boot.library.path = ${JAVA_PKG_LIBDEST}
+       EOF
+       jar -uf target/${PN}.jar boot.properties || die
+
+       java-pkg_dojar target/${PN}.jar
+       java-pkg_doso build/jni/lib${PN}-$(get_version_component_range 1-2).so
+
+       use doc && java-pkg_dojavadoc target/site/apidocs
+       use source && java-pkg_dosrc src/main/java/*
+}