summaryrefslogtreecommitdiff
path: root/lang/lua54/Makefile
blob: 00c4d7e09149a3da58fc1c0b40677685679db9f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# $NetBSD: Makefile,v 1.2 2020/07/02 10:15:20 nia Exp $

DISTNAME=	lua-${LUA_VERSION}
PKGNAME=	lua54-${LUA_VERSION}
CATEGORIES=	lang lua
MASTER_SITES=	https://www.lua.org/ftp/

MAINTAINER=	pkgsrc-users@NetBSD.org
HOMEPAGE=	https://www.lua.org/
COMMENT=	Lightweight, embeddable scripting language (v5.4)
LICENSE=	mit

.include "../../lang/lua54/version.mk"

CONFLICTS+=	lua-[0-9]*

USE_TOOLS+=	gmake
USE_LIBTOOL=	yes

.include "../../mk/bsd.prefs.mk"

MAKE_FLAGS+=	MYCFLAGS="-DLUA_USE_READLINE"
MAKE_FLAGS+=	INSTALL_TOP=${PREFIX}
MAKE_FLAGS+=	INSTALL_INC=${PREFIX}/include/lua-5.4
MAKE_FLAGS+=	INSTALL_MAN=${PREFIX}/${PKGMANDIR}/man1

# Address pkg/47587 lua not linked to pthread causes issues with modules
PTHREAD_OPTS+=		native

.include "../../mk/pthread.buildlink3.mk"

.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "native"
CFLAGS+=	-pthread
LDFLAGS+=	-pthread
.endif

.if !empty(OPSYS:M*BSD*) || ${OPSYS} == "DragonFly"
BUILD_TARGET=	bsd
.elif ${OPSYS} == "Linux"
BUILD_TARGET=	linux-noreadline
.elif ${OPSYS} == "Darwin"
BUILD_TARGET=	macosx
.elif ${OPSYS} == "SunOS"
BUILD_TARGET=	solaris
.elif ${OPSYS} == "AIX"
BUILD_TARGET=	aix
.else
BUILD_TARGET=	posix
.endif

DOCDIR=		${PREFIX}/share/doc/lua-5.4

SUBST_CLASSES+=		prefix
SUBST_STAGE.prefix=	pre-configure
SUBST_FILES.prefix+=	src/luaconf.h
SUBST_SED.prefix+=	-e "s,/usr/local,${PREFIX},g"

PKGCONFIG_OVERRIDE=	lua.pc
INSTALLATION_DIRS+=	bin lib include/lua-5.4
INSTALLATION_DIRS+=	${PKGMANDIR}/man1
INSTALLATION_DIRS+=	lib/pkgconfig share/doc/lua-5.4

pre-configure:
	sed	-e 's,@PREFIX@,${PREFIX},g' \
		-e 's,@VER@,${PKGVERSION_NOREV:R},g' \
		-e 's,@REV@,${PKGVERSION_NOREV},g' \
		${FILESDIR}/lua.pc.in > ${WRKSRC}/lua.pc
	cp ${WRKSRC}/doc/lua.1  ${WRKSRC}/doc/lua5.4.1
	cp ${WRKSRC}/doc/luac.1 ${WRKSRC}/doc/luac5.4.1

do-install:
	${LIBTOOL} --quiet --tag=CC --mode=install \
	    ${INSTALL_PROGRAM} ${WRKSRC}/src/lua ${DESTDIR}${PREFIX}/bin/lua5.4
	${LIBTOOL} --quiet --tag=CC --mode=install \
	    ${INSTALL_PROGRAM} ${WRKSRC}/src/luac ${DESTDIR}${PREFIX}/bin/luac5.4
	${LIBTOOL} --quiet --tag=CC --mode=install \
	    ${INSTALL_LIB} ${WRKSRC}/src/liblua5.4.la ${DESTDIR}${PREFIX}/lib
	cd ${WRKSRC}/src && ${INSTALL_DATA} lua.h luaconf.h lualib.h lauxlib.h lua.hpp \
	    ${DESTDIR}${PREFIX}/include/lua-5.4
	cd ${WRKSRC}/doc && ${INSTALL_MAN} lua.1 luac.1 \
	    ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
	${INSTALL_DATA} ${WRKSRC}/doc/*.[a-z][a-z][a-z] \
	    ${WRKSRC}/doc/*.html ${DESTDIR}${DOCDIR}
	${INSTALL_DATA} ${WRKSRC}/lua.pc \
	    ${DESTDIR}${PREFIX}/lib/pkgconfig/lua-5.4.pc

.include "../../mk/readline.buildlink3.mk"
.if ${READLINE_TYPE} == "editline"
MAKE_FLAGS+=	MYLIBS="-L${BUILDLINK_PREFIX.editlinereadline} -ledit"
.else
MAKE_FLAGS+=	MYLIBS="-L${BUILDLINK_PREFIX.editlinereadline} -lreadline"
.endif
.include "../../mk/dlopen.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"