diff options
Diffstat (limited to 'dev-java')
| -rw-r--r-- | dev-java/auto-service-annotations/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild | 24 | ||||
| -rw-r--r-- | dev-java/auto-service-annotations/metadata.xml | 9 | ||||
| -rw-r--r-- | dev-java/icu4j/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/icu4j/icu4j-74.2.ebuild | 193 | ||||
| -rw-r--r-- | dev-java/java-config/java-config-2.3.3-r1.ebuild | 2 | ||||
| -rw-r--r-- | dev-java/jmh-core/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/jmh-core/jmh-core-1.37.ebuild | 36 | ||||
| -rw-r--r-- | dev-java/jmh-generator-annprocess/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild | 28 | ||||
| -rw-r--r-- | dev-java/jmh-generator-annprocess/metadata.xml | 10 | ||||
| -rw-r--r-- | dev-java/jna/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/jna/jna-5.14.0.ebuild | 197 |
13 files changed, 503 insertions, 1 deletions
diff --git a/dev-java/auto-service-annotations/Manifest b/dev-java/auto-service-annotations/Manifest new file mode 100644 index 000000000000..2ef345ae2602 --- /dev/null +++ b/dev-java/auto-service-annotations/Manifest @@ -0,0 +1 @@ +DIST auto-service-1.1.1.tar.gz 422101 BLAKE2B 9050607917f6637e77d234074787662b32f0e245a8e61b233cb664834e50ad41523bf89869e7e7b44a9e77db22c99481dce6b7c8051934b4e159fab37f060b36 SHA512 4e18c422103d6857724d5fcb28fc2f12cdaeacd7a47ebdc1982e9cd2e9d83a90e571c5e14332e3fcaac3a9e1ecf947f0e9e89a87c0c3bb1dc2e401b1a76ca044 diff --git a/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild b/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild new file mode 100644 index 000000000000..0ae78daf656a --- /dev/null +++ b/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild @@ -0,0 +1,24 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" +MAVEN_ID="com.google.auto.service:auto-service-annotations:${PV}" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Provider-configuration files for ServiceLoader" +HOMEPAGE="https://github.com/google/auto/" +SRC_URI="https://github.com/google/auto/archive/auto-service-${PV}.tar.gz" +S="${WORKDIR}/auto-auto-service-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +DEPEND=">=virtual/jdk-1.8:*" +RDEPEND=">=virtual/jre-1.8:*" + +JAVA_AUTOMATIC_MODULE_NAME="com.google.auto.service" +JAVA_SRC_DIR="service/annotations/src/main/java" diff --git a/dev-java/auto-service-annotations/metadata.xml b/dev-java/auto-service-annotations/metadata.xml new file mode 100644 index 000000000000..a63267abaf71 --- /dev/null +++ b/dev-java/auto-service-annotations/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>java@gentoo.org</email> + </maintainer> + + <origin>gentoo-staging</origin> +</pkgmetadata>
\ No newline at end of file diff --git a/dev-java/icu4j/Manifest b/dev-java/icu4j/Manifest index 304a978ce3a1..3496bfaee538 100644 --- a/dev-java/icu4j/Manifest +++ b/dev-java/icu4j/Manifest @@ -1,2 +1,3 @@ DIST icu-73.2.tar.gz 81522943 BLAKE2B 006d7ccab04385f0aa60e2e60b616be9598f448f27d9b0f6dba554874bfe1dd442ba0719a7677ba8aba7e4e0f05e5e50dca74855a900da1f496aad0cd54c3cdc SHA512 f234fb9c76af62dad59e159ef7f7792aca563d88f2988d3d1ecc8be6250837beb9a530ec121e0949f6925ee8e5171a0d04fa41a0c50d9993c4061fa55be6836e DIST icu-74.1.tar.gz 65889935 BLAKE2B e9dc354a795b69cf22152db437027f099e65b02f352e3ec9f0203b465b4f01a7844229ed5a7954e9b7f7f55f0d2d93a8e1f984c70de47555c230ec8b42cb7949 SHA512 eec8858cb37200fffce9bc60a8bd0c56d7024d9e2574d030c7e726aa4b2a105b1362548c0be163c720048bd7a7bfe9374b3c5954ba14e2e34beab346a8af8df4 +DIST icu-74.2.tar.gz 65888936 BLAKE2B 81d5acddbfc58a859906cb61660b6f230b88f4a1b1cfd56838843e9445b5858d3dd4888707026340581322143f6a4b7b81f53b6431fd5d4cc3fb90531c4d82fb SHA512 728ae0f09ffc802d675bcf5b849e3081472de8417736bf8b7df0f4db9d1fb8073779be76536764c9111f7cb0e5ab2d2af6c644cc24be432b9eeae9063802ad6c diff --git a/dev-java/icu4j/icu4j-74.2.ebuild b/dev-java/icu4j/icu4j-74.2.ebuild new file mode 100644 index 000000000000..b0d9df772754 --- /dev/null +++ b/dev-java/icu4j/icu4j-74.2.ebuild @@ -0,0 +1,193 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_PROVIDES=" + com.ibm.icu:icu4j:${PV} + com.ibm.icu:icu4j-charset:${PV} + com.ibm.icu:icu4j-localespi:${PV} +" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="A set of Java libraries providing Unicode and Globalization support" +HOMEPAGE="https://icu.unicode.org" +SRC_URI="https://github.com/unicode-org/icu/archive/release-${PV/./-}.tar.gz -> icu-${PV}.tar.gz" +S="${WORKDIR}/icu-release-${PV/./-}/icu4j/main" + +LICENSE="icu" +SLOT="70" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +DEPEND=" + >=virtual/jdk-1.8:* + test? ( dev-java/junitparams:0 ) +" + +RDEPEND=">=virtual/jre-1.8:*" + +DOCS=( ../../{CONTRIBUTING,README,SECURITY}.md ) +HTML_DOCS=( ../{APIChangeReport,readme}.html ) + +src_compile() { + JAVA_GENTOO_CLASSPATH_EXTRA="icu4j.jar:icu4j-charset.jar:icu4j-localespi.jar" + + einfo "Compiling icu4j.jar" + JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu" + JAVA_JAR_FILENAME="icu4j.jar" + JAVA_MAIN_CLASS="com.ibm.icu.util.VersionInfo" + JAVA_RESOURCE_DIRS=( + collate/src/main/resources + core/src/main/resources + currdata/src/main/resources + langdata/src/main/resources + regiondata/src/main/resources + translit/src/main/resources + ) + JAVA_SRC_DIR=( + collate/src/main/java + core/src/main/java + currdata/src/main/java + langdata/src/main/java + regiondata/src/main/java + translit/src/main/java + ) + java-pkg-simple_src_compile + rm -r target || die + + einfo "Compiling icu4j-charset.jar" + JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu.charset" + JAVA_JAR_FILENAME="icu4j-charset.jar" + JAVA_MAIN_CLASS="" + JAVA_RESOURCE_DIRS=( charset/src/main/resources ) + JAVA_SRC_DIR=( charset/src/main/java ) + java-pkg-simple_src_compile + rm -r target || die + + einfo "Compiling icu4j-localespi.jar" + JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu.localespi" + JAVA_JAR_FILENAME="icu4j-localespi.jar" + JAVA_RESOURCE_DIRS=( localespi/src/main/resources ) + JAVA_SRC_DIR=( localespi/src/main/java ) + java-pkg-simple_src_compile + rm -r target || die + + # javadocs + if use doc; then + einfo "Compiling javadocs" + JAVA_JAR_FILENAME="ignoreme.jar" + JAVA_SRC_DIR=( + collate/src/main/java + core/src/main/java + currdata/src/main/java + langdata/src/main/java + regiondata/src/main/java + translit/src/main/java + charset/src/main/java + localespi/src/main/java + ) + java-pkg-simple_src_compile + fi +} + +src_test () { + # TZ needed for some tests in com/ibm/icu/dev/test/format/DateFormatTest + export LC_ALL="en_US.UTF-8" TZ="US/Pacific" + + JAVA_TEST_EXTRA_ARGS="-Djava.locale.providers=CLDR,COMPAT,SPI" + JAVA_TEST_GENTOO_CLASSPATH="junit-4,junitparams" + + einfo "Compiling framework-tests.jar" + JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu.framework" + JAVA_JAR_FILENAME="framework-tests.jar" + JAVA_MAIN_CLASS="com.ibm.icu.dev.test.TestAll" + JAVA_RESOURCE_DIRS=( framework/src/test/resources ) + JAVA_SRC_DIR=( framework/src/test/java ) + java-pkg-simple_src_compile + JAVA_GENTOO_CLASSPATH_EXTRA+=":framework-tests.jar" + + einfo "Testing core aka icu4j.jar" + JAVA_TEST_RESOURCE_DIRS="core/src/test/resources" + JAVA_TEST_SRC_DIR="core/src/test/java" + pushd "${JAVA_TEST_SRC_DIR}" || die + # exclude invalid tests, not run by "mvn test" + local JAVA_TEST_RUN_ONLY=$(find * \ + -name "*Test*.java" \ + ! -name "ChineseTestCase.java" \ + ! -name "DataDrivenNumberFormatTestUtility.java" \ + ! -name "*Helper.java" \ + ! -name "ModuleTest.java" \ + ! -name "*Sample.java" \ + ! -name "TestCase.java" \ + ! -name "*TestData*.java" \ + ! -name "*TestFmwk.java" \ + ! -name "TestMessages.java" \ + ! -name "TestUtils.java" \ + ) + popd + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}" + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}" + java-pkg-simple_src_test + + einfo "Creating core-tests.jar" + jar cvf core-tests.jar -C target/test-classes . + JAVA_GENTOO_CLASSPATH_EXTRA+=":core-tests.jar" + JAVA_TEST_RUN_ONLY="" + + einfo "Testing collate" + JAVA_TEST_RESOURCE_DIRS="collate/src/test/resources" + JAVA_TEST_SRC_DIR="collate/src/test/java" + java-pkg-simple_src_test + + einfo "Testing translit" + JAVA_TEST_EXCLUDES=( + # Invalid test classes, No runnable methods + com.ibm.icu.dev.test.TestBoilerplate + com.ibm.icu.dev.test.translit.TestUtility + ) + JAVA_TEST_RESOURCE_DIRS="translit/src/test/resources" + JAVA_TEST_SRC_DIR="translit/src/test/java" + java-pkg-simple_src_test + + einfo "Testing charset" + JAVA_TEST_RESOURCE_DIRS="" + JAVA_TEST_SRC_DIR="charset/src/test/java" + java-pkg-simple_src_test + + einfo "Testing common_tests" + # "mvn test" runs only 90 tests here, Gentoo runs 99 but 9 of them fail. + # coverage tests fail because test handlers for the parametrized tests + # are not defined so the tests are broken and cannot succeed + JAVA_TEST_EXCLUDES=( com.ibm.icu.dev.test.serializable.CoverageTest ) + JAVA_TEST_RESOURCE_DIRS="" + JAVA_TEST_SRC_DIR="common_tests/src/test/java" + java-pkg-simple_src_test + + einfo "Testing localespi" + JAVA_TEST_RESOURCE_DIRS="" + JAVA_TEST_SRC_DIR="localespi/src/test/java" + # Invalid test classes, No runnable methods + JAVA_TEST_EXCLUDES=( com.ibm.icu.dev.test.localespi.TestUtil ) + # https://bugs.gentoo.org/827212, "mvn test" does not run it at all + local vm_version="$(java-config -g PROVIDES_VERSION)" + if [[ "${vm_version}" != "1.8" ]] ; then + java-pkg-simple_src_test + fi +} + +src_install() { + default + java-pkg_dojar "icu4j.jar" + java-pkg_dojar "icu4j-charset.jar" + java-pkg_dojar "icu4j-localespi.jar" + + if use doc; then + java-pkg_dojavadoc target/api + fi + if use source; then + java-pkg_dosrc "classes" + fi +} diff --git a/dev-java/java-config/java-config-2.3.3-r1.ebuild b/dev-java/java-config/java-config-2.3.3-r1.ebuild index 51366439cd17..ca931cffd8d6 100644 --- a/dev-java/java-config/java-config-2.3.3-r1.ebuild +++ b/dev-java/java-config/java-config-2.3.3-r1.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} = 9999 ]]; then EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/java-config.git" else SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="Java environment configuration query tool" diff --git a/dev-java/jmh-core/Manifest b/dev-java/jmh-core/Manifest index 918f4672b6dd..e4c6cb62600d 100644 --- a/dev-java/jmh-core/Manifest +++ b/dev-java/jmh-core/Manifest @@ -1 +1,2 @@ +DIST jmh-1.37.tar.gz 658673 BLAKE2B 696997907f3505f84ed400d75f46625b9f2aa9faf8a6d4250e6380db9088a8d6a61792eed8163703cb0003dba6ee5a2061d08a1b09bed5c058612142cd594469 SHA512 a3aac7d2e774dd7e7457cc1dce9edbe5923fcdae266854d709b926580638a28057bd6b32b8d7dedc4707ab2ae9aa7d5cda04eb72b0116f1cb98480a8b8b02707 DIST jmh-core-1.35.tar.gz 645087 BLAKE2B ce33167a58c2eaf64c38148f27493c86ac9c0084cb58a438b49148b41d3e2db66d8a78e0be8a78db39aebf06fc0b5767be61100b22ce77e018ac8ca29c05c17f SHA512 53ce7300f5e10f1efcb639f0d4d01adad48cadc8daea2e00db34113e42b192e49a6a04cc2b5fd4d291ac81a73a5b30613d22390722d35f54139f14ebbb01013c diff --git a/dev-java/jmh-core/jmh-core-1.37.ebuild b/dev-java/jmh-core/jmh-core-1.37.ebuild new file mode 100644 index 000000000000..a6e6a2d57d68 --- /dev/null +++ b/dev-java/jmh-core/jmh-core-1.37.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.openjdk.jmh:jmh-core:${PV}" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Harness for building, running, and analysing nano/micro/milli/macro benchmarks" +HOMEPAGE="https://openjdk.org/projects/code-tools/jmh/" +SRC_URI="https://github.com/openjdk/jmh/archive/${PV}.tar.gz -> jmh-${PV}.tar.gz" +S="${WORKDIR}/jmh-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +CP_DEPEND=" + dev-java/commons-math:3 + dev-java/jopt-simple:0" + +DEPEND="${CP_DEPEND} + >=virtual/jdk-1.8:*" + +RDEPEND="${CP_DEPEND} + >=virtual/jre-1.8:*" + +JAVA_RESOURCE_DIRS="jmh-core/src/main/resources" +JAVA_SRC_DIR="jmh-core/src/main/java" + +JAVA_TEST_GENTOO_CLASSPATH="junit-4" +JAVA_TEST_RESOURCE_DIRS="jmh-core/src/test/resources" +JAVA_TEST_SRC_DIR="jmh-core/src/test/java" diff --git a/dev-java/jmh-generator-annprocess/Manifest b/dev-java/jmh-generator-annprocess/Manifest new file mode 100644 index 000000000000..396f6a6ab0c2 --- /dev/null +++ b/dev-java/jmh-generator-annprocess/Manifest @@ -0,0 +1 @@ +DIST jmh-1.37.tar.gz 658673 BLAKE2B 696997907f3505f84ed400d75f46625b9f2aa9faf8a6d4250e6380db9088a8d6a61792eed8163703cb0003dba6ee5a2061d08a1b09bed5c058612142cd594469 SHA512 a3aac7d2e774dd7e7457cc1dce9edbe5923fcdae266854d709b926580638a28057bd6b32b8d7dedc4707ab2ae9aa7d5cda04eb72b0116f1cb98480a8b8b02707 diff --git a/dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild b/dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild new file mode 100644 index 000000000000..a4d3d8c5c886 --- /dev/null +++ b/dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" +MAVEN_ID="org.openjdk.jmh:jmh-generator-annprocess:${PV}" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Harness for building, running, and analysing nano/micro/milli/macro benchmarks" +HOMEPAGE="https://openjdk.org/projects/code-tools/jmh/" +SRC_URI="https://github.com/openjdk/jmh/archive/${PV}.tar.gz -> jmh-${PV}.tar.gz" +S="${WORKDIR}/jmh-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +DEPEND=" + dev-java/jmh-core:0 + >=virtual/jdk-1.8:* +" +RDEPEND=">=virtual/jre-1.8:*" + +JAVA_CLASSPATH_EXTRA="jmh-core" +JAVA_RESOURCE_DIRS="jmh-generator-annprocess/src/main/resources" +JAVA_SRC_DIR="jmh-generator-annprocess/src/main/java" diff --git a/dev-java/jmh-generator-annprocess/metadata.xml b/dev-java/jmh-generator-annprocess/metadata.xml new file mode 100644 index 000000000000..e25b5c52aab3 --- /dev/null +++ b/dev-java/jmh-generator-annprocess/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>java@gentoo.org</email> + <name>Java</name> + </maintainer> + + <origin>gentoo-staging</origin> +</pkgmetadata>
\ No newline at end of file diff --git a/dev-java/jna/Manifest b/dev-java/jna/Manifest index 5a75b4046036..667bee66b18f 100644 --- a/dev-java/jna/Manifest +++ b/dev-java/jna/Manifest @@ -1 +1,2 @@ DIST jna-5.13.0.tar.gz 116027625 BLAKE2B 1f2bc7ab28adefa0bbad122957ed2c6ef55ab88e79b30c05f0d2d88e0e05152f7bb5e28097906a7e24f78304dfa2b225587adb0ada205ca3c2ceac1cdbab3f04 SHA512 aefd0becc03bb7fd753e8c5cdcbcb20f6d590125a5fb03048bef0024e826ab0254b750e22a8bb26bea38cc89262ad45e5030b666cb2c857b01b15a6a55379a0f +DIST jna-5.14.0.tar.gz 116167104 BLAKE2B 3ccb9e53e843690f9c90272c2e94fb2d903dd9bbcb7b6294a6ed3d973d3945c2b3fe5ac5e4c472830a7d07f4f32d84e781bb2ae3bd73cdd1894392331554e2cd SHA512 5758898052b3b099cd8b40046f764813377970a428e66370ba2a7125403661e25379d55fdb0ff75de32d66cbff20f0a05f438b2ca18804cc53f2edf4b1927ff0 diff --git a/dev-java/jna/jna-5.14.0.ebuild b/dev-java/jna/jna-5.14.0.ebuild new file mode 100644 index 000000000000..5a2384e5a276 --- /dev/null +++ b/dev-java/jna/jna-5.14.0.ebuild @@ -0,0 +1,197 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_PROVIDES=" + net.java.dev.jna:jna:${PV} + net.java.dev.jna:jna-platform:${PV} +" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple toolchain-funcs + +DESCRIPTION="Java Native Access" +HOMEPAGE="https://github.com/java-native-access/jna" +SRC_URI="https://github.com/java-native-access/jna/archive/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}" + +LICENSE="|| ( Apache-2.0 LGPL-2.1+ )" +SLOT="4" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +BDEPEND=" + virtual/pkgconfig +" + +CDEPEND=" + >=dev-libs/libffi-3.4:= +" + +DEPEND=" + >=virtual/jdk-1.8:* + test? ( + dev-java/reflections:0 + ) + ${CDEPEND} + x11-libs/libXt +" + +RDEPEND=" + >=virtual/jre-1.8:* + ${CDEPEND} +" + +DOCS=( README.md CHANGES.md OTHERS TODO ) +PATCHES=( + "${FILESDIR}/5.11.0-makefile-flags.patch" + "${FILESDIR}/jna-5.11.0-no-Werror.patch" + "${FILESDIR}/jna-5.13.0-testpath.patch" + "${FILESDIR}/jna-5.13.0-LibCTest.patch" +) + +src_prepare() { + default + java-pkg-2_src_prepare + java-pkg_clean + mkdir -p "res/META-INF" || die + echo "Main-Class: com.sun.jna.Native" > "res/META-INF/MANIFEST.MF" || die + + # https://github.com/java-native-access/jna/blob/5.13.0/build.xml#L402-L407 + sed \ + -e "/VERSION =/s:TEMPLATE:${PV}:" \ + -e '/VERSION_NATIVE =/s:TEMPLATE:5.1.0:' \ + -i src/com/sun/jna/Version.java || die +} + +src_compile() { + einfo "Compiling jna.jar" + JAVA_AUTOMATIC_MODULE_NAME="com.sun.jna" + JAVA_JAR_FILENAME="jna.jar" + JAVA_RESOURCE_DIRS="res" + JAVA_SRC_DIR="src" + java-pkg-simple_src_compile + JAVA_GENTOO_CLASSPATH_EXTRA+=":jna.jar" + rm -r target || die + + einfo "Compiling jna-platform.jar" + JAVA_AUTOMATIC_MODULE_NAME="com.sun.jna.platform" + JAVA_JAR_FILENAME="jna-platform.jar" + JAVA_RESOURCE_DIRS="" + JAVA_SRC_DIR="contrib/platform/src" + java-pkg-simple_src_compile + JAVA_GENTOO_CLASSPATH_EXTRA+=":jna-platform.jar" + rm -r target || die + + if use doc; then + einfo "Compiling javadocs" + JAVA_SRC_DIR=( + "src" + "contrib/platform/src" + ) + JAVA_JAR_FILENAME="ignoreme.jar" + java-pkg-simple_src_compile + fi + + einfo "Generating headers com_sun_jna_Native.h com_sun_jna_Function.h" + ejavac -h native -classpath "src" \ + "src/com/sun/jna/Function.java" \ + "src/com/sun/jna/Native.java" || die + + einfo "Building native library" + cd native || die + local args=( + CC="$(tc-getCC)" + STRIP=true + DYNAMIC_LIBFFI=true + ) + # Using -j1 since otherwise fails to build: + # cannot find ../build/native/libtestlib.so: No such file or directory + # [Makefile:505: ../build/native/libtestlib2.so] Error 1 + emake -j1 "${args[@]}" +} + +src_test() { + JAVA_TEST_EXTRA_ARGS=( + -Djna.nosys=true + -Djna.boot.library.path=build/native + -Djna.library.path=build/native + ) + JAVA_TEST_GENTOO_CLASSPATH=" + junit-4 + reflections + " + + JAVA_TEST_SRC_DIR="contrib/platform/test" + rm -r contrib/platform/test/com/sun/jna/platform/{mac,unix,win32} || die + JAVA_TEST_EXCLUDES=( + # 1) testGetXAttr(com.sun.jna.platform.linux.XAttrUtilTest) + # java.io.IOException: errno: 95 + # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:85) + # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:70) + # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:56) + # at com.sun.jna.platform.linux.XAttrUtilTest.testGetXAttr(XAttrUtilTest.java:83) + # 2) setXAttr(com.sun.jna.platform.linux.XAttrUtilTest) + # java.io.IOException: errno: 95 + # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:85) + # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:70) + # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:56) + # at com.sun.jna.platform.linux.XAttrUtilTest.setXAttr(XAttrUtilTest.java:53) + com.sun.jna.platform.linux.XAttrUtilTest + ) + java-pkg-simple_src_test + + JAVA_TEST_SRC_DIR="test" + rm -r test/com/sun/jna/wince || die + rm -r test/com/sun/jna/win32 || die + + # 1) testLoadFromJarAbsolute(com.sun.jna.LibraryLoadTest) + # java.lang.UnsatisfiedLinkError: Unable to load library '/libtestlib-jar.so': + # /libtestlib-jar.so: cannot open shared object file: No such file or directory + jar cvf build/jna-test.jar \ + -C build/native libtestlib-jar.so \ + -C test com/sun/jna/data || die + JAVA_GENTOO_CLASSPATH_EXTRA+=":build/jna-test.jar" + + JAVA_TEST_EXCLUDES=( + com.sun.jna.CallbacksTest # Needs to run separately + com.sun.jna.DirectTest # Needs to run separately + com.sun.jna.NativeTest # Needs to run separately + com.sun.jna.TypeMapperTest # Needs to run separately + com.sun.jna.UnionTest # Needs to run separately + com.sun.jna.VMCrashProtectionTest # Needs to run separately + ) + java-pkg-simple_src_test + + JAVA_TEST_RUN_ONLY=( + com.sun.jna.CallbacksTest + com.sun.jna.DirectTest + com.sun.jna.UnionTest + ) + java-pkg-simple_src_test + + JAVA_TEST_RUN_ONLY=( com.sun.jna.NativeTest ) + java-pkg-simple_src_test + + JAVA_TEST_RUN_ONLY=( com.sun.jna.VMCrashProtectionTest ) + java-pkg-simple_src_test + + JAVA_TEST_RUN_ONLY=( com.sun.jna.TypeMapperTest ) + java-pkg-simple_src_test +} + +src_install() { + default + java-pkg_dojar jna.jar jna-platform.jar + java-pkg_doso build/native/libjnidispatch.so + + if use doc; then + java-pkg_dojavadoc target/api + fi + + if use source; then + java-pkg_dosrc "src/*" + java-pkg_dosrc "contrib/platform/src/*" + fi +} |
