Gentoo Archives: gentoo-commits

From: Patrice Clement <monsieurp@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/maven-bin/
Date: Thu, 29 Oct 2015 21:25:29
Message-Id: 1446153793.29cb75279d20d80aa71d90c8a00a12fac7099891.monsieurp@gentoo
1 commit: 29cb75279d20d80aa71d90c8a00a12fac7099891
2 Author: Patrice Clement <monsieurp <AT> gentoo <DOT> org>
3 AuthorDate: Thu Oct 29 21:03:06 2015 +0000
4 Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org>
5 CommitDate: Thu Oct 29 21:23:13 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29cb7527
7
8 dev-java/maven-bin: Sort out dependencies.
9
10 Package-Manager: portage-2.2.20.1
11 Signed-off-by: Patrice Clement <monsieurp <AT> gentoo.org>
12
13 dev-java/maven-bin/maven-bin-3.3.3-r1.ebuild | 110 +++++++++++++++++++++++++++
14 1 file changed, 110 insertions(+)
15
16 diff --git a/dev-java/maven-bin/maven-bin-3.3.3-r1.ebuild b/dev-java/maven-bin/maven-bin-3.3.3-r1.ebuild
17 new file mode 100644
18 index 0000000..1019685
19 --- /dev/null
20 +++ b/dev-java/maven-bin/maven-bin-3.3.3-r1.ebuild
21 @@ -0,0 +1,110 @@
22 +# Copyright 1999-2015 Gentoo Foundation
23 +# Distributed under the terms of the GNU General Public License v2
24 +# $Id$
25 +
26 +EAPI="5"
27 +
28 +inherit java-pkg-2
29 +
30 +MY_PN=apache-${PN%%-bin}
31 +MY_PV=${PV/_alpha/-alpha-}
32 +MY_P="${MY_PN}-${MY_PV}"
33 +MY_MV="${PV%%.*}"
34 +
35 +DESCRIPTION="Project Management and Comprehension Tool for Java"
36 +SRC_URI="mirror://apache/maven/maven-${MY_MV}/${PV}/binaries/${MY_P}-bin.tar.gz"
37 +HOMEPAGE="http://maven.apache.org/"
38 +
39 +LICENSE="Apache-2.0"
40 +SLOT="3.3"
41 +KEYWORDS="~amd64 ~x86"
42 +
43 +# TODO: Needs further resolution:
44 +#
45 +# - https://bugs.gentoo.org/show_bug.cgi?id=472850
46 +# - https://bugs.gentoo.org/show_bug.cgi?id=477436
47 +#
48 +CDEPEND="
49 + dev-java/juel:0
50 + dev-java/log4j:0
51 + dev-java/jsoup:0
52 + dev-java/jsr250:0
53 + dev-java/commons-io:1
54 + dev-java/aopalliance:1
55 + dev-java/commons-cli:1
56 + dev-java/javax-inject:0
57 + dev-java/osgi-core-api:0
58 + dev-java/commons-logging:0
59 + java-virtuals/interceptor-api:0
60 + java-virtuals/servlet-api:3.0"
61 +
62 +DEPEND="
63 + ${CDEPEND}
64 + || ( app-eselect/eselect-java app-eselect/eselect-maven )
65 + || ( dev-java/commons-logging:0 dev-java/log4j:0 )
66 + >=virtual/jdk-1.7"
67 +
68 +RDEPEND="
69 + ${CDEPEND}
70 + >=virtual/jre-1.7"
71 +
72 +S="${WORKDIR}/${MY_P}"
73 +
74 +MAVEN="${PN}-${SLOT}"
75 +MAVEN_SHARE="/usr/share/${MAVEN}"
76 +
77 +MAVEN_DEPENDENCIES=(
78 + juel
79 + jsoup
80 + log4j
81 + jsr250
82 + javax-inject
83 + commons-io-1
84 + osgi-core-api
85 + aopalliance-1
86 + commons-cli-1
87 + commons-logging
88 + interceptor-api
89 + servlet-api-3.0
90 +)
91 +
92 +java_prepare() {
93 + rm -v bin/*.cmd lib/{aopalliance,commons-cli,javax.inject,jsr250}-*.jar || die
94 +
95 + chmod 644 boot/*.jar lib/*.jar conf/settings.xml || die
96 +
97 + # Symlink jars.
98 + cd lib || die
99 +
100 + # Link deps.
101 + for mvn_dep in "${MAVEN_DEPENDENCIES[@]}"; do
102 + java-pkg_jar-from "${mvn_dep}"
103 + done
104 +}
105 +
106 +# TODO: We should use jars from packages, instead of what is bundled.
107 +src_install() {
108 + dodir "${MAVEN_SHARE}"
109 +
110 + cp -Rp bin boot conf lib "${ED}/${MAVEN_SHARE}" || die "failed to copy"
111 +
112 + java-pkg_regjar "${ED}/${MAVEN_SHARE}"/boot/*.jar
113 + java-pkg_regjar "${ED}/${MAVEN_SHARE}"/lib/*.jar
114 +
115 + dodoc NOTICE README.txt
116 +
117 + dodir /usr/bin
118 + dosym "${MAVEN_SHARE}/bin/mvn" /usr/bin/mvn-${SLOT}
119 +
120 + # See bug #342901.
121 + echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
122 + doenvd "${T}/25${MAVEN}"
123 +}
124 +
125 +pkg_postinst() {
126 + eselect maven update mvn-${SLOT}
127 +}
128 +
129 +pkg_postrm() {
130 + eselect maven update
131 +}