diff options
author | 2014-11-13 15:08:27 +0000 | |
---|---|---|
committer | 2014-11-13 15:08:27 +0000 | |
commit | ded843e866a4d051b00c7c1d8b6bece8c6de79a5 (patch) | |
tree | a5def331e52ddb670f19761735d61e0268d52cf1 /dev-java/jffi | |
parent | Version bump (diff) | |
download | gentoo-2-ded843e866a4d051b00c7c1d8b6bece8c6de79a5.tar.gz gentoo-2-ded843e866a4d051b00c7c1d8b6bece8c6de79a5.tar.bz2 gentoo-2-ded843e866a4d051b00c7c1d8b6bece8c6de79a5.zip |
Fixed boot.properties generation
(Portage version: 2.2.8-r2/cvs/Linux x86_64, signed Manifest commit with key 77C501ED)
Diffstat (limited to 'dev-java/jffi')
-rw-r--r-- | dev-java/jffi/ChangeLog | 10 | ||||
-rw-r--r-- | dev-java/jffi/jffi-1.0.0-r1.ebuild | 82 | ||||
-rw-r--r-- | dev-java/jffi/jffi-1.0.11-r1.ebuild | 107 | ||||
-rw-r--r-- | dev-java/jffi/jffi-1.2.7-r1.ebuild | 123 |
4 files changed, 321 insertions, 1 deletions
diff --git a/dev-java/jffi/ChangeLog b/dev-java/jffi/ChangeLog index a08125bc2896..dffa17067b4f 100644 --- a/dev-java/jffi/ChangeLog +++ b/dev-java/jffi/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for dev-java/jffi # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/ChangeLog,v 1.34 2014/11/12 05:22:48 ercpe Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/ChangeLog,v 1.35 2014/11/13 15:08:27 ercpe Exp $ + +*jffi-1.2.7-r1 (13 Nov 2014) +*jffi-1.0.11-r1 (13 Nov 2014) +*jffi-1.0.0-r1 (13 Nov 2014) + + 13 Nov 2014; Johann Schmitz <ercpe@gentoo.org> +jffi-1.0.0-r1.ebuild, + +jffi-1.0.11-r1.ebuild, +jffi-1.2.7-r1.ebuild: + Fixed boot.properties generation 12 Nov 2014; Johann Schmitz <ercpe@gentoo.org> +files/jffi-1.2.7_no-werror.patch, jffi-1.2.7.ebuild: diff --git a/dev-java/jffi/jffi-1.0.0-r1.ebuild b/dev-java/jffi/jffi-1.0.0-r1.ebuild new file mode 100644 index 000000000000..7717178d09d2 --- /dev/null +++ b/dev-java/jffi/jffi-1.0.0-r1.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/jffi-1.0.0-r1.ebuild,v 1.1 2014/11/13 15:08:27 ercpe Exp $ + +# Probably best to leave the CFLAGS as they are here. See... +# http://weblogs.java.net/blog/kellyohair/archive/2006/01/compilation_of_1.html + +EAPI="5" + +JAVA_PKG_IUSE="source test" +WANT_ANT_TASKS="ant-nodeps" +inherit java-pkg-2 java-ant-2 toolchain-funcs flag-o-matic versionator + +DESCRIPTION="An optimized Java interface to libffi" +HOMEPAGE="http://github.com/wmeissner/jffi" + +SRC_URI="mirror://gentoo/${P}.tar.gz" + +LICENSE="LGPL-3" +SLOT="0.4" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="" + +RDEPEND=">=virtual/jre-1.5 + virtual/libffi" + +DEPEND=">=virtual/jdk-1.5 + virtual/libffi + virtual/pkgconfig + test? ( dev-java/ant-junit4 )" + +JAVA_PKG_BSFIX_NAME="build-impl.xml custom-build.xml" +JAVA_PKG_FILTER_COMPILER="ecj-3.3 ecj-3.4 ecj-3.5" + +java_prepare() { + # Delete the bundled JARs. + find lib archive -name "*.jar" -delete || die + # Delete the bundled libffi + rm -rf jni/libffi || die + + epatch "${FILESDIR}/${P}-makefile.patch" + epatch "${FILESDIR}/1.0.0-gcc-3.4.patch" + + # any better function for this, excluding get_system_arch in java-vm-2 which is incorrect to inherit ? + local arch="" + use x86 && arch="i386" + use amd64 && arch="x86_64" + use ppc && arch="ppc" + + # Don't include prebuilt files for other archs. + sed -i '/<zipfileset src="archive\//d' custom-build.xml || die + sed -i '/libs.CopyLibs.classpath/d' lib/nblibraries.properties || die + sed -i '/copylibstask.jar/d' lib/nblibraries.properties || die + + # Fix build with GCC 4.7 #421501 + sed -i -e "s|-mimpure-text||g" jni/GNUmakefile || die +} + +EANT_EXTRA_ARGS="-Duse.system.libffi=1" + +src_install() { + java-pkg_doso build/jni/lib${PN}-$(get_version_component_range 1-2).so + + # must by after _doso to have JAVA_PKG_LIBDEST set + mkdir -p "${T}"/com/kenai/jffi || die + cat - > "${T}"/com/kenai/jffi/boot.properties <<EOF +jffi.boot.library.path = ${JAVA_PKG_LIBDEST} +EOF + + pushd "${T}" &>/dev/null + jar -uf "${S}"/dist/${PN}.jar com + popd + + java-pkg_dojar dist/${PN}.jar + use source && java-pkg_dosrc src/* +} + +src_test() { + ANT_TASKS="ant-junit4 ant-nodeps" eant test \ + "${EANT_EXTRA_ARGS}" \ + -Dlibs.junit_4.classpath="$(java-pkg_getjars --with-dependencies junit-4)" +} diff --git a/dev-java/jffi/jffi-1.0.11-r1.ebuild b/dev-java/jffi/jffi-1.0.11-r1.ebuild new file mode 100644 index 000000000000..0dcdc43d3a1b --- /dev/null +++ b/dev-java/jffi/jffi-1.0.11-r1.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2014 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-r1.ebuild,v 1.1 2014/11/13 15:08:27 ercpe Exp $ + +EAPI="5" + +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 + virtual/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 + sed -i -e 's/-Werror //' libtest/GNUmakefile || die + + find "${WORKDIR}" -iname '*.jar' -delete || die + + # Fix build with GCC 4.7 #421501 + sed -i -e "s|-mimpure-text||g" jni/GNUmakefile libtest/GNUmakefile || die +} + +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 || die + 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() { + java-pkg_doso build/jni/lib${PN}-$(get_version_component_range 1-2).so + + # must by after _doso to have JAVA_PKG_LIBDEST set + 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 + + use doc && java-pkg_dojavadoc target/site/apidocs + use source && java-pkg_dosrc src/main/java/* +} diff --git a/dev-java/jffi/jffi-1.2.7-r1.ebuild b/dev-java/jffi/jffi-1.2.7-r1.ebuild new file mode 100644 index 000000000000..0d5ca4cc7d59 --- /dev/null +++ b/dev-java/jffi/jffi-1.2.7-r1.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/jffi/jffi-1.2.7-r1.ebuild,v 1.1 2014/11/13 15:08:27 ercpe Exp $ + +EAPI="5" + +JAVA_PKG_IUSE="doc source test" + +inherit eutils java-pkg-2 java-ant-2 versionator vcs-snapshot + +DESCRIPTION="An optimized Java interface to libffi" +HOMEPAGE="https://github.com/jnr/jffi" +SRC_URI="https://github.com/jnr/jffi/tarball/${PV} -> ${P}.tar.gz" + +LICENSE="|| ( Apache-2.0 LGPL-3 )" +SLOT="1.2" +KEYWORDS="~amd64 ~ppc ~x86 ~ppc-macos ~x64-macos ~x86-macos" + +COMMON_DEP="virtual/libffi:0" + +RDEPEND="${COMMON_DEP} + >=virtual/jre-1.5" + +DEPEND="${COMMON_DEP} + >=virtual/jdk-1.5 + virtual/pkgconfig + test? ( + dev-java/ant-junit4:0 + dev-java/junit:4 + )" + +java_prepare() { + cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die + epatch "${FILESDIR}"/${P}_no-werror.patch + epatch "${FILESDIR}"/${P}-junit-4.11.patch + + # misc fixes for Darwin + if [[ ${CHOST} == *-darwin* ]] ; then + local uarch + # don't do multiarch + # avoid using Xcode stuff + # use Prefix' headers + # don't mess with deployment target + # set install_name + use x64-macos && uarch=x86_64 + use x86-macos && uarch=i386 + use ppc-macos && uarch=ppc + sed -i \ + -e "/ARCHES +=/s/=.*$/= ${uarch}/" \ + -e "/XCODE=/s:=.*$:=${EPREFIX}:" \ + -e "/MACSDK/s/^/#/" \ + -e "/MACOSX_DEPLOYMENT_TARGET=/s/MAC/NOMAC/" \ + -e "/SOFLAGS =/s:=.*:= -install_name ${EPREFIX}/usr/lib/jffi-${SLOT}/libjffi-${SLOT}.jnilib:" \ + jni/GNUmakefile || die + fi + + find "${WORKDIR}" -iname '*.jar' -delete +} + +JAVA_ANT_REWRITE_CLASSPATH="yes" + +EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}" +src_compile() { + # generate Version.java + cat > src/main/java/com/kenai/jffi/Version.java <<-EOF + 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="ant-junit4,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() { + local libname=".so" + + [[ ${CHOST} == *-darwin* ]] && libname=.jnilib + java-pkg_doso build/jni/lib${PN}-$(get_version_component_range 1-2)${libname} + + # must by after _doso to have JAVA_PKG_LIBDEST set + cat > boot.properties <<-EOF + jffi.boot.library.path = ${JAVA_PKG_LIBDEST} + EOF + jar -uf target/${PN}.jar boot.properties || die + + java-pkg_dojar target/${PN}.jar + + use doc && java-pkg_dojavadoc target/site/apidocs + use source && java-pkg_dosrc src/main/java/* +} |