Gentoo Archives: gentoo-commits

From: "Patrick McLean (chutzpah)" <chutzpah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-java/jython: ChangeLog jython-2.7_beta2-r1.ebuild
Date: Fri, 25 Jul 2014 17:55:43
Message-Id: 20140725175538.C43902004E@flycatcher.gentoo.org
1 chutzpah 14/07/25 17:55:38
2
3 Modified: ChangeLog
4 Added: jython-2.7_beta2-r1.ebuild
5 Log:
6 Revision bump, add patch copied from cpython standard libraries to fix problem with the re module.
7
8 (Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key 0xE3F69979BB4B8928DA78E3D17CBF44EF)
9
10 Revision Changes Path
11 1.93 dev-java/jython/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/jython/ChangeLog?rev=1.93&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/jython/ChangeLog?rev=1.93&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/jython/ChangeLog?r1=1.92&r2=1.93
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-java/jython/ChangeLog,v
20 retrieving revision 1.92
21 retrieving revision 1.93
22 diff -u -r1.92 -r1.93
23 --- ChangeLog 27 Jun 2014 22:27:42 -0000 1.92
24 +++ ChangeLog 25 Jul 2014 17:55:38 -0000 1.93
25 @@ -1,6 +1,13 @@
26 # ChangeLog for dev-java/jython
27 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-java/jython/ChangeLog,v 1.92 2014/06/27 22:27:42 chutzpah Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-java/jython/ChangeLog,v 1.93 2014/07/25 17:55:38 chutzpah Exp $
30 +
31 +*jython-2.7_beta2-r1 (25 Jul 2014)
32 +
33 + 25 Jul 2014; Patrick McLean <chutzpah@g.o>
34 + +jython-2.7_beta2-r1.ebuild, +files/jython-2.7_beta2-maxrepeat-import.patch:
35 + Revision bump, add patch copied from cpython standard libraries to fix
36 + problem with the re module.
37
38 *jython-2.7_beta2 (27 Jun 2014)
39
40
41
42
43 1.1 dev-java/jython/jython-2.7_beta2-r1.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/jython/jython-2.7_beta2-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/jython/jython-2.7_beta2-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: jython-2.7_beta2-r1.ebuild
49 ===================================================================
50 # Copyright 1999-2014 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/dev-java/jython/jython-2.7_beta2-r1.ebuild,v 1.1 2014/07/25 17:55:38 chutzpah Exp $
53
54 EAPI=5
55 JAVA_PKG_IUSE="doc examples source"
56
57 inherit eutils java-pkg-2 java-ant-2 python-utils-r1 flag-o-matic
58
59 MY_PV=${PV/_beta/-b}
60 MY_P=${PN}-${MY_PV}
61
62 DESCRIPTION="An implementation of Python written in Java"
63 HOMEPAGE="http://www.jython.org"
64 SRC_URI="http://search.maven.org/remotecontent?filepath=org/python/${PN}/${MY_PV}/${MY_P}-sources.jar"
65
66 LICENSE="PSF-2"
67 SLOT="2.7"
68 KEYWORDS="~amd64 ~x86 ~x86-freebsd ~amd64-linux ~x86-linux ~x86-macos"
69 IUSE="+readline test"
70 REQUIRED_USE="test? ( readline )"
71
72 COMMON_DEP="
73 dev-java/antlr:3
74 dev-java/asm:4
75 dev-java/commons-compress:0
76 dev-java/guava:13
77 >=dev-java/java-config-2.1.11-r3
78 dev-java/jffi:1.2
79 dev-java/jline:0
80 dev-java/icu4j:52
81 dev-java/jnr-constants:0
82 dev-java/jnr-posix:2.1
83 dev-java/stringtemplate:0
84 dev-java/xerces:2
85 java-virtuals/script-api:0
86 java-virtuals/servlet-api:2.5
87 readline? ( >=dev-java/libreadline-java-0.8.0:0 )"
88 RDEPEND="${COMMON_DEP}
89 >=virtual/jre-1.5"
90 DEPEND="${COMMON_DEP}
91 >=virtual/jdk-1.5
92 app-arch/unzip
93 test? (
94 dev-java/junit:4
95 dev-java/ant-junit:0
96 )"
97
98 S=${WORKDIR}
99
100 RESTRICT="test"
101
102 JAVA_ANT_REWRITE_CLASSPATH="yes"
103 EANT_GENTOO_CLASSPATH="asm-4,commons-compress,guava-13,jffi-1.2,jline,jnr-constants"
104 EANT_GENTOO_CLASSPATH+=",script-api,servlet-api-2.5,stringtemplate,xerces-2,icu4j-52"
105 JAVA_ANT_CLASSPATH_TAGS+=" java"
106
107 EANT_BUILD_TARGET="developer-build"
108 EANT_TEST_EXTRA_ARGS="-Dpython.home=dist"
109
110 # jdbc-informix and jdbc-oracle-bin (requires registration) aren't exposed.
111 # Uncomment and add to COMMON_DEP if you want either of them
112 #EANT_GENTOO_CLASSPATH+=",jdbc-informix" EANT_EXTRA_ARGS+=" -Dinformix.present"
113 #EANT_GENTOO_CLASSPATH+=",jdbc-oracle-bin" EANT_EXTRA_ARGS+=" -Doracle.present"
114
115 PATCHES=(
116 "${FILESDIR}"/${PN}-2.5.2-distutils_scripts_location.patch
117 "${FILESDIR}"/${PN}-2.5.2-respect_PYTHONPATH.patch
118 "${FILESDIR}"/${PN}-2.7_beta1-ant.patch
119 "${FILESDIR}"/${PN}-2.7_beta1-dont-always-recompile-classes.patch
120 "${FILESDIR}"/${P}-maxrepeat-import.patch
121 )
122
123 java_prepare() {
124 find \( -name '*.jar' -o -name '*.class' \
125 -o -name '*.pyc' -o -name '*.exe' \) -delete
126
127 epatch "${PATCHES[@]}"
128
129 if ! use readline; then
130 rm -v src/org/python/util/ReadlineConsole.java || die
131 fi
132
133 # needed for launchertest
134 chmod +x tests/shell/test-jython.sh || die
135
136 # apparently this can cause problems
137 append-flags -fno-stack-protector
138 }
139
140 src_compile() {
141 use readline && EANT_GENTOO_CLASSPATH+=",libreadline-java"
142
143 EANT_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --with-dependencies antlr-3,jnr-posix-2.1)"
144 EANT_GENTOO_CLASSPATH_EXTRA+=":$(java-pkg_getjars --build-only ant-core)"
145
146 sed -i -e "1 a\
147 CLASSPATH=\"$(java-pkg_getjars "${EANT_GENTOO_CLASSPATH}"):${EANT_GENTOO_CLASSPATH_EXTRA}\"" \
148 src/shell/jython || die
149
150 java-pkg-2_src_compile
151 }
152
153 src_test() {
154 java-pkg-2_src_test
155 }
156
157 src_install() {
158 local instdir=/usr/share/${PN}-${SLOT}
159
160 java-pkg_newjar dist/${PN}-dev.jar
161
162 java-pkg_register-optional-dependency jdbc-mysql
163 java-pkg_register-optional-dependency jdbc-postgresql
164
165 insinto ${instdir}
166 doins -r dist/{Lib,registry}
167
168 dodoc ACKNOWLEDGMENTS NEWS README.txt
169
170 use doc && java-pkg_dojavadoc dist/Doc/javadoc
171 use source && java-pkg_dosrc src/*
172 use examples && java-pkg_doexamples Demo/*
173
174 local java_args=(
175 -Dpython.home="${EPREFIX}"/usr/share/${PN}-${SLOT}
176 -Dpython.executable="${EPREFIX}"/usr/bin/jython${SLOT}
177 -Dpython.cachedir="\${HOME}/.jythoncachedir"
178 )
179
180 java-pkg_dolauncher jython${SLOT} \
181 --main org.python.util.jython \
182 --java_args "${java_args[*]}"
183
184 if use readline; then
185 sed \
186 -e "s/#\(python.console=org.python.util.ReadlineConsole\)/\1/" \
187 -e "/#python.console.readlinelib=JavaReadline/a python.console.readlinelib=GnuReadline" \
188 -i "${ED}"/usr/share/${PN}-${SLOT}/registry || die
189 fi
190
191 # we need a wrapper to help python_optimize
192 cat <<-EOF > "${T}"/jython
193 exec java -cp "$(java-pkg_getjars "${EANT_GENTOO_CLASSPATH}"):${EANT_GENTOO_CLASSPATH_EXTRA}:dist/${PN}-dev.jar" \
194 -Dpython.home="${ED}${instdir}" \
195 -Dpython.cachedir="${T}/.jythoncachedir" \
196 -Duser.home="${T}" \
197 org.python.util.jython "\${@}"
198 EOF
199 chmod +x "${T}"/jython || die
200
201 python_export jython${SLOT} EPYTHON PYTHON_SITEDIR
202 local PYTHON="${T}"/jython
203
204 # compile tests (everything else is compiled already)
205 # we're keeping it quiet since jython reports errors verbosely
206 # and some of the tests are supposed to trigger compile errors
207 python_optimize "${ED}${instdir}"/Lib/test &>/dev/null
208
209 # for python-exec
210 echo "EPYTHON='${EPYTHON}'" > epython.py
211 python_domodule epython.py
212
213 # some of the class files end up with newer timestamps than the files they
214 # were generated from, make sure this doesn't happen
215 find "${ED}${instdir}"/Lib/ -name '*.class' | xargs touch
216 }
217
218 pkg_postinst() {
219 if ! has_version dev-java/jython ; then
220 elog
221 elog "readline can be configured in the registry:"
222 elog
223 elog "python.console=org.python.util.ReadlineConsole"
224 elog "python.console.readlinelib=GnuReadline"
225 elog
226 elog "Global registry: '${EROOT}usr/share/${PN}-${SLOT}/registry'"
227 elog "User registry: '~/.jython'"
228 elog "See http://www.jython.org/docs/registry.html for more information."
229 elog
230 fi
231 }