f2fbf5a1ed
them BROKEN. While here, pet portlint (Makevar order). Approved by: portmgr (tier-2 blanket)
56 lines
1.8 KiB
Makefile
56 lines
1.8 KiB
Makefile
# Created by: Sergey A. Osokin <osa@FreeBSD.org>
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= luajit
|
|
DISTVERSION= 2.0.5
|
|
PORTREVISION= 5
|
|
CATEGORIES= lang
|
|
MASTER_SITES= https://luajit.org/download/
|
|
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_aarch64= fails to compile: lj_arch.h:55:2: No support for this architecture (yet)
|
|
IGNORE_powerpc64= fails to compile: lj_arch.h:346:2: No support for PowerPC 64 bit mode
|
|
IGNORE_riscv64= fails to compile: lj_arch.h:55:2: No support for this architecture (yet)
|
|
|
|
CONFLICTS_INSTALL= luajit-openresty
|
|
|
|
WRKSRC= ${WRKDIR}/LuaJIT-${DISTVERSION}
|
|
USES= gmake
|
|
USE_LDCONFIG= yes
|
|
MAKE_ARGS= CC=${CC} CCOPT= CCOPT_x86=
|
|
|
|
PLIST_SUB+= VERSION=${DISTVERSION}
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
.if ${ARCH:Mpowerpc*} || ${ARCH:Mmips*} || ${ARCH:Msparc*}
|
|
USE_GCC=yes
|
|
.elif ${ARCH} == amd64
|
|
# FreeBSD 12.1 shipped LLVM 8.0.1, which links libluajit with a TLS phdr that
|
|
# requests a 16-byte alignment but an offset that's 8 mod 16. This results in
|
|
# hilarity when an error is raised, as luajit raises an exception (stored in a
|
|
# static TLS variable) via libunwind. libunwind assumes proper alignment of
|
|
# the exception and uses a movaps instruction, which throws a SIGBUS when it
|
|
# encounters this misaligned TLS data. While the linker problem doesn't seem
|
|
# to be specific to amd64, the effect on luajit does seem to be.
|
|
.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1201000 && ${OSVERSION} < 1202000
|
|
LLVM_MINIMUM= 10
|
|
BUILD_DEPENDS+= llvm${LLVM_MINIMUM}>=10.0:devel/llvm${LLVM_MINIMUM}
|
|
CC= clang10
|
|
.endif
|
|
.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>
|