| # Copyright 1999-2012 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI=4 |
| |
| inherit eutils toolchain-funcs multilib java-pkg-2 |
| |
| DESCRIPTION="jbigi JNI library for net.i2p.util.NativeBigInteger java-class from I2P" |
| HOMEPAGE="http://www.i2p2.de" |
| SRC_URI="http://mirror.i2p2.de/i2psource_${PV}.tar.bz2" |
| |
| LICENSE="|| ( public-domain BSD MIT )" |
| SLOT="0" |
| KEYWORDS="~amd64 ~x86" |
| |
| IUSE="test" |
| |
| DEPEND="${RDEPEND} |
| >=virtual/jdk-1.5" |
| RDEPEND="dev-libs/gmp" |
| |
| S=${WORKDIR}/i2p-${PV}/core/ |
| |
| src_prepare() { |
| epatch "${FILESDIR}/${P}"-build-system.patch \ |
| "${FILESDIR}/${P}"-jcpuid-build-system.patch \ |
| "${FILESDIR}/${P}"-debug-all.patch \ |
| "${FILESDIR}/${P}"-non-android-warnings.patch \ |
| "${FILESDIR}/${P}"-asmfix.patch |
| } |
| |
| src_compile() { |
| tc-export CC |
| |
| cd c/jbigi/jbigi/src || die |
| ../../build_jbigi.sh dynamic || die |
| |
| if use test ; then |
| einfo "Building tests ..." |
| cd "${S}"java/src || die |
| ejavac net/i2p/util/NativeBigInteger.java || die |
| eend $? |
| fi |
| if ( use amd64 || use x86 ) ; then |
| cd "${S}"c/jcpuid |
| ./build.sh || die |
| fi |
| } |
| |
| src_test() { |
| cd java/src || die |
| java -Djava.library.path="${S}"/c/jbigi/jbigi/src net/i2p/util/NativeBigInteger || die |
| } |
| |
| src_install() { |
| local os arch |
| |
| dolib c/jbigi/jbigi/src/libjbigi.so |
| ( use amd64 || use x86 ) && dolib c/jcpuid/lib/freenet/support/CPUInformation/libjcpuid-x86-linux.so |
| |
| ## The following is needed for compatibility with earlier versions of NativeBigInteger ## |
| |
| # arch list found by "none" + grep 'JBIGI_OPTIMIZATION_.*=' core/java/src/net/i2p/util/NativeBigInteger.java |
| for arch in none arm k6 k62 k63 athlon x86_64 x86_64_32 pentium pentiummmx pentium2 pentium3 pentium4 ppc ; do |
| dosym libjbigi.so /usr/$(get_libdir)/libjbigi-linux-$arch.so |
| done |
| } |