svn commit: r354245 - in head/stand: . common liblua lua

Kyle Evans kevans at FreeBSD.org
Sat Nov 2 03:38:00 UTC 2019


Author: kevans
Date: Sat Nov  2 03:37:58 2019
New Revision: 354245
URL: https://svnweb.freebsd.org/changeset/base/354245

Log:
  stand: consolidate knowledge of lua path
  
  Multiple places coordinate to 'know' where lua scripts are installed. Knock
  this down to being formally defined (and overridable) in exactly one spot,
  defs.mk, and spread the knowledge to loaders and liblua alike. A future
  commit will expose this to lua as loader.lua_path, so it can build absolute
  paths to lua scripts as needed.
  
  MFC after:	1 week

Modified:
  head/stand/common/interp_lua.c
  head/stand/defs.mk
  head/stand/liblua/Makefile
  head/stand/liblua/luaconf.h
  head/stand/loader.mk
  head/stand/lua/Makefile

Modified: head/stand/common/interp_lua.c
==============================================================================
--- head/stand/common/interp_lua.c	Sat Nov  2 03:09:17 2019	(r354244)
+++ head/stand/common/interp_lua.c	Sat Nov  2 03:37:58 2019	(r354245)
@@ -60,6 +60,8 @@ static struct interp_lua_softc lua_softc;
 #define	LDBG(...)
 #endif
 
+#define	LOADER_LUA	LUA_PATH "/loader.lua"
+
 INTERP_DEFINE("lua");
 
 static void *
@@ -120,7 +122,7 @@ interp_init(void)
 		lua_pop(luap, 1);  /* remove lib */
 	}
 
-	filename = "/boot/lua/loader.lua";
+	filename = LOADER_LUA;
 	if (interp_include(filename) != 0) {
                 const char *errstr = lua_tostring(luap, -1);
                 errstr = errstr == NULL ? "unknown" : errstr;

Modified: head/stand/defs.mk
==============================================================================
--- head/stand/defs.mk	Sat Nov  2 03:09:17 2019	(r354244)
+++ head/stand/defs.mk	Sat Nov  2 03:37:58 2019	(r354245)
@@ -40,6 +40,9 @@ BOOTOBJ=	${OBJTOP}/stand
 # BINDIR is where we install
 BINDIR?=	/boot
 
+# LUAPATH is where we search for and install lua scripts.
+LUAPATH?=	/boot/lua
+
 LIBSA=		${BOOTOBJ}/libsa/libsa.a
 .if ${MACHINE} == "i386"
 LIBSA32=	${LIBSA}

Modified: head/stand/liblua/Makefile
==============================================================================
--- head/stand/liblua/Makefile	Sat Nov  2 03:09:17 2019	(r354244)
+++ head/stand/liblua/Makefile	Sat Nov  2 03:37:58 2019	(r354245)
@@ -27,7 +27,7 @@ SRCS+=	lerrno.c lfs.c lstd.c lutils.c
 
 WARNS=	3
 
-CFLAGS+= -DLUA_PATH_DEFAULT=\"/boot/lua/\?.lua\"
+CFLAGS+= -DLUA_PATH=\"${LUAPATH}\" -DLUA_PATH_DEFAULT=\"${LUAPATH}/\?.lua\"
 CFLAGS+= -ffreestanding -nostdlib -DLUA_USE_POSIX
 CFLAGS+= -fno-stack-protector -D__BSD_VISIBLE
 CFLAGS+= -I${BOOTSRC}/include -I${LIBLUASRC} -I${LUASRC} -I${LDRSRC}

Modified: head/stand/liblua/luaconf.h
==============================================================================
--- head/stand/liblua/luaconf.h	Sat Nov  2 03:09:17 2019	(r354244)
+++ head/stand/liblua/luaconf.h	Sat Nov  2 03:37:58 2019	(r354245)
@@ -202,7 +202,7 @@
 
 #else			/* }{ */
 
-#define LUA_ROOT       "/boot/lua/" LUA_VDIR "/"
+#define LUA_ROOT       LUA_PATH "/" LUA_VDIR "/"
 #define LUA_LDIR       LUA_ROOT "share/"
 #define LUA_CDIR       LUA_ROOT "lib/"
 #ifndef LUA_PATH_DEFAULT

Modified: head/stand/loader.mk
==============================================================================
--- head/stand/loader.mk	Sat Nov  2 03:09:17 2019	(r354244)
+++ head/stand/loader.mk	Sat Nov  2 03:37:58 2019	(r354245)
@@ -62,6 +62,7 @@ SRCS+=	interp_lua.c
 .include "${BOOTSRC}/lua.mk"
 LDR_INTERP=	${LIBLUA}
 LDR_INTERP32=	${LIBLUA32}
+CFLAGS+= -DLUA_PATH=\"${LUAPATH}\"
 .elif ${LOADER_INTERP} == "4th"
 SRCS+=	interp_forth.c
 .include "${BOOTSRC}/ficl.mk"

Modified: head/stand/lua/Makefile
==============================================================================
--- head/stand/lua/Makefile	Sat Nov  2 03:09:17 2019	(r354244)
+++ head/stand/lua/Makefile	Sat Nov  2 03:37:58 2019	(r354245)
@@ -12,7 +12,7 @@ MAN=	cli.lua.8 \
 	password.lua.8 \
 	screen.lua.8
 
-FILESDIR=	/boot/lua
+FILESDIR=	${LUAPATH}
 FILES=	cli.lua \
 	color.lua \
 	config.lua \


More information about the svn-src-head mailing list