summaryrefslogtreecommitdiff
path: root/stand
diff options
context:
space:
mode:
Diffstat (limited to 'stand')
-rw-r--r--stand/common/interp_lua.c4
-rw-r--r--stand/defs.mk3
-rw-r--r--stand/liblua/Makefile2
-rw-r--r--stand/liblua/luaconf.h2
-rw-r--r--stand/loader.mk1
-rw-r--r--stand/lua/Makefile2
6 files changed, 10 insertions, 4 deletions
diff --git a/stand/common/interp_lua.c b/stand/common/interp_lua.c
index 3c6691a7d10e..f63bad03b486 100644
--- a/stand/common/interp_lua.c
+++ b/stand/common/interp_lua.c
@@ -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;
diff --git a/stand/defs.mk b/stand/defs.mk
index ac8ee7f526ba..2318961ddc41 100644
--- a/stand/defs.mk
+++ b/stand/defs.mk
@@ -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}
diff --git a/stand/liblua/Makefile b/stand/liblua/Makefile
index edbbf60b2d25..49ed02709299 100644
--- a/stand/liblua/Makefile
+++ b/stand/liblua/Makefile
@@ -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}
diff --git a/stand/liblua/luaconf.h b/stand/liblua/luaconf.h
index f3a1b4ec9ad5..dd642cba92f4 100644
--- a/stand/liblua/luaconf.h
+++ b/stand/liblua/luaconf.h
@@ -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
diff --git a/stand/loader.mk b/stand/loader.mk
index a7fbd6c12dd9..573e82d8964b 100644
--- a/stand/loader.mk
+++ b/stand/loader.mk
@@ -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"
diff --git a/stand/lua/Makefile b/stand/lua/Makefile
index 6e7019603ae4..7bdcc3fee056 100644
--- a/stand/lua/Makefile
+++ b/stand/lua/Makefile
@@ -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 \