You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
126 lines
3.3 KiB
126 lines
3.3 KiB
9 years ago
|
# Copyright 1999-2015 Gentoo Foundation
|
||
|
# Distributed under the terms of the GNU General Public License v2
|
||
|
# $Header: /var/cvsroot/gentoo-x86/dev-java/jdbc-jaybird/jdbc-jaybird-2.2.7.ebuild,v 1.1 2015/05/15 21:05:39 monsieurp Exp $
|
||
|
|
||
|
EAPI="5"
|
||
|
JAVA_PKG_IUSE="doc source examples test"
|
||
|
|
||
|
inherit eutils java-pkg-2 java-ant-2
|
||
|
|
||
|
At="Jaybird-${PV/_/}-src"
|
||
|
DESCRIPTION="JDBC Type 2 and 4 drivers for Firebird SQL server"
|
||
|
HOMEPAGE="http://jaybirdwiki.firebirdsql.org/"
|
||
|
SRC_URI="mirror://sourceforge/firebird/${At}.tar.gz"
|
||
|
LICENSE="LGPL-2"
|
||
|
SLOT="0"
|
||
|
KEYWORDS="~amd64 ~x86"
|
||
|
IUSE="jni"
|
||
|
|
||
|
RDEPEND=">=virtual/jre-1.6
|
||
|
dev-java/junit:4
|
||
|
dev-java/antlr:4
|
||
|
dev-java/log4j:0
|
||
|
dev-java/glassfish-connector-api:0"
|
||
|
DEPEND=">=virtual/jdk-1.6
|
||
|
${RDEPEND}
|
||
|
app-arch/unzip
|
||
|
jni? ( dev-java/cpptasks )
|
||
|
test? ( dev-java/ant-junit:0 )"
|
||
|
|
||
|
S="${WORKDIR}/${At}"
|
||
|
|
||
|
MY_PN="jaybird"
|
||
|
|
||
|
java_prepare() {
|
||
|
# prevent test/sources/javadoc from being built unless wanted
|
||
|
sed -i -e 's|name="jar-test" depends="compile"|name="jar-test" depends="compile" if="tests"|' \
|
||
|
"${S}/build/archive.xml" || die
|
||
|
sed -i -e 's|name="compile-examples"|name="compile-examples" if="examples"|' \
|
||
|
-e 's|,set-jdbc-42-test"|,set-jdbc-42-test" if="tests"|' \
|
||
|
"${S}/build/compile.xml" || die
|
||
|
|
||
|
# JAVA_ANT_ENCODING doesn't work because it doesn't like entities
|
||
|
java-ant_xml-rewrite -f build.xml -c -e javac -a encoding -v ISO-8859-1
|
||
|
|
||
|
cd "${S}/lib/"
|
||
|
rm -v *.jar
|
||
|
|
||
|
cd "${S}/src/lib/"
|
||
|
rm -v *.jar *.zip
|
||
|
|
||
|
java-pkg_jar-from --build-only glassfish-connector-api \
|
||
|
glassfish-connector-api.jar connector-api-1.5.jar
|
||
|
|
||
|
# the build.xml unpacks this and uses stuff
|
||
|
touch empty
|
||
|
jar cf mini-j2ee.jar empty
|
||
|
}
|
||
|
|
||
|
JAVA_ANT_REWRITE_CLASSPATH="true"
|
||
|
EANT_GENTOO_CLASSPATH="antlr:4,glassfish-connector-api,log4j"
|
||
|
EANT_BUILD_TARGET="jars"
|
||
|
EANT_DOC_TARGET="javadocs"
|
||
|
|
||
|
src_compile() {
|
||
|
java-pkg_filter-compiler jikes
|
||
|
use jni && ANT_TASKS="cpptasks"
|
||
|
|
||
|
# This is nonsense, I know, but it works.
|
||
|
if use test; then
|
||
|
EANT_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
|
||
|
fi
|
||
|
|
||
|
java-pkg-2_src_compile $(use test && echo "-Dtests=true") \
|
||
|
$(use jni && echo "compile-native")
|
||
|
}
|
||
|
|
||
|
src_install() {
|
||
|
cd "${S}/output/lib/"
|
||
|
java-pkg_newjar ${MY_PN}-${PV}.jar ${PN}.jar
|
||
|
|
||
|
for jar in full; do
|
||
|
java-pkg_newjar ${MY_PN}-${jar}-${PV}.jar ${MY_PN}-${jar}.jar || die "java-pkg_newjar ${MY_PN}-${jar}.jar failed"
|
||
|
done
|
||
|
if use test; then
|
||
|
java-pkg_newjar ${MY_PN}-test-${PV}.jar ${MY_PN}-${jar}.jar || die "java-pkg_newjar ${MY_PN}-${jar}.jar failed"
|
||
|
fi
|
||
|
|
||
|
if use jni; then
|
||
|
cd "${S}/output/native"
|
||
|
sodest="/usr/lib/"
|
||
|
local so_arch
|
||
|
if use amd64; then
|
||
|
so_arch="x64"
|
||
|
elif use x86; then
|
||
|
so_arch="x86"
|
||
|
fi
|
||
|
java-pkg_doso libjaybird22_${so_arch}.so || die \
|
||
|
"java-pkg_doso ${sodest}libjaybird22.so failed"
|
||
|
fi
|
||
|
|
||
|
cd "${S}"
|
||
|
|
||
|
if use examples; then
|
||
|
insinto /usr/share/doc/${PF}/
|
||
|
doins -r examples || die "installing examples failed"
|
||
|
fi
|
||
|
|
||
|
use source && java-pkg_dosrc "${S}"/src/*/org
|
||
|
|
||
|
cd "${S}/output"
|
||
|
use doc && java-pkg_dohtml -r docs/
|
||
|
dodoc etc/default.mf
|
||
|
dohtml etc/*.html
|
||
|
}
|
||
|
|
||
|
src_test() {
|
||
|
#
|
||
|
# Warning about timeouts without Firebird installed and running Locally
|
||
|
#
|
||
|
ewarn "You will experience long timeouts when running junit tests"
|
||
|
ewarn "without Firebird installed and running locally. The tests will"
|
||
|
ewarn "complete without Firebird, but network timeouts prolong the"
|
||
|
ewarn "testing phase considerably."
|
||
|
ANT_TASKS="ant-junit" eant all-tests-pure-java
|
||
|
}
|