1 |
commit: dab6103d9c5839d72593654a6bef57b564fe500e |
2 |
Author: Patrice Clement <monsieurp <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Sep 28 21:23:00 2016 +0000 |
4 |
Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Sep 28 21:23:20 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dab6103d |
7 |
|
8 |
www-servers/resin: do not call get_libdir in global scope. |
9 |
|
10 |
Gentoo-Bug: https://bugs.gentoo.org/593402 |
11 |
|
12 |
Package-Manager: portage-2.2.28 |
13 |
|
14 |
www-servers/resin/resin-4.0.48-r1.ebuild | 180 +++++++++++++++++++++++++++++++ |
15 |
1 file changed, 180 insertions(+) |
16 |
|
17 |
diff --git a/www-servers/resin/resin-4.0.48-r1.ebuild b/www-servers/resin/resin-4.0.48-r1.ebuild |
18 |
new file mode 100644 |
19 |
index 00000000..54afbab |
20 |
--- /dev/null |
21 |
+++ b/www-servers/resin/resin-4.0.48-r1.ebuild |
22 |
@@ -0,0 +1,180 @@ |
23 |
+# Copyright 1999-2016 Gentoo Foundation |
24 |
+# Distributed under the terms of the GNU General Public License v2 |
25 |
+# $Id$ |
26 |
+ |
27 |
+EAPI="5" |
28 |
+ |
29 |
+JAVA_PKG_IUSE="source" |
30 |
+ |
31 |
+inherit java-pkg-2 java-ant-2 eutils flag-o-matic multilib user |
32 |
+ |
33 |
+DESCRIPTION="A fast Servlet and JSP engine" |
34 |
+HOMEPAGE="http://www.caucho.com" |
35 |
+SRC_URI="http://www.caucho.com/download/${P}-src.zip" |
36 |
+ |
37 |
+LICENSE="GPL-2" |
38 |
+SLOT="0" |
39 |
+IUSE="admin doc" |
40 |
+ |
41 |
+KEYWORDS="~amd64 ~x86" |
42 |
+ |
43 |
+CDEPEND=" |
44 |
+ dev-java/jsr101:0 |
45 |
+ dev-java/mojarra:2.2 |
46 |
+ dev-java/oracle-javamail:0 |
47 |
+ dev-java/validation-api:1.0 |
48 |
+ dev-java/resin-servlet-api:3.1 |
49 |
+ dev-java/glassfish-xmlrpc-api:0 |
50 |
+ dev-java/glassfish-deployment-api:1.2" |
51 |
+ |
52 |
+RDEPEND=" |
53 |
+ ${CDEPEND} |
54 |
+ >=virtual/jre-1.6" |
55 |
+ |
56 |
+DEPEND=" |
57 |
+ ${CDEPEND} |
58 |
+ app-arch/unzip |
59 |
+ dev-libs/openssl |
60 |
+ >=virtual/jdk-1.6 |
61 |
+ dev-java/ant-core:0" |
62 |
+ |
63 |
+JAVA_ANT_REWRITE_CLASSPATH="yes" |
64 |
+ |
65 |
+EANT_GENTOO_CLASSPATH=" |
66 |
+ jsr101 |
67 |
+ mojarra-2.2 |
68 |
+ oracle-javamail |
69 |
+ validation-api-1.0 |
70 |
+ glassfish-xmlrpc-api |
71 |
+ resin-servlet-api-3.1 |
72 |
+ glassfish-deployment-api-1.2 |
73 |
+" |
74 |
+ |
75 |
+PATCHES=( |
76 |
+ "${FILESDIR}"/"${PV}"/build.xml.patch |
77 |
+) |
78 |
+ |
79 |
+pkg_setup() { |
80 |
+ export RESIN_HOME="/usr/$(get_libdir)/resin" |
81 |
+ java-pkg-2_pkg_setup |
82 |
+ enewgroup resin |
83 |
+ enewuser resin -1 /bin/bash "${RESIN_HOME}" resin |
84 |
+} |
85 |
+ |
86 |
+src_prepare() { |
87 |
+ epatch "${PATCHES[@]}" |
88 |
+ |
89 |
+ # No bundled JARs! |
90 |
+ rm -rv "${S}"/modules/ext/*.jar "${S}"/project-jars || die |
91 |
+ |
92 |
+ java-ant_bsfix_one "${S}/build.xml" |
93 |
+ java-ant_bsfix_one "${S}/build-common.xml" |
94 |
+ |
95 |
+ rm -rv lib/* || die |
96 |
+ |
97 |
+ ln -s $(java-config --jdk-home)/lib/tools.jar || die |
98 |
+} |
99 |
+ |
100 |
+src_configure() { |
101 |
+ append-flags -fPIC -DPIC |
102 |
+ |
103 |
+ chmod 755 "${S}/configure" || die |
104 |
+ econf --prefix=${RESIN_HOME} || die "econf failed" |
105 |
+} |
106 |
+ |
107 |
+src_compile() { |
108 |
+ einfo "Building libraries..." |
109 |
+ emake |
110 |
+ |
111 |
+ einfo "Building jars..." |
112 |
+ eant || die "ant failed" |
113 |
+} |
114 |
+ |
115 |
+src_install() { |
116 |
+ emake DESTDIR="${D}" install |
117 |
+ |
118 |
+ einfo "Moving configuration to /etc ..." |
119 |
+ dodir /etc/ |
120 |
+ mv "${D}/${RESIN_HOME}/conf" "${D}/etc/resin" || die |
121 |
+ dosym /etc/resin ${RESIN_HOME}/conf |
122 |
+ |
123 |
+ einfo "Rewriting resin.xml ..." |
124 |
+ sed -i \ |
125 |
+ -e 's,${resin.root}/doc/resin-doc,webapps/resin-doc,' \ |
126 |
+ -e 's,${resin.root}/doc/admin,webapps/admin,' \ |
127 |
+ "${D}/etc/resin/resin.xml" || die |
128 |
+ |
129 |
+ einfo "Fixing log directory ..." |
130 |
+ rm -rv "${D}/${RESIN_HOME}"/log || die |
131 |
+ keepdir /var/log/resin |
132 |
+ dosym /var/log/resin ${RESIN_HOME}/log |
133 |
+ |
134 |
+ einfo "Installing basic documentation ..." |
135 |
+ dodoc README "${S}"/conf/*.xml |
136 |
+ |
137 |
+ einfo "Installing init.d script ..." |
138 |
+ newinitd "${FILESDIR}/${PV}/resin.init" resin |
139 |
+ newconfd "${FILESDIR}/${PV}/resin.conf" resin |
140 |
+ |
141 |
+ sed -i -e "s,__RESIN_HOME__,${RESIN_HOME},g" "${D}/etc/init.d/resin" || die |
142 |
+ |
143 |
+ einfo "Fixing location of jars ..." |
144 |
+ #rm -v "${S}"/lib/tools.jar || die |
145 |
+ java-pkg_dojar "${S}"/lib/*.jar |
146 |
+ rm -rv "${D}/${RESIN_HOME}"/lib || die |
147 |
+ dosym /usr/share/resin/lib ${RESIN_HOME}/lib |
148 |
+ |
149 |
+ dodir /var/lib/resin/webapps |
150 |
+ keepdir /var/lib/resin/hosts |
151 |
+ keepdir /var/lib/resin/resin-data |
152 |
+ keepdir /var/lib/resin/watchdog-data |
153 |
+ |
154 |
+ mv "${D}"/${RESIN_HOME}/webapps/* "${D}/var/lib/resin/webapps" || die |
155 |
+ rm -rv "${D}/${RESIN_HOME}"/webapps || die |
156 |
+ dosym /var/lib/resin/webapps ${RESIN_HOME}/webapps |
157 |
+ dosym /var/lib/resin/hosts ${RESIN_HOME}/hosts |
158 |
+ dosym /var/lib/resin/resin-data ${RESIN_HOME}/resin-data |
159 |
+ dosym /var/lib/resin/watchdog-data ${RESIN_HOME}/watchdog-data |
160 |
+ |
161 |
+ dosym \ |
162 |
+ "$(java-pkg_getjar resin-servlet-api-3.1 resin-servlet-api.jar)" \ |
163 |
+ "${JAVA_PKG_JARDEST}/resin-servlet-api.jar" |
164 |
+ |
165 |
+ use admin && { |
166 |
+ einfo "Installing administration app ..." |
167 |
+ cp -a "${S}/doc/admin" "${D}/var/lib/resin/webapps/" || die |
168 |
+ } |
169 |
+ use doc && { |
170 |
+ einfo "Installing documentation app ..." |
171 |
+ cp -a "${S}/doc/resin-doc" "${D}/var/lib/resin/webapps/" || die |
172 |
+ } |
173 |
+ |
174 |
+ use source && { |
175 |
+ einfo "Installing sources ..." |
176 |
+ java-pkg_dosrc "${S}"/modules/*/src/* > /dev/null |
177 |
+ } |
178 |
+ |
179 |
+ einfo "Removing stale directories ..." |
180 |
+ rm -rv "${D}/${RESIN_HOME}"/{bin,doc} || die |
181 |
+ #rm -rv "${D}"/etc/resin/*.orig || die |
182 |
+ |
183 |
+ einfo "Fixing ownerships and permissions ..." |
184 |
+ fowners -R 0:root / |
185 |
+ fowners -R resin:resin /etc/resin |
186 |
+ fowners -R resin:resin /var/lib/resin |
187 |
+ fowners -R resin:resin /var/log/resin |
188 |
+ |
189 |
+ fperms 644 /etc/conf.d/resin |
190 |
+ fperms 755 /etc/init.d/resin |
191 |
+ fperms 750 /var/lib/resin |
192 |
+ fperms 750 /etc/resin |
193 |
+} |
194 |
+ |
195 |
+pkg_postinst() { |
196 |
+ elog |
197 |
+ elog " User and group 'resin' have been added." |
198 |
+ elog |
199 |
+ elog " By default, Resin runs on port 8080. You can change this" |
200 |
+ elog " value by editing /etc/resin/resin.properties." |
201 |
+ elog |
202 |
+} |