Page MenuHomeFreeBSD

D51891.diff
No OneTemporary

D51891.diff

diff --git a/libexec/flua/Makefile b/libexec/flua/Makefile
--- a/libexec/flua/Makefile
+++ b/libexec/flua/Makefile
@@ -6,10 +6,13 @@
# than mucking about with the infrastructure to make them linkable -- thus, why
# these are all structured to have a Makefile that describes what we want
# *installed*, and a Makefile.inc that describes what we need to *build*.
+FLUA_MODULES+= lfbsd
+FLUA_MODULES+= lfs
FLUA_MODULES+= libhash
FLUA_MODULES+= libjail
FLUA_MODULES+= libucl
FLUA_MODULES+= liblyaml
+FLUA_MODULES+= lposix
.ifdef BOOTSTRAPPING
FLUA_MODULES+= libfreebsd/sys/linker
@@ -47,7 +50,6 @@
# FreeBSD Extensions
.PATH: ${.CURDIR}/modules
SRCS+= linit_flua.c
-SRCS+= lfs.c lposix.c lfbsd.c
CFLAGS+= -I${SRCTOP}/lib/liblua -I${.CURDIR}/modules -I${LUASRC}
CFLAGS+= -DLUA_PROGNAME="\"${PROG}\""
diff --git a/libexec/flua/lfbsd/Makefile b/libexec/flua/lfbsd/Makefile
new file mode 100644
--- /dev/null
+++ b/libexec/flua/lfbsd/Makefile
@@ -0,0 +1,5 @@
+SHLIB_NAME= fbsd.so
+WARNS?= 3
+
+.include "Makefile.inc"
+.include <bsd.lib.mk>
diff --git a/libexec/flua/lfbsd/Makefile.inc b/libexec/flua/lfbsd/Makefile.inc
new file mode 100644
--- /dev/null
+++ b/libexec/flua/lfbsd/Makefile.inc
@@ -0,0 +1,2 @@
+.PATH: ${.PARSEDIR}
+SRCS+= lfbsd.c
diff --git a/libexec/flua/modules/lfbsd.h b/libexec/flua/lfbsd/lfbsd.h
rename from libexec/flua/modules/lfbsd.h
rename to libexec/flua/lfbsd/lfbsd.h
diff --git a/libexec/flua/modules/lfbsd.c b/libexec/flua/lfbsd/lfbsd.c
rename from libexec/flua/modules/lfbsd.c
rename to libexec/flua/lfbsd/lfbsd.c
--- a/libexec/flua/modules/lfbsd.c
+++ b/libexec/flua/lfbsd/lfbsd.c
@@ -40,6 +40,8 @@
#include "lauxlib.h"
#include "lfbsd.h"
+#include "bootstrap.h"
+
#define FBSD_PROCESSHANDLE "fbsd_process_t*"
struct fbsd_process {
@@ -283,3 +285,5 @@
return (1);
}
+
+FLUA_MODULE(fbsd);
diff --git a/libexec/flua/lfs/Makefile b/libexec/flua/lfs/Makefile
new file mode 100644
--- /dev/null
+++ b/libexec/flua/lfs/Makefile
@@ -0,0 +1,5 @@
+SHLIB_NAME= lfs.so
+WARNS?= 3
+
+.include "Makefile.inc"
+.include <bsd.lib.mk>
diff --git a/libexec/flua/lfs/Makefile.inc b/libexec/flua/lfs/Makefile.inc
new file mode 100644
--- /dev/null
+++ b/libexec/flua/lfs/Makefile.inc
@@ -0,0 +1,2 @@
+.PATH: ${.PARSEDIR}
+SRCS+= lfs.c
diff --git a/libexec/flua/modules/lfs.h b/libexec/flua/lfs/lfs.h
rename from libexec/flua/modules/lfs.h
rename to libexec/flua/lfs/lfs.h
diff --git a/libexec/flua/modules/lfs.c b/libexec/flua/lfs/lfs.c
rename from libexec/flua/modules/lfs.c
rename to libexec/flua/lfs/lfs.c
--- a/libexec/flua/modules/lfs.c
+++ b/libexec/flua/lfs/lfs.c
@@ -66,9 +66,10 @@
#ifdef _STANDALONE
#include "lstd.h"
#include "lutils.h"
-#include "bootstrap.h"
#endif
+#include "bootstrap.h"
+
#ifndef nitems
#define nitems(x) (sizeof((x)) / sizeof((x)[0]))
#endif
@@ -446,3 +447,7 @@
#endif
return 1;
}
+
+#ifndef _STANDALONE
+FLUA_MODULE(lfs);
+#endif
diff --git a/libexec/flua/libhash/lhash.c b/libexec/flua/libhash/lhash.c
--- a/libexec/flua/libhash/lhash.c
+++ b/libexec/flua/libhash/lhash.c
@@ -178,4 +178,6 @@
return 1;
}
+#ifndef _STANDALONE
FLUA_MODULE(hash);
+#endif
diff --git a/libexec/flua/linit_flua.c b/libexec/flua/linit_flua.c
--- a/libexec/flua/linit_flua.c
+++ b/libexec/flua/linit_flua.c
@@ -33,9 +33,6 @@
#include "lualib.h"
#include "lauxlib.h"
-#include "lfs.h"
-#include "lposix.h"
-#include "lfbsd.h"
#include "bootstrap.h"
@@ -57,10 +54,6 @@
#if defined(LUA_COMPAT_BITLIB)
{LUA_BITLIBNAME, luaopen_bit32},
#endif
- /* FreeBSD Extensions */
- {"lfs", luaopen_lfs},
- {"posix", luaopen_posix},
- {"fbsd", luaopen_fbsd},
{NULL, NULL}
};
diff --git a/libexec/flua/lposix/Makefile b/libexec/flua/lposix/Makefile
new file mode 100644
--- /dev/null
+++ b/libexec/flua/lposix/Makefile
@@ -0,0 +1,5 @@
+SHLIB_NAME= posix.so
+WARNS?= 3
+
+.include "Makefile.inc"
+.include <bsd.lib.mk>
diff --git a/libexec/flua/lposix/Makefile.inc b/libexec/flua/lposix/Makefile.inc
new file mode 100644
--- /dev/null
+++ b/libexec/flua/lposix/Makefile.inc
@@ -0,0 +1,2 @@
+.PATH: ${.PARSEDIR}
+SRCS+= lposix.c
diff --git a/libexec/flua/modules/lposix.h b/libexec/flua/lposix/lposix.h
rename from libexec/flua/modules/lposix.h
rename to libexec/flua/lposix/lposix.h
diff --git a/libexec/flua/modules/lposix.c b/libexec/flua/lposix/lposix.c
rename from libexec/flua/modules/lposix.c
rename to libexec/flua/lposix/lposix.c
--- a/libexec/flua/modules/lposix.c
+++ b/libexec/flua/lposix/lposix.c
@@ -21,6 +21,8 @@
#include "lauxlib.h"
#include "lposix.h"
+#include "bootstrap.h"
+
static void
enforce_max_args(lua_State *L, int max)
{
@@ -697,3 +699,6 @@
return (1);
}
+
+/* Only this one needed in our bootstrap set, it will load the others. */
+FLUA_MODULE(posix);
diff --git a/stand/liblua/Makefile b/stand/liblua/Makefile
--- a/stand/liblua/Makefile
+++ b/stand/liblua/Makefile
@@ -24,7 +24,7 @@
SRCS+= lerrno.c lpager.c lstd.c lutils.c
SRCS+= gfx_utils.c
-.PATH: ${FLUASRC}/modules
+.PATH: ${FLUASRC}/lfs
SRCS+= lfs.c
.PATH: ${FLUALIB}/libhash
SRCS+= lhash.c
diff --git a/stand/loader.mk b/stand/loader.mk
--- a/stand/loader.mk
+++ b/stand/loader.mk
@@ -89,7 +89,7 @@
.include "${BOOTSRC}/lua.mk"
LDR_INTERP= ${LIBLUA}
LDR_INTERP32= ${LIBLUA32}
-CFLAGS.interp_lua.c= -DLUA_PATH=\"${LUAPATH}\" -I${FLUASRC}/modules
+CFLAGS.interp_lua.c= -DLUA_PATH=\"${LUAPATH}\" -I${FLUASRC}/lfs
.elif ${LOADER_INTERP} == "4th"
SRCS+= interp_forth.c
.include "${BOOTSRC}/ficl.mk"

File Metadata

Mime Type
text/plain
Expires
Thu, Jul 16, 6:40 AM (9 h, 25 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35126558
Default Alt Text
D51891.diff (5 KB)

Event Timeline