Add lua51 and lua52 for packages not supporting lua 5.3

This commit is contained in:
Adrian Chaves (Gallaecio) 2016-09-22 07:19:55 +02:00
parent 65944564f7
commit d5043c7e24
7 changed files with 302 additions and 0 deletions

57
lua51/PKGBUILD Normal file
View File

@ -0,0 +1,57 @@
# Forked from https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/lua51&id=d46f4b70dab932996805f93dd386417b86021eb2
pkgname=lua51
pkgver=5.1.5
pkgrel=5
pkgdesc='Powerful lightweight programming language designed for extending applications'
arch=('x86_64')
url='http://www.lua.org/'
depends=('readline')
license=('MIT')
options=('!makeflags' '!emptydirs')
source=(http://www.lua.org/ftp/lua-$pkgver.tar.gz
lua-arch.patch
lua-5.1-cflags.diff)
md5sums=('2e115fe26e435e33b0d5c022e4490567'
'fa25feb70ef9fec975b1c20da5098b3c'
'249582bf1fd861ccf492d2c35a9fe732')
prepare() {
cd lua-$pkgver
patch -p1 -i ../lua-arch.patch
patch -p1 -i ../lua-5.1-cflags.diff
sed -e 's:llua:llua5.1:' -e 's:/include:/include/lua5.1:' -i etc/lua.pc
sed -r -e '/^LUA_(SO|A|T)=/ s/lua/lua5.1/' -e '/^LUAC_T=/ s/luac/luac5.1/' -i src/Makefile
}
build() {
cd lua-$pkgver
[[ $CARCH == x86_64 ]] && export CFLAGS="$CFLAGS -fPIC"
make MYCFLAGS="$CFLAGS" MYLDFLAGS="$LDFLAGS" linux
}
package() {
cd lua-$pkgver
make \
TO_BIN='lua5.1 luac5.1' \
TO_LIB="liblua5.1.a liblua5.1.so liblua5.1.so.5.1 liblua5.1.so.$pkgver" \
INSTALL_DATA='cp -d' \
INSTALL_TOP="$pkgdir"/usr \
INSTALL_INC="$pkgdir"/usr/include/lua5.1 \
INSTALL_MAN="$pkgdir"/usr/share/man/man1 \
install
install -Dm644 etc/lua.pc "$pkgdir"/usr/lib/pkgconfig/$pkgname.pc
install -d "$pkgdir"/usr/share/doc/$pkgname
install -m644 doc/*.{gif,png,css,html} "$pkgdir"/usr/share/doc/$pkgname
install -Dm644 COPYRIGHT "$pkgdir"/usr/share/licenses/$pkgname/COPYRIGHT
ln -s liblua5.1.so "$pkgdir"/usr/lib/liblua.so.5.1
ln -s liblua5.1.so "$pkgdir"/usr/lib/liblua.so.$pkgver
cd "$pkgdir"/usr/share/man/man1
mv lua.1 lua5.1.1
mv luac.1 luac5.1.1
}

13
lua51/lua-5.1-cflags.diff Normal file
View File

@ -0,0 +1,13 @@
diff -Naur lua-5.1.orig/src/Makefile lua-5.1/src/Makefile
--- lua-5.1.orig/src/Makefile 2006-02-16 16:45:09.000000000 +0100
+++ lua-5.1/src/Makefile 2006-03-01 14:55:29.000000000 +0100
@@ -8,7 +8,8 @@
PLAT= none
CC= gcc
-CFLAGS= -O2 -Wall $(MYCFLAGS)
+CFLAGS ?= -O2 -Wall
+CFLAGS += $(MYCFLAGS)
AR= ar rcu
RANLIB= ranlib
RM= rm -f

66
lua51/lua-arch.patch Normal file
View File

@ -0,0 +1,66 @@
diff -ur lua-5.1.4/etc/lua.pc lua-5.1.4-new/etc/lua.pc
--- lua-5.1.4/etc/lua.pc 2008-08-08 14:46:11.000000000 +0200
+++ lua-5.1.4-new/etc/lua.pc 2012-02-23 18:25:34.000000000 +0100
@@ -8,6 +8,6 @@
# grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/'
-prefix= /usr/local
+prefix= /usr
INSTALL_BIN= ${prefix}/bin
INSTALL_INC= ${prefix}/include
INSTALL_LIB= ${prefix}/lib
diff -ur lua-5.1.4/src/luaconf.h lua-5.1.4-new/src/luaconf.h
--- lua-5.1.4/src/luaconf.h 2008-02-11 17:25:08.000000000 +0100
+++ lua-5.1.4-new/src/luaconf.h 2012-02-23 18:25:34.000000000 +0100
@@ -94,7 +94,7 @@
".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll"
#else
-#define LUA_ROOT "/usr/local/"
+#define LUA_ROOT "/usr/"
#define LUA_LDIR LUA_ROOT "share/lua/5.1/"
#define LUA_CDIR LUA_ROOT "lib/lua/5.1/"
#define LUA_PATH_DEFAULT \
diff -ur lua-5.1.4/src/Makefile lua-5.1.4-new/src/Makefile
--- lua-5.1.4/src/Makefile 2008-01-19 20:37:58.000000000 +0100
+++ lua-5.1.4-new/src/Makefile 2012-02-23 18:26:43.000000000 +0100
@@ -23,6 +23,7 @@
PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
LUA_A= liblua.a
+LUA_SO= liblua.so
CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \
lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \
lundump.o lvm.o lzio.o
@@ -36,7 +37,7 @@
LUAC_O= luac.o print.o
ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T)
ALL_A= $(LUA_A)
default: $(PLAT)
@@ -51,6 +52,11 @@
$(AR) $@ $?
$(RANLIB) $@
+$(LUA_SO): $(CORE_O) $(LIB_O)
+ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO)
+
$(LUA_T): $(LUA_O) $(LUA_A)
$(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
--- lua-5.1.4/Makefile 2008-08-12 02:40:48.000000000 +0200
+++ lua-5.1.4-new/Makefile 2012-02-23 19:06:32.000000000 +0100
@@ -53,7 +53,7 @@
all: $(PLAT)
$(PLATS) clean:
- cd src && $(MAKE) $@
+ cd src && $(MAKE) $@ V=$(V) R=$(R)
test: dummy
src/lua test/hello.lua

30
lua52/LICENSE Normal file
View File

@ -0,0 +1,30 @@
License
Lua is free software distributed under the terms of the MIT license
reproduced below; it may be used for any purpose, including commercial
purposes, at absolutely no cost without having to ask us. The only
requirement is that if you do use Lua, then you should give us credit
by including the appropriate copyright notice somewhere in your
product or its documentation.
Copyright © 19942012 Lua.org, PUC-Rio.
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

59
lua52/PKGBUILD Normal file
View File

@ -0,0 +1,59 @@
# Forked from https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/lua52&id=0c4973efbdacb61939868a584eeae39ba1548b44
pkgname=lua52
pkgver=5.2.4
pkgrel=1
pkgdesc='Powerful lightweight programming language designed for extending applications'
arch=('x86_64')
url='http://www.lua.org/'
depends=('readline')
license=('MIT')
options=('!emptydirs')
source=(http://www.lua.org/ftp/lua-$pkgver.tar.gz
liblua.so.patch
lua.pc
LICENSE)
md5sums=('913fdb32207046b273fdb17aad70be13'
'bdc663c7b82ffc0b5df67611621fb625'
'e7ba6c2b695b0b84a5ea0cbff5fc9067'
'0e2bd67b909b9ff673da844ca3480df2')
prepare() {
cd lua-$pkgver
patch -p1 -i ../liblua.so.patch
sed "s/%VER%/${pkgver%.*}/g;s/%REL%/$pkgver/g" ../lua.pc > lua.pc
sed -e 's:llua:llua5.2:' -e 's:/include:/include/lua5.2:' -i lua.pc
sed -r -e '/^LUA_(SO|A|T)=/ s/lua/lua5.2/' -e '/^LUAC_T=/ s/luac/luac5.2/' -i src/Makefile
}
build() {
cd lua-$pkgver
make MYCFLAGS="$CFLAGS -fPIC" MYLDFLAGS="$LDFLAGS" linux
}
package() {
cd lua-$pkgver
make \
TO_BIN='lua5.2 luac5.2' \
TO_LIB="liblua5.2.a liblua5.2.so liblua5.2.so.5.2 liblua5.2.so.$pkgver" \
INSTALL_DATA='cp -d' \
INSTALL_TOP="$pkgdir"/usr \
INSTALL_INC="$pkgdir"/usr/include/lua5.2 \
INSTALL_MAN="$pkgdir"/usr/share/man/man1 \
install
install -Dm644 lua.pc "$pkgdir"/usr/lib/pkgconfig/$pkgname.pc
install -d "$pkgdir"/usr/share/doc/$pkgname
install -m644 doc/*.{gif,png,css,html} "$pkgdir"/usr/share/doc/$pkgname
install -Dm644 ../LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
ln -s liblua5.2.so "$pkgdir"/usr/lib/liblua.so.5.2
ln -s liblua5.2.so "$pkgdir"/usr/lib/liblua.so.$pkgver
cd "$pkgdir"/usr/share/man/man1
mv lua.1 lua5.2.1
mv luac.1 luac5.2.1
}

57
lua52/liblua.so.patch Normal file
View File

@ -0,0 +1,57 @@
diff -ru lua-5.2.1/Makefile lua-5.2.1.new/Makefile
--- lua-5.2.1/Makefile 2012-05-17 16:05:54.000000000 +0200
+++ lua-5.2.1.new/Makefile 2012-09-12 22:39:07.162748096 +0200
@@ -52,7 +52,7 @@
all: $(PLAT)
$(PLATS) clean:
- cd src && $(MAKE) $@
+ cd src && $(MAKE) $@ V=$(V) R=$(R)
test: dummy
src/lua -v
diff -ru lua-5.2.1/src/luaconf.h lua-5.2.1.new/src/luaconf.h
--- lua-5.2.1/src/luaconf.h 2012-05-11 16:14:42.000000000 +0200
+++ lua-5.2.1.new/src/luaconf.h 2012-09-12 22:40:27.986622772 +0200
@@ -100,7 +100,7 @@
#else /* }{ */
#define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/"
-#define LUA_ROOT "/usr/local/"
+#define LUA_ROOT "/usr/"
#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR
#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR
#define LUA_PATH_DEFAULT \
diff -ru lua-5.2.1/src/Makefile lua-5.2.1.new/src/Makefile
--- lua-5.2.1/src/Makefile 2012-03-09 17:32:16.000000000 +0100
+++ lua-5.2.1.new/src/Makefile 2012-09-12 22:38:08.591386896 +0200
@@ -29,6 +29,7 @@
PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
LUA_A= liblua.a
+LUA_SO= liblua.so
CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \
lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o \
ltm.o lundump.o lvm.o lzio.o
@@ -43,7 +44,7 @@
LUAC_O= luac.o
ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
ALL_A= $(LUA_A)
# Targets start here.
@@ -59,6 +60,12 @@
$(AR) $@ $(BASE_O)
$(RANLIB) $@
+$(LUA_SO): $(CORE_O) $(LIB_O)
+ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO)
+
+
$(LUA_T): $(LUA_O) $(LUA_A)
$(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)

20
lua52/lua.pc Normal file
View File

@ -0,0 +1,20 @@
V=%VER%
R=%REL%
prefix=/usr
INSTALL_BIN=${prefix}/bin
INSTALL_INC=${prefix}/include
INSTALL_LIB=${prefix}/lib
INSTALL_MAN=${prefix}/man/man1
INSTALL_LMOD=${prefix}/share/lua/${V}
INSTALL_CMOD=${prefix}/lib/lua/${V}
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Lua
Description: An Extensible Extension Language
Version: ${R}
Requires:
Libs: -L${libdir} -llua -lm
Cflags: -I${includedir}