Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/prefix:master commit in: dev-lang/lua/files/, dev-lang/lua/
Date: Mon, 04 Jan 2016 20:18:36
Message-Id: 1451938700.0c54a5770d360c92a934a4e6cafcd8acb71e807f.grobian@gentoo
1 commit: 0c54a5770d360c92a934a4e6cafcd8acb71e807f
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 4 20:18:20 2016 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 4 20:18:20 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=0c54a577
7
8 dev-lang/lua: sync versions from gx86
9
10 Package-Manager: portage-2.2.20-prefix
11 RepoMan-Options: --force
12
13 dev-lang/lua/Manifest | 1 +
14 dev-lang/lua/files/lua-5.1-make-r2.patch | 97 ++++++++++++++++++++++
15 dev-lang/lua/lua-5.1.5-r100.ebuild | 138 +++++++++++++++++++++++++++++++
16 dev-lang/lua/lua-5.1.5-r3.ebuild | 133 +++++++++++++++++++++++++++++
17 4 files changed, 369 insertions(+)
18
19 diff --git a/dev-lang/lua/Manifest b/dev-lang/lua/Manifest
20 index a1c8527..3404943 100644
21 --- a/dev-lang/lua/Manifest
22 +++ b/dev-lang/lua/Manifest
23 @@ -1,2 +1,3 @@
24 DIST lua-5.1.4.tar.gz 216679 SHA256 b038e225eaf2a5b57c9bcc35cd13aa8c6c8288ef493d52970c9545074098af3a SHA512 bc542fe8535826ac1e49b03a8f238cf049724b02c14718f8162cfeaf735a5e6c58412ff18dbe7a38e4cc4433f3d1e702554e9b24b5f021634b4280880980f40f WHIRLPOOL 2d8fdf77e31314eed68d8ace368a62a608a58114bea5c8797a2e2d327ca870dd4450ede494733d49c97bb447c97adf08610027df3206999a35fb49cde77448fd
25 +DIST lua-5.1.5.tar.gz 221213 SHA256 2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333 SHA512 0142fefcbd13afcd9b201403592aa60620011cc8e8559d4d2db2f92739d18186860989f48caa45830ff4f99bfc7483287fd3ff3a16d4dec928e2767ce4d542a9 WHIRLPOOL 9dac93b73b9ad1ef6c69e0aa11fb53d5efe89274b65c55a1ac30bab23e8a255851b0e44306db54212b1d481e658cecd38e5ff22a25e1fa974858b7b03fb45b75
26 DIST lua-5.2.3.tar.gz 251195 SHA256 13c2fb97961381f7d06d5b5cea55b743c163800896fd5c5e2356201d3619002d SHA512 264bb7c8db2f190ef0ca38584ec81999ab588f54e03119c5214c40bb8925b0eb407fac483a03e40cc8a220f6748ddff7d3a7392da3803418276b0d263b866449 WHIRLPOOL d278a1e38416bcf7f82eb3e7fd5fb423e60ccb69e9d57a937070516ff8be2d19a98bbfdaf37ec6fd6fb3ef2d625900977ca0cb47e46cb0ede5ebd5d37a9454ef
27
28 diff --git a/dev-lang/lua/files/lua-5.1-make-r2.patch b/dev-lang/lua/files/lua-5.1-make-r2.patch
29 new file mode 100644
30 index 0000000..2905a62
31 --- /dev/null
32 +++ b/dev-lang/lua/files/lua-5.1-make-r2.patch
33 @@ -0,0 +1,97 @@
34 +diff -ru lua-5.1.5.orig/Makefile lua-5.1.5/Makefile
35 +--- lua-5.1.5.orig/Makefile 2014-04-15 17:43:34.845435031 +0200
36 ++++ lua-5.1.5/Makefile 2014-04-15 19:05:08.669304987 +0200
37 +@@ -11,7 +11,7 @@
38 + # so take care if INSTALL_TOP is not an absolute path.
39 + INSTALL_TOP= /usr/local
40 + INSTALL_BIN= $(INSTALL_TOP)/bin
41 +-INSTALL_INC= $(INSTALL_TOP)/include
42 ++INSTALL_INC= $(INSTALL_TOP)/include/lua$V
43 + INSTALL_LIB= $(INSTALL_TOP)/lib
44 + INSTALL_MAN= $(INSTALL_TOP)/man/man1
45 + #
46 +@@ -126,3 +126,21 @@
47 + .PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho
48 +
49 + # (end of Makefile)
50 ++
51 ++# Use libtool for binary installs, etc.
52 ++
53 ++export V
54 ++export LIBTOOL = libtool --quiet --tag=CC
55 ++# See libtool manual about how to set this
56 ++
57 ++gentoo_clean:
58 ++ cd src; $(MAKE) $@
59 ++
60 ++gentoo_test: gentoo_linux
61 ++ test/lua.static test/hello.lua
62 ++
63 ++gentoo_install:
64 ++ mkdir -p $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB)
65 ++ cd src; $(LIBTOOL) --mode=install $(INSTALL_EXEC) lua$V luac$V $(INSTALL_BIN)
66 ++ cd src; $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
67 ++ cd src; $(LIBTOOL) --mode=install $(INSTALL_DATA) liblua$V.la $(INSTALL_LIB)
68 +diff -ru lua-5.1.5.orig/src/Makefile lua-5.1.5/src/Makefile
69 +--- lua-5.1.5.orig/src/Makefile 2014-04-15 17:43:34.844435031 +0200
70 ++++ lua-5.1.5/src/Makefile 2014-04-15 18:07:21.427397122 +0200
71 +@@ -29,10 +29,10 @@
72 + LIB_O= lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o \
73 + lstrlib.o loadlib.o linit.o
74 +
75 +-LUA_T= lua
76 ++LUA_T= lua$V
77 + LUA_O= lua.o
78 +
79 +-LUAC_T= luac
80 ++LUAC_T= luac$V
81 + LUAC_O= luac.o print.o
82 +
83 + ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
84 +@@ -51,10 +51,10 @@
85 + $(AR) $@ $(CORE_O) $(LIB_O) # DLL needs all object files
86 + $(RANLIB) $@
87 +
88 +-$(LUA_T): $(LUA_O) $(LUA_A)
89 ++origin$(LUA_T): $(LUA_O) $(LUA_A)
90 + $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
91 +
92 +-$(LUAC_T): $(LUAC_O) $(LUA_A)
93 ++origin$(LUAC_T): $(LUAC_O) $(LUA_A)
94 + $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
95 +
96 + clean:
97 +@@ -180,3 +180,33 @@
98 + ltm.h lzio.h lmem.h lopcodes.h lundump.h
99 +
100 + # (end of Makefile)
101 ++
102 ++export LIBTOOL = libtool --tag=CC
103 ++export LIB_VERSION = 5:1:5
104 ++
105 ++# The following rules use libtool for compiling and linking in order to
106 ++# provide shared library support.
107 ++
108 ++LIB_NAME = liblua$V.la
109 ++LIB_OBJS = $(CORE_O:.o=.lo) $(LIB_O:.o=.lo)
110 ++
111 ++%.lo %.o: %.c
112 ++ $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
113 ++
114 ++$(LIB_NAME): $(LIB_OBJS)
115 ++ $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
116 ++ -rpath $(RPATH) $(LDFLAGS) -o $(LIB_NAME) $(LIB_OBJS) $(LIB_LIBS)
117 ++
118 ++$(LUA_T): $(LUA_O:.o=.lo) $(LIB_NAME)
119 ++ $(LIBTOOL) --mode=link $(CC) -export-dynamic $(LDFLAGS) -o $@ $(LUA_O:.o=.lo) $(LIB_NAME) $(LUA_LIBS)
120 ++
121 ++lua_test: $(LUA_O:.o=.lo) $(LIB_NAME)
122 ++ $(LIBTOOL) --mode=link $(CC) -static -export-dynamic $(LDFLAGS) -o $@ $(LUA_O:.o=.lo) $(LIB_NAME) $(LUA_LIBS)
123 ++
124 ++$(LUAC_T): $(LUAC_O:.o=.lo) $(LIB_NAME)
125 ++ $(LIBTOOL) --mode=link $(CC) -static $(LDFLAGS) -o $@ $(LUAC_O:.o=.lo) $(LIB_NAME)
126 ++
127 ++gentoo_clean:
128 ++ $(LIBTOOL) --mode=clean $(RM) $(ALL_O:.o=.lo) $(LIB_NAME) lua$V luac$V
129 ++
130 ++gentoo_all: $(LIB_NAME) $(LUA_T) lua_test $(LUAC_T)
131
132 diff --git a/dev-lang/lua/lua-5.1.5-r100.ebuild b/dev-lang/lua/lua-5.1.5-r100.ebuild
133 new file mode 100644
134 index 0000000..5d38d4b
135 --- /dev/null
136 +++ b/dev-lang/lua/lua-5.1.5-r100.ebuild
137 @@ -0,0 +1,138 @@
138 +# Copyright 1999-2015 Gentoo Foundation
139 +# Distributed under the terms of the GNU General Public License v2
140 +# $Id$
141 +
142 +EAPI=5
143 +
144 +inherit eutils multilib multilib-minimal portability toolchain-funcs versionator
145 +
146 +DESCRIPTION="A powerful light-weight programming language designed for extending applications"
147 +HOMEPAGE="http://www.lua.org/"
148 +SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
149 +
150 +LICENSE="MIT"
151 +SLOT="5.1"
152 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux"
153 +IUSE="+deprecated emacs readline static"
154 +
155 +RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1[${MULTILIB_USEDEP}] )
156 + app-eselect/eselect-lua
157 + !dev-lang/lua:0"
158 +DEPEND="${RDEPEND}
159 + sys-devel/libtool"
160 +PDEPEND="emacs? ( app-emacs/lua-mode )"
161 +
162 +SAN_SLOT="${SLOT//.}"
163 +
164 +MULTILIB_WRAPPED_HEADERS=(
165 + /usr/include/lua${SLOT}/luaconf.h
166 +)
167 +
168 +src_prepare() {
169 + local PATCH_PV=$(get_version_component_range 1-2)
170 +
171 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make-r2.patch
172 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-module_paths.patch
173 +
174 + # use glibtool on Darwin (versus Apple libtool)
175 + if [[ ${CHOST} == *-darwin* ]] ; then
176 + sed -i -e '/LIBTOOL = /s:libtool:glibtool:' \
177 + Makefile src/Makefile || die
178 + fi
179 +
180 + #EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="upstream.patch" epatch
181 +
182 + # correct lua versioning
183 + sed -i -e 's/\(LIB_VERSION = \)6:1:1/\16:5:1/' src/Makefile
184 +
185 + sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html
186 +
187 + if ! use deprecated ; then
188 + # patches from 5.1.4 still apply
189 + epatch "${FILESDIR}"/${PN}-5.1.4-deprecated.patch
190 + epatch "${FILESDIR}"/${PN}-5.1.4-test.patch
191 + fi
192 +
193 + if ! use readline ; then
194 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-readline.patch
195 + fi
196 +
197 + # Using dynamic linked lua is not recommended for performance
198 + # reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
199 + # Mainly, this is of concern if your arch is poor with GPRs, like x86
200 + # Note that this only affects the interpreter binary (named lua), not the lua
201 + # compiler (built statically) nor the lua libraries (both shared and static
202 + # are installed)
203 + if use static ; then
204 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make_static-r1.patch
205 + fi
206 +
207 + # custom Makefiles
208 + multilib_copy_sources
209 +}
210 +
211 +multilib_src_configure() {
212 + # We want packages to find our things...
213 + sed -i \
214 + -e 's:/usr/local:'${EPREFIX}'/usr:' \
215 + -e "s:\([/\"]\)\<lib\>:\1$(get_libdir):g" \
216 + etc/lua.pc src/luaconf.h || die
217 +}
218 +
219 +multilib_src_compile() {
220 + tc-export CC
221 + myflags=
222 + # what to link to liblua
223 + liblibs="-lm"
224 + liblibs="${liblibs} $(dlopen_lib)"
225 +
226 + # what to link to the executables
227 + mylibs=
228 + if use readline; then
229 + mylibs="-lreadline"
230 + fi
231 +
232 + cd src
233 + emake CC="${CC}" CFLAGS="-DLUA_USE_LINUX ${CFLAGS}" \
234 + RPATH="${EPREFIX}/usr/$(get_libdir)/" \
235 + LUA_LIBS="${mylibs}" \
236 + LIB_LIBS="${liblibs}" \
237 + V=$(get_version_component_range 1-2) \
238 + gentoo_all
239 +
240 + mv lua_test ../test/lua.static
241 +}
242 +
243 +multilib_src_install() {
244 + emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
245 + V=${SLOT} gentoo_install
246 +
247 + insinto /usr/$(get_libdir)/pkgconfig
248 + newins etc/lua.pc lua${SLOT}.pc
249 +}
250 +
251 +multilib_src_install_all() {
252 + dodoc HISTORY README
253 + dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
254 +
255 + doicon etc/lua.ico
256 +
257 + newman doc/lua.1 lua${SLOT}.1
258 + newman doc/luac.1 luac${SLOT}.1
259 +}
260 +
261 +multilib_src_test() {
262 + local positive="bisect cf echo env factorial fib fibfor hello printf sieve
263 + sort trace-calls trace-globals"
264 + local negative="readonly"
265 + local test
266 +
267 + cd "${BUILD_DIR}" || die
268 + for test in ${positive}; do
269 + test/lua.static test/${test}.lua || die "test $test failed"
270 + done
271 +
272 + for test in ${negative}; do
273 + test/lua.static test/${test}.lua && die "test $test failed"
274 + done
275 +}
276
277 diff --git a/dev-lang/lua/lua-5.1.5-r3.ebuild b/dev-lang/lua/lua-5.1.5-r3.ebuild
278 new file mode 100644
279 index 0000000..ba4ce44
280 --- /dev/null
281 +++ b/dev-lang/lua/lua-5.1.5-r3.ebuild
282 @@ -0,0 +1,133 @@
283 +# Copyright 1999-2015 Gentoo Foundation
284 +# Distributed under the terms of the GNU General Public License v2
285 +# $Id$
286 +
287 +EAPI=5
288 +
289 +inherit eutils multilib multilib-minimal portability toolchain-funcs versionator
290 +
291 +DESCRIPTION="A powerful light-weight programming language designed for extending applications"
292 +HOMEPAGE="http://www.lua.org/"
293 +SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
294 +
295 +LICENSE="MIT"
296 +SLOT="0"
297 +KEYWORDS="~ppc-aix ~x64-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
298 +IUSE="+deprecated emacs readline static"
299 +
300 +RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1[${MULTILIB_USEDEP}] )"
301 +DEPEND="${RDEPEND}
302 + sys-devel/libtool"
303 +PDEPEND="emacs? ( app-emacs/lua-mode )"
304 +
305 +MULTILIB_WRAPPED_HEADERS=(
306 + /usr/include/luaconf.h
307 +)
308 +
309 +src_prepare() {
310 + local PATCH_PV=$(get_version_component_range 1-2)
311 +
312 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make-r1.patch
313 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-module_paths.patch
314 +
315 + # use glibtool on Darwin (versus Apple libtool)
316 + if [[ ${CHOST} == *-darwin* ]] ; then
317 + sed -i -e '/LIBTOOL = /s:libtool:glibtool:' \
318 + Makefile src/Makefile || die
319 + fi
320 +
321 + #EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="upstream.patch" epatch
322 +
323 + # correct lua versioning
324 + sed -i -e 's/\(LIB_VERSION = \)6:1:1/\16:5:1/' src/Makefile || die
325 +
326 + sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html || die
327 +
328 + if ! use deprecated ; then
329 + # patches from 5.1.4 still apply
330 + epatch "${FILESDIR}"/${PN}-5.1.4-deprecated.patch
331 + epatch "${FILESDIR}"/${PN}-5.1.4-test.patch
332 + fi
333 +
334 + if ! use readline ; then
335 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-readline.patch
336 + fi
337 +
338 + # Using dynamic linked lua is not recommended for performance
339 + # reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
340 + # Mainly, this is of concern if your arch is poor with GPRs, like x86
341 + # Note that this only affects the interpreter binary (named lua), not the lua
342 + # compiler (built statically) nor the lua libraries (both shared and static
343 + # are installed)
344 + if use static ; then
345 + epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make_static-r1.patch
346 + fi
347 +
348 + # custom Makefiles
349 + multilib_copy_sources
350 +}
351 +
352 +multilib_src_configure() {
353 + # We want packages to find our things...
354 + sed -i \
355 + -e 's:/usr/local:'${EPREFIX}'/usr:' \
356 + -e "s:\([/\"]\)\<lib\>:\1$(get_libdir):g" \
357 + etc/lua.pc src/luaconf.h || die
358 +}
359 +
360 +multilib_src_compile() {
361 + tc-export CC
362 + myflags=
363 + # what to link to liblua
364 + liblibs="-lm"
365 + liblibs="${liblibs} $(dlopen_lib)"
366 +
367 + # what to link to the executables
368 + mylibs=
369 + if use readline; then
370 + mylibs="-lreadline"
371 + fi
372 +
373 + cd src
374 + emake CC="${CC}" CFLAGS="-DLUA_USE_LINUX ${CFLAGS}" \
375 + RPATH="${EPREFIX}/usr/$(get_libdir)/" \
376 + LUA_LIBS="${mylibs}" \
377 + LIB_LIBS="${liblibs}" \
378 + V=${PV} \
379 + gentoo_all
380 +
381 + mv lua_test ../test/lua.static
382 +}
383 +
384 +multilib_src_install() {
385 + emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
386 + V=${PV} gentoo_install
387 +
388 + insinto /usr/$(get_libdir)/pkgconfig
389 + doins etc/lua.pc
390 +}
391 +
392 +multilib_src_install_all() {
393 + dodoc HISTORY README
394 + dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
395 +
396 + doicon etc/lua.ico
397 +
398 + doman doc/lua.1 doc/luac.1
399 +}
400 +
401 +multilib_src_test() {
402 + local positive="bisect cf echo env factorial fib fibfor hello printf sieve
403 + sort trace-calls trace-globals"
404 + local negative="readonly"
405 + local test
406 +
407 + cd "${BUILD_DIR}" || die
408 + for test in ${positive}; do
409 + test/lua.static test/${test}.lua || die "test $test failed"
410 + done
411 +
412 + for test in ${negative}; do
413 + test/lua.static test/${test}.lua && die "test $test failed"
414 + done
415 +}