aboutsummaryrefslogtreecommitdiff
path: root/lang/luajit-devel
diff options
context:
space:
mode:
authorSergey A. Osokin <osa@FreeBSD.org>2021-10-28 01:07:36 +0000
committerSergey A. Osokin <osa@FreeBSD.org>2021-10-28 01:07:36 +0000
commit4fec652f2efb9f18b16a84028dd9a3d17a71589b (patch)
treefae8991784cc36b9d43a807b21deaa5a87863e7f /lang/luajit-devel
parent8eed177e3d96894df10d50afd13ac6ccc98a4198 (diff)
downloadports-4fec652f2efb9f18b16a84028dd9a3d17a71589b.tar.gz
ports-4fec652f2efb9f18b16a84028dd9a3d17a71589b.zip
lang/luajit-devel: add LuaJIT, development version
Diffstat (limited to 'lang/luajit-devel')
-rw-r--r--lang/luajit-devel/Makefile43
-rw-r--r--lang/luajit-devel/distinfo3
-rw-r--r--lang/luajit-devel/files/patch-Makefile59
-rw-r--r--lang/luajit-devel/files/patch-etc_luajit.pc9
-rw-r--r--lang/luajit-devel/files/patch-src_Makefile29
-rw-r--r--lang/luajit-devel/files/patch-src_lj__ccallback.c10
-rw-r--r--lang/luajit-devel/files/patch-src_lj__prng.c18
-rw-r--r--lang/luajit-devel/pkg-descr3
-rw-r--r--lang/luajit-devel/pkg-plist31
9 files changed, 205 insertions, 0 deletions
diff --git a/lang/luajit-devel/Makefile b/lang/luajit-devel/Makefile
new file mode 100644
index 000000000000..2098e7f2e060
--- /dev/null
+++ b/lang/luajit-devel/Makefile
@@ -0,0 +1,43 @@
+# Created by: Sergey A. Osokin <osa@FreeBSD.org>
+
+PORTNAME= luajit
+DISTVERSION= 2.1.0.20211027
+CATEGORIES= lang
+PKGNAMESUFFIX= -devel
+DISTNAME= LuaJIT-${DISTVERSION}
+
+MAINTAINER= osa@FreeBSD.org
+COMMENT= Just-In-Time Compiler for Lua
+
+LICENSE= MIT PD
+LICENSE_COMB= multi
+LICENSE_FILE= ${WRKSRC}/COPYRIGHT
+
+IGNORE_riscv64= fails to compile: lj_arch.h:73:2: No support for this architecture (yet)
+
+#CONFLICTS_INSTALL= luajit luajit-openresty
+
+USES= cpe gmake
+USE_LDCONFIG= yes
+MAKE_ARGS= CC=${CC} CCOPT= CCOPT_x86= Q=
+
+USE_GITHUB= yes
+GH_TUPLE= LuaJIT:LuaJIT:b4b2dce
+
+LUAJIT_VERSION= 2.1.0-beta3
+LUAJIT_SOVERSION= 2.1.0
+
+PLIST_SUB+= VERSION=${LUAJIT_VERSION} SOVERSION=${LUAJIT_SOVERSION}
+
+.include <bsd.port.options.mk>
+
+.if ${ARCH:Mpowerpc*} || ${ARCH:Mmips*}
+USE_GCC=yes
+.endif
+
+post-install:
+ ${LN} -sf ${PORTNAME}-${DISTVERSION} \
+ ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+ ${INSTALL_MAN} ${WRKSRC}/etc/luajit.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
+
+.include <bsd.port.mk>
diff --git a/lang/luajit-devel/distinfo b/lang/luajit-devel/distinfo
new file mode 100644
index 000000000000..721ce9c35dca
--- /dev/null
+++ b/lang/luajit-devel/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1635381636
+SHA256 (LuaJIT-LuaJIT-2.1.0.20211027-b4b2dce_GH0.tar.gz) = c7becd27db80379f720ecabbe267c7a936a2465f2a7d7eb38d6ea7006ece1f42
+SIZE (LuaJIT-LuaJIT-2.1.0.20211027-b4b2dce_GH0.tar.gz) = 1071183
diff --git a/lang/luajit-devel/files/patch-Makefile b/lang/luajit-devel/files/patch-Makefile
new file mode 100644
index 000000000000..c3e37d347c2d
--- /dev/null
+++ b/lang/luajit-devel/files/patch-Makefile
@@ -0,0 +1,59 @@
+--- Makefile.orig 2019-06-26 21:12:49 UTC
++++ Makefile
+@@ -25,7 +25,7 @@ ABIVER= 5.1
+ # Change the installation path as needed. This automatically adjusts
+ # the paths in src/luaconf.h, too. Note: PREFIX must be an absolute path!
+ #
+-export PREFIX= /usr/local
++#export PREFIX= /usr/local
+ export MULTILIB= lib
+ ##############################################################################
+
+@@ -34,6 +34,7 @@ INSTALL_BIN= $(DPREFIX)/bin
+ INSTALL_LIB= $(DPREFIX)/$(MULTILIB)
+ INSTALL_SHARE= $(DPREFIX)/share
+ INSTALL_INC= $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
++INSTALL_LIBD= $(DPREFIX)/libdata
+
+ INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION)
+ INSTALL_JITLIB= $(INSTALL_LJLIBD)/jit
+@@ -41,8 +42,7 @@ INSTALL_LMODD= $(INSTALL_SHARE)/lua
+ INSTALL_LMOD= $(INSTALL_LMODD)/$(ABIVER)
+ INSTALL_CMODD= $(INSTALL_LIB)/lua
+ INSTALL_CMOD= $(INSTALL_CMODD)/$(ABIVER)
+-INSTALL_MAN= $(INSTALL_SHARE)/man/man1
+-INSTALL_PKGCONFIG= $(INSTALL_LIB)/pkgconfig
++INSTALL_PKGCONFIG= $(INSTALL_LIBD)/pkgconfig
+
+ INSTALL_TNAME= luajit-$(VERSION)
+ INSTALL_TSYMNAME= luajit
+@@ -63,8 +63,8 @@ INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
+ INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
+ INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
+
+-INSTALL_DIRS= $(INSTALL_BIN) $(INSTALL_LIB) $(INSTALL_INC) $(INSTALL_MAN) \
+- $(INSTALL_PKGCONFIG) $(INSTALL_JITLIB) $(INSTALL_LMOD) $(INSTALL_CMOD)
++INSTALL_DIRS= $(INSTALL_INC) \
++ $(INSTALL_PKGCONFIG) $(INSTALL_JITLIB)
+ UNINSTALL_DIRS= $(INSTALL_JITLIB) $(INSTALL_LJLIBD) $(INSTALL_INC) \
+ $(INSTALL_LMOD) $(INSTALL_LMODD) $(INSTALL_CMOD) $(INSTALL_CMODD)
+
+@@ -121,10 +121,8 @@ install: $(INSTALL_DEP)
+ $(RM) $(INSTALL_DYN) $(INSTALL_SHORT1) $(INSTALL_SHORT2)
+ cd src && test -f $(FILE_SO) && \
+ $(INSTALL_X) $(FILE_SO) $(INSTALL_DYN) && \
+- ( $(LDCONFIG) $(INSTALL_LIB) || : ) && \
+ $(SYMLINK) $(INSTALL_SONAME) $(INSTALL_SHORT1) && \
+ $(SYMLINK) $(INSTALL_SONAME) $(INSTALL_SHORT2) || :
+- cd etc && $(INSTALL_F) $(FILE_MAN) $(INSTALL_MAN)
+ cd etc && $(SED_PC) $(FILE_PC) > $(FILE_PC).tmp && \
+ $(INSTALL_F) $(FILE_PC).tmp $(INSTALL_PC) && \
+ $(RM) $(FILE_PC).tmp
+@@ -143,7 +141,6 @@ uninstall:
+ for file in $(FILES_INC); do \
+ $(UNINSTALL) $(INSTALL_INC)/$$file; \
+ done
+- $(LDCONFIG) $(INSTALL_LIB)
+ $(RMDIR) $(UNINSTALL_DIRS) || :
+ @echo "==== Successfully uninstalled LuaJIT $(VERSION) from $(PREFIX) ===="
+
diff --git a/lang/luajit-devel/files/patch-etc_luajit.pc b/lang/luajit-devel/files/patch-etc_luajit.pc
new file mode 100644
index 000000000000..8867dc0b4be8
--- /dev/null
+++ b/lang/luajit-devel/files/patch-etc_luajit.pc
@@ -0,0 +1,9 @@
+--- etc/luajit.pc.orig 2019-06-26 21:12:49 UTC
++++ etc/luajit.pc
+@@ -21,5 +21,5 @@ URL: http://luajit.org
+ Version: ${version}
+ Requires:
+ Libs: -L${libdir} -l${libname}
+-Libs.private: -Wl,-E -lm -ldl
++Libs.private: -Wl,-E -lm
+ Cflags: -I${includedir}
diff --git a/lang/luajit-devel/files/patch-src_Makefile b/lang/luajit-devel/files/patch-src_Makefile
new file mode 100644
index 000000000000..88511431f17a
--- /dev/null
+++ b/lang/luajit-devel/files/patch-src_Makefile
@@ -0,0 +1,29 @@
+--- src/Makefile.orig 2019-06-26 21:12:49 UTC
++++ src/Makefile
+@@ -24,7 +24,7 @@ NODOTABIVER= 51
+ # removing the '#' in front of them. Make sure you force a full recompile
+ # with "make clean", followed by "make" if you change any options.
+ #
+-DEFAULT_CC = gcc
++DEFAULT_CC = cc
+ #
+ # LuaJIT builds as a native 32 or 64 bit binary by default.
+ CC= $(DEFAULT_CC)
+@@ -36,7 +36,7 @@ CC= $(DEFAULT_CC)
+ # to slow down the C part by not omitting it. Debugging, tracebacks and
+ # unwinding are not affected -- the assembler part has frame unwind
+ # information and GCC emits it where needed (x64) or with -g (see CCDEBUG).
+-CCOPT= -O2 -fomit-frame-pointer
++#CCOPT= -O2 -fomit-frame-pointer
+ # Use this if you want to generate a smaller binary (but it's slower):
+ #CCOPT= -Os -fomit-frame-pointer
+ # Note: it's no longer recommended to use -O3 with GCC 4.x.
+@@ -47,7 +47,7 @@ CCOPT= -O2 -fomit-frame-pointer
+ # x86/x64 only: For GCC 4.2 or higher and if you don't intend to distribute
+ # the binaries to a different machine you could also use: -march=native
+ #
+-CCOPT_x86= -march=i686 -msse -msse2 -mfpmath=sse
++#CCOPT_x86= -march=i686 -msse -msse2 -mfpmath=sse
+ CCOPT_x64=
+ CCOPT_arm=
+ CCOPT_arm64=
diff --git a/lang/luajit-devel/files/patch-src_lj__ccallback.c b/lang/luajit-devel/files/patch-src_lj__ccallback.c
new file mode 100644
index 000000000000..40d0cc76b15b
--- /dev/null
+++ b/lang/luajit-devel/files/patch-src_lj__ccallback.c
@@ -0,0 +1,10 @@
+--- src/lj_ccallback.c.orig 2020-10-28 11:55:44 UTC
++++ src/lj_ccallback.c
+@@ -20,6 +20,7 @@
+ #include "lj_mcode.h"
+ #include "lj_trace.h"
+ #include "lj_vm.h"
++#include "lualib.h"
+
+ /* -- Target-specific handling of callback slots -------------------------- */
+
diff --git a/lang/luajit-devel/files/patch-src_lj__prng.c b/lang/luajit-devel/files/patch-src_lj__prng.c
new file mode 100644
index 000000000000..f22f32475546
--- /dev/null
+++ b/lang/luajit-devel/files/patch-src_lj__prng.c
@@ -0,0 +1,18 @@
+--- src/lj_prng.c.orig 2021-10-27 20:58:55.107726000 -0400
++++ src/lj_prng.c 2021-10-27 21:00:37.533971000 -0400
+@@ -109,6 +109,7 @@
+ #include <sys/syscall.h>
+ #else
+
++#ifndef LJ_TARGET_HAS_GETENTROPY
+ #if LJ_TARGET_OSX && !LJ_TARGET_IOS
+ /*
+ ** In their infinite wisdom Apple decided to disallow getentropy() in the
+@@ -120,6 +121,7 @@
+ #include <Availability.h>
+ #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200
+ #define LJ_TARGET_HAS_GETENTROPY 1
++#endif
+ #endif
+ #endif
+ #elif (LJ_TARGET_BSD && !defined(__NetBSD__)) || LJ_TARGET_SOLARIS || LJ_TARGET_CYGWIN
diff --git a/lang/luajit-devel/pkg-descr b/lang/luajit-devel/pkg-descr
new file mode 100644
index 000000000000..8ecd78affa87
--- /dev/null
+++ b/lang/luajit-devel/pkg-descr
@@ -0,0 +1,3 @@
+LuaJIT is a Just-In-Time Compiler for the Lua programming language.
+
+WWW: https://luajit.org/luajit.html
diff --git a/lang/luajit-devel/pkg-plist b/lang/luajit-devel/pkg-plist
new file mode 100644
index 000000000000..018c0d90e318
--- /dev/null
+++ b/lang/luajit-devel/pkg-plist
@@ -0,0 +1,31 @@
+bin/luajit
+bin/luajit-%%VERSION%%
+include/luajit-2.1/lauxlib.h
+include/luajit-2.1/lua.h
+include/luajit-2.1/lua.hpp
+include/luajit-2.1/luaconf.h
+include/luajit-2.1/luajit.h
+include/luajit-2.1/lualib.h
+lib/libluajit-5.1.a
+lib/libluajit-5.1.so
+lib/libluajit-5.1.so.2
+lib/libluajit-5.1.so.%%SOVERSION%%
+libdata/pkgconfig/luajit.pc
+share/luajit-%%VERSION%%/jit/bc.lua
+share/luajit-%%VERSION%%/jit/bcsave.lua
+share/luajit-%%VERSION%%/jit/dis_arm.lua
+share/luajit-%%VERSION%%/jit/dis_arm64.lua
+share/luajit-%%VERSION%%/jit/dis_arm64be.lua
+share/luajit-%%VERSION%%/jit/dis_mips.lua
+share/luajit-%%VERSION%%/jit/dis_mips64.lua
+share/luajit-%%VERSION%%/jit/dis_mips64el.lua
+share/luajit-%%VERSION%%/jit/dis_mipsel.lua
+share/luajit-%%VERSION%%/jit/dis_ppc.lua
+share/luajit-%%VERSION%%/jit/dis_x64.lua
+share/luajit-%%VERSION%%/jit/dis_x86.lua
+share/luajit-%%VERSION%%/jit/dump.lua
+share/luajit-%%VERSION%%/jit/p.lua
+share/luajit-%%VERSION%%/jit/v.lua
+share/luajit-%%VERSION%%/jit/vmdef.lua
+share/luajit-%%VERSION%%/jit/zone.lua
+man/man1/luajit.1.gz