155682Smarkm
2233294Sstas.include <src.lua.mk>
3233294Sstas
4233294SstasLUASRC?=	${SRCTOP}/contrib/lua/src
555682Smarkm.PATH: ${LUASRC}
6233294Sstas
7233294SstasPROG=	flua
8233294SstasWARNS?=	2
955682SmarkmMAN=	# No manpage; this is internal.
10233294Sstas
11233294SstasCWARNFLAGS.gcc+=	-Wno-format-nonliteral
1255682Smarkm
13233294SstasLIBADD=	lua
14233294Sstas
15233294Sstas# Entry point
1655682SmarkmSRCS+=	lua.c
17233294Sstas
18233294Sstas# FreeBSD Extensions
19233294Sstas.PATH: ${.CURDIR}/modules
2055682SmarkmSRCS+=	linit_flua.c
21233294SstasSRCS+=	lfs.c lposix.c lfbsd.c
22233294Sstas
23233294SstasCFLAGS+=	-I${SRCTOP}/lib/liblua -I${.CURDIR}/modules -I${LUASRC}
24233294SstasCFLAGS+=	-DLUA_PROGNAME="\"${PROG}\""
25233294Sstas
26233294Sstas# readline bits; these aren't needed if we're building a bootstrap flua, as we
27233294Sstas# don't expect that one to see any REPL usage.
28233294Sstas.if !defined(BOOTSTRAPPING)
29233294SstasCFLAGS+=	-DLUA_USE_READLINE
30233294SstasCFLAGS+=	-I${SRCTOP}/lib/libedit -I${SRCTOP}/contrib/libedit
31233294SstasLIBADD+=	edit
3255682SmarkmLDFLAGS+=	-Wl,-E
3355682Smarkm.endif
3455682Smarkm
3555682SmarkmUCLSRC?=	${SRCTOP}/contrib/libucl
36178825Sdfr.PATH: ${UCLSRC}/lua
3755682SmarkmSRCS+=	lua_ucl.c
38233294SstasCFLAGS+=	-I${UCLSRC}/include -I${UCLSRC}/src -I${UCLSRC}/uthash
3955682SmarkmLIBADD+=	ucl
4055682Smarkm
4155682Smarkm.include <bsd.prog.mk>
42178825Sdfr