diff --git a/recipes/wip/dev/lang/luajit/recipe.toml b/recipes/wip/dev/lang/luajit/recipe.toml index 237fe87bb9bbf2ffe19d3666a9ee740bcb289435..c2359afa7b1ad2b15edc3b47e285cf0a7720a95b 100644 --- a/recipes/wip/dev/lang/luajit/recipe.toml +++ b/recipes/wip/dev/lang/luajit/recipe.toml @@ -1,5 +1,25 @@ -#TODO missing script for "make", see https://luajit.org/install.html +#TODO remove -DLUAJIT_SECURITY_MCODE=0 [source] -tar = "https://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz" +# LuaJIT is only available as a rolling release +git = "https://luajit.org/git/luajit.git" +rev = "2090842410e0ba6f81fad310a77bf5432488249a" + [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ + +# Cookbook doesn't apply patches to git repositiories (so we do it manually) +# The patch is applied so that LUAJIT_OS is set to LUAJIT_OS_POSIX without +# redefinition warnings +git apply "${COOKBOOK_RECIPE}/redox.patch" + +${COOKBOOK_MAKE} -j ${COOKBOOK_MAKE_JOBS} install \ + PREFIX="${COOKBOOK_STAGE}" \ + BUILDMODE='static' \ + TARGET_SYS='Redox' \ + XCFLAGS='-DLUAJIT_SECURITY_MCODE=0' \ + CROSS="${TARGET}-" + +cd "${COOKBOOK_STAGE}"/bin && ln -s luajit-2.1.* luajit +""" diff --git a/recipes/wip/dev/lang/luajit/redox.patch b/recipes/wip/dev/lang/luajit/redox.patch new file mode 100644 index 0000000000000000000000000000000000000000..aef67b4c111cd2e3fb3e1082380b95304f25586e --- /dev/null +++ b/recipes/wip/dev/lang/luajit/redox.patch @@ -0,0 +1,31 @@ +diff --git a/src/Makefile b/src/Makefile +index 3a6a4329..450e8fe6 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -351,6 +351,9 @@ else + ifeq (GNU/kFreeBSD,$(TARGET_SYS)) + TARGET_XLIBS+= -ldl + endif ++ ifeq (Redox,$(TARGET_SYS)) ++ TARGET_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_POSIX ++ endif + endif + endif + endif +@@ -367,12 +370,16 @@ ifneq ($(HOST_SYS),$(TARGET_SYS)) + else + ifeq (iOS,$(TARGET_SYS)) + HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_OSX -DTARGET_OS_IPHONE=1 ++ else ++ ifeq (Redox,$(TARGET_SYS)) ++ HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_POSIX + else + HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_OTHER + endif + endif + endif + endif ++ endif + endif + + ifneq (,$(CCDEBUG))