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.
gentoo-overlay/dev-java/maven-bin/maven-bin-3.3.9.ebuild

111 lines
2.2 KiB

# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
inherit java-pkg-2
MY_PN=apache-${PN%%-bin}
MY_PV=${PV/_alpha/-alpha-}
MY_P="${MY_PN}-${MY_PV}"
MY_MV="${PV%%.*}"
DESCRIPTION="Project Management and Comprehension Tool for Java"
SRC_URI="mirror://apache/maven/maven-${MY_MV}/${PV}/binaries/${MY_P}-bin.tar.gz"
HOMEPAGE="http://maven.apache.org/"
LICENSE="Apache-2.0"
SLOT="3.3"
KEYWORDS="~amd64 ~x86"
# TODO: Needs further resolution:
#
# - https://bugs.gentoo.org/show_bug.cgi?id=472850
# - https://bugs.gentoo.org/show_bug.cgi?id=477436
#
CDEPEND="
dev-java/juel:0
dev-java/log4j:0
dev-java/jsoup:0
dev-java/jsr250:0
dev-java/commons-io:1
dev-java/aopalliance:1
dev-java/commons-cli:1
dev-java/javax-inject:0
dev-java/osgi-core-api:0
dev-java/commons-logging:0
java-virtuals/interceptor-api:0
java-virtuals/servlet-api:3.0"
DEPEND="
${CDEPEND}
app-eselect/eselect-java
|| ( dev-java/commons-logging:0 dev-java/log4j:0 )
>=virtual/jdk-1.7"
RDEPEND="
${CDEPEND}
>=virtual/jre-1.7"
S="${WORKDIR}/${MY_P}"
MAVEN="${PN}-${SLOT}"
MAVEN_SHARE="/usr/share/${MAVEN}"
MAVEN_DEPENDENCIES=(
juel
jsoup
log4j
jsr250
javax-inject
commons-io-1
osgi-core-api
aopalliance-1
commons-cli-1
commons-logging
interceptor-api
servlet-api-3.0
)
java_prepare() {
rm -v bin/*.cmd lib/{aopalliance,commons-cli,javax.inject,jsr250}-*.jar || die
chmod 644 boot/*.jar lib/*.jar conf/settings.xml || die
# Symlink jars.
cd lib || die
# Link deps.
for mvn_dep in "${MAVEN_DEPENDENCIES[@]}"; do
java-pkg_jar-from "${mvn_dep}"
done
}
# TODO: We should use jars from packages, instead of what is bundled.
src_install() {
dodir "${MAVEN_SHARE}"
cp -Rp bin boot conf lib "${ED}/${MAVEN_SHARE}" || die "failed to copy"
java-pkg_regjar "${ED}/${MAVEN_SHARE}"/boot/*.jar
java-pkg_regjar "${ED}/${MAVEN_SHARE}"/lib/*.jar
dodoc NOTICE README.txt
dodir /usr/bin
dosym "${MAVEN_SHARE}/bin/mvn" /usr/bin/mvn-${SLOT}
# See bug #342901.
echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
doenvd "${T}/25${MAVEN}"
}
pkg_postinst() {
eselect maven update mvn-${SLOT}
}
pkg_postrm() {
eselect maven update
}