Merge branch 'luajit' into 'master'

Fix luajit

See merge request redox-os/cookbook!403
This commit is contained in:
Jeremy Soller 2024-10-10 18:45:58 +00:00
commit 357f48fb7a
2 changed files with 53 additions and 2 deletions

View File

@ -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
"""

View File

@ -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))