blob: a6ccf46e67f45bb3250cf063797511c38019a8e6 [file] [log] [blame]
# 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
}