diff options
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | PKGBUILD | 83 |
2 files changed, 63 insertions, 40 deletions
@@ -1,16 +1,18 @@ pkgbase = mingw-w64-luajit pkgdesc = Just-in-time compiler and drop-in replacement for Lua 5.1 - pkgver = 2.0.5 - pkgrel = 1 - url = http://luajit.org/ - arch = i686 - arch = x86_64 + pkgver = 2.1.1713773202 + pkgrel = 2 + url = https://luajit.org/ + arch = any license = MIT - depends = gcc-multilib + makedepends = gcc-libs + makedepends = lib32-gcc-libs + makedepends = mingw-w64-gcc + depends = mingw-w64-crt options = !strip options = !buildflags - source = http://luajit.org/download/LuaJIT-2.0.5.tar.gz - sha256sums = 874b1f8297c697821f561f9b73b57ffd419ed8f4278c82e05b48806d30c1e979 + options = staticlibs + source = LuaJIT-5790d253972c9d78a0c2aece527eda5b134bbbf7.tar.gz::https://github.com/LuaJIT/LuaJIT/archive/5790d253972c9d78a0c2aece527eda5b134bbbf7.tar.gz + sha256sums = a299cd389c4568cff4c900e9e86fb56b1f422bf38497a695f6a96e37607a6645 pkgname = mingw-w64-luajit - @@ -1,16 +1,23 @@ -# Maintainer: edub4rt <edub4rt@gmail.com> +# Maintainer: Hugo Hromic <hhromic@gmail.com> +# Contributor: edub4rt <edub4rt@gmail.com> +# Contributor: Lukas Fleischer <lfleischer@archlinux.org> +# Contributor: Daurnimator <daurnimator@archlinux.org> pkgname=mingw-w64-luajit -pkgver=2.0.5 +# LuaJIT has a "rolling release" where you should follow git HEAD +_commit=5790d253972c9d78a0c2aece527eda5b134bbbf7 +# The patch version is the timestamp of the above git commit, obtain via `git show -s --format=%ct` +_ct=1713773202 +pkgver="2.1.${_ct}" pkgrel=2 pkgdesc='Just-in-time compiler and drop-in replacement for Lua 5.1' -arch=('i686' 'x86_64') -url='http://luajit.org/' +arch=('any') +url='https://luajit.org/' license=('MIT') -depends=(mingw-w64-crt) -makedepends=(mingw-w64-gcc) -source=(http://luajit.org/download/LuaJIT-${pkgver/rc/-rc}.tar.gz) -options=(!strip !buildflags) -sha256sums=('874b1f8297c697821f561f9b73b57ffd419ed8f4278c82e05b48806d30c1e979') +depends=('mingw-w64-crt') +makedepends=('gcc-libs' 'lib32-gcc-libs' 'mingw-w64-gcc') +source=("LuaJIT-${_commit}.tar.gz::https://github.com/LuaJIT/LuaJIT/archive/${_commit}.tar.gz") +sha256sums=('a299cd389c4568cff4c900e9e86fb56b1f422bf38497a695f6a96e37607a6645') +options=('!strip' '!buildflags' staticlibs) _targets="i686-w64-mingw32 x86_64-w64-mingw32" @@ -18,38 +25,52 @@ build() { unset LDFLAGS for _target in ${_targets}; do - mkdir -p ${srcdir}/luajit-build-${_target} && cd ${srcdir}/luajit-build-${_target} - cp -R $srcdir/LuaJIT-$pkgver/* . - cd src + if [ ! -d ${srcdir}/LuaJIT-build-${_target} ]; then + cp -R $srcdir/LuaJIT-${_commit} ${srcdir}/LuaJIT-build-${_target} + fi + cd ${srcdir}/LuaJIT-build-${_target}/src - sed -i 's/^BUILDMODE= [a-z]*$/BUILDMODE= dynamic/' Makefile - make clean + _host_cc="gcc -m64" if [ "$_target" == "i686-w64-mingw32" ]; then - make PREFIX=/usr/$_target HOST_CC="gcc -m32" CROSS=${_target}- TARGET_SYS=Windows lua51.dll - else - make PREFIX=/usr/$_target HOST_CC="gcc -m64" CROSS=${_target}- TARGET_SYS=Windows lua51.dll + _host_cc="gcc -m32" fi + + # TARGET_STRIP below avoids early stripping + + make clean + make amalg PREFIX=/usr/$_target BUILDMODE=dynamic HOST_CC="$_host_cc" CROSS=${_target}- TARGET_STRIP=" @:" TARGET_SYS=Windows cp lua51.dll ../ - sed -i 's/^BUILDMODE= [a-z]*$/BUILDMODE= static/' Makefile make clean - if [ "$_target" == "i686-w64-mingw32" ]; then - make PREFIX=/usr/$_target HOST_CC="gcc -m32" CROSS=${_target}- TARGET_SYS=Windows amalg - else - make PREFIX=/usr/$_target HOST_CC="gcc -m64" CROSS=${_target}- TARGET_SYS=Windows amalg - fi + make amalg PREFIX=/usr/$_target BUILDMODE=static HOST_CC="$_host_cc" CROSS=${_target}- TARGET_STRIP=" @:" TARGET_SYS=Windows + done +} + +check() { + for _target in ${_targets}; do + cd ${srcdir}/LuaJIT-build-${_target} + + # Make sure that _ct was updated + test "${_ct}" == "$(cat .relver)" done } package() { for _target in ${_targets}; do - cd ${srcdir}/luajit-build-${_target} - mkdir -p $pkgdir/usr/${_target}/lib - mkdir -p $pkgdir/usr/${_target}/include/luajit-2.0 - cp lua51.dll $pkgdir/usr/${_target}/lib/luajit-2.0.dll - cp src/libluajit.a $pkgdir/usr/${_target}/lib/ - cp src/{lauxlib.h,lua.h,lua.hpp,luaconf.h,luajit.h,lualib.h} $pkgdir/usr/$_target/include/luajit-2.0/ - ${_target}-strip --strip-unneeded "$pkgdir"/usr/${_target}/lib/*.dll - ${_target}-strip -g "$pkgdir"/usr/${_target}/lib/*.a + cd ${srcdir}/LuaJIT-build-${_target} + mkdir -p $pkgdir/usr/${_target}/{bin,lib} + mkdir -p $pkgdir/usr/${_target}/include/luajit-2.1 + mkdir -p $pkgdir/usr/${_target}/lib/pkgconfig + cp lua51.dll $pkgdir/usr/${_target}/bin/luajit-2.1.dll + cp src/libluajit.a $pkgdir/usr/${_target}/lib/ + cp src/libluajit-5.1.dll.a $pkgdir/usr/${_target}/lib/libluajit-2.1.dll.a + cp src/{lauxlib.h,lua.h,lua.hpp,luaconf.h,luajit.h,lualib.h} $pkgdir/usr/$_target/include/luajit-2.1/ + cp etc/luajit.pc "$pkgdir"/usr/${_target}/lib/pkgconfig/ + ${_target}-strip --strip-unneeded "$pkgdir"/usr/${_target}/bin/*.dll + ${_target}-strip -g "$pkgdir"/usr/${_target}/lib/*.a + + sed -e "s|^prefix=.*|prefix=/usr/${_target}|" \ + -e "s|^relver=.*|relver=$(cat .relver)|" \ + -i "$pkgdir"/usr/${_target}/lib/pkgconfig/luajit.pc done } |