From b50de044e88719d93072807c9e0202c8fb83ae10 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 22:16:07 +0100 Subject: [PATCH] Add luajit. This is source-compatible with lua-5.1, but faster! There is also a separate native interface with less overhead. --- dev-lang/luajit/luajit-2.0.2.recipe | 59 +++++++++++++++++++ dev-lang/luajit/patches/luajit-2.0.2.patchset | 31 ++++++++++ 2 files changed, 90 insertions(+) create mode 100644 dev-lang/luajit/luajit-2.0.2.recipe create mode 100644 dev-lang/luajit/patches/luajit-2.0.2.patchset diff --git a/dev-lang/luajit/luajit-2.0.2.recipe b/dev-lang/luajit/luajit-2.0.2.recipe new file mode 100644 index 000000000..410c85c92 --- /dev/null +++ b/dev-lang/luajit/luajit-2.0.2.recipe @@ -0,0 +1,59 @@ +SUMMARY="LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language." +HOMEPAGE="http://luajit.org/luajit.html" +SRC_URI="http://luajit.org/download/LuaJIT-$portVersion.tar.gz" +CHECKSUM_MD5="112dfb82548b03377fbefbba2e0e3a5b" +REVISION="1" +ARCHITECTURES="x86 x86_gcc2" +SECONDARY_ARCHITECTURES="x86" +PROVIDES=" + luajit$secondaryArchSuffix = $portVersion compat >= 5.1 + lib:libluajit_5.1$secondaryArchSuffix = $portVersion compat >= 2 + cmd:luajit_$portVersion$secondaryArchSuffix + cmd:luajit$secondaryArchSuffix + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:make + cmd:gcc$secondaryArchSuffix + " + +PROVIDES_devel=" + luajit${secondaryArchSuffix}_devel = $portVersion compat >= 5.1 + devel:libluajit_5.1$secondaryArchSuffix = $portVersion compat >= 2 + " + +REQUIRES_devel=" + luajit$secondaryArchSuffix == $portVersion base + " + +PATCHES="luajit-$portVersion.patchset" + +SOURCE_DIR="LuaJIT-$portVersion" +BUILD() +{ + # Use amalg target as recommended on luajit homepage to get better performance + make $jobArgs amalg PREFIX=$prefix +} + +INSTALL() +{ + make install PREFIX=$prefix INSTALL_LIB="$libDir" INSTALL_BIN="$binDir" \ + INSTALL_INC="$includeDir" INSTALL_SHARE="$dataDir" \ + INSTALL_MAN="$manDir/man1" INSTALL_LMOD="$dataDir/lua/5.1" + + ln -s $libDir/libluajit-5.1.so.2.0.2 $libDir/libluajit-5.1.so.2 + prepareInstalledDevelLib libluajit-5.1 + packageEntries devel $developDir +} +LICENSE="MIT" +COPYRIGHT="2005-2013, Mike Pall" +DESCRIPTION=" +LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language. + +Lua is a powerful, dynamic and light-weight programming language. It may be \ +embedded or used as a general-purpose, stand-alone language. +" diff --git a/dev-lang/luajit/patches/luajit-2.0.2.patchset b/dev-lang/luajit/patches/luajit-2.0.2.patchset new file mode 100644 index 000000000..322537f46 --- /dev/null +++ b/dev-lang/luajit/patches/luajit-2.0.2.patchset @@ -0,0 +1,31 @@ +From 1e25583ec6480560263118a34c5b5ad86f3e9aca Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 12 Jan 2014 22:49:01 +0100 +Subject: Remove hardcoded -lm. + + +diff --git a/src/Makefile b/src/Makefile +index 999e280..27fc411 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -198,7 +198,7 @@ TARGET_DYNXLDOPTS= + TARGET_LFSFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE + TARGET_XCFLAGS= $(TARGET_LFSFLAGS) -U_FORTIFY_SOURCE + TARGET_XLDFLAGS= +-TARGET_XLIBS= -lm ++#TARGET_XLIBS= -lm + TARGET_TCFLAGS= $(CCOPTIONS) $(TARGET_XCFLAGS) $(TARGET_FLAGS) $(TARGET_CFLAGS) + TARGET_ACFLAGS= $(CCOPTIONS) $(TARGET_XCFLAGS) $(TARGET_FLAGS) $(TARGET_CFLAGS) + TARGET_ALDFLAGS= $(LDOPTIONS) $(TARGET_XLDFLAGS) $(TARGET_FLAGS) $(TARGET_LDFLAGS) +@@ -351,7 +351,7 @@ endif + ############################################################################## + + MINILUA_O= host/minilua.o +-MINILUA_LIBS= -lm ++#MINILUA_LIBS= -lm + MINILUA_T= host/minilua + MINILUA_X= $(MINILUA_T) + +-- +1.8.3.4 +