@@ -5,8 +5,8 @@ LUA_DIR = contrib/lua/src
55LUASHIM_DIR = contrib/luashim
66PREMAKE_OPTS =
77
8- SRC = src/host/*.c \
9- $(LUA_DIR ) /lapi.c \
8+ SRC = src/host/*.c
9+ LUA_SRC = $(LUA_DIR ) /lapi.c \
1010 $(LUA_DIR ) /lauxlib.c \
1111 $(LUA_DIR ) /lbaselib.c \
1212 $(LUA_DIR ) /lbitlib.c \
@@ -40,11 +40,15 @@ SRC = src/host/*.c \
4040 $(LUA_DIR ) /lvm.c \
4141 $(LUA_DIR ) /lzio.c \
4242
43+ LUA_LINK =
44+
4345ifdef MAKEDIR :
4446!ifdef MAKEDIR
4547
4648# NMAKE
4749
50+ SRC = $(SRC ) $(LUA_SRC )
51+
4852!if "$(MSDEV)" == "vs2010" || "$(MSDEV)" == "vs2012" || "$(MSDEV)" == "vs2013" || "$(MSDEV)" == "vs2015" || "$(MSDEV)" == "vs2017" || "$(MSDEV)" == "vs2019" || "$(MSDEV)" == "vs2022"
4953SLN_EXT = sln
5054!else
5660
5761# make
5862
63+ ifneq (,$(findstring --lib-src=system,$(PREMAKE_OPTS ) ) )
64+ LUA_LINK = -llua5.3
65+ else
66+ SRC += $(LUA_SRC )
67+ endif
68+
5969endif
6070!endif : # !endif has to be last to work in make
6171
@@ -106,7 +116,7 @@ mingw-clean: nix-clean
106116
107117mingw : mingw-clean
108118 mkdir -p build/bootstrap
109- $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) -lole32 -lversion
119+ $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) $( LUA_LINK ) -lole32 -lversion
110120 ./build/bootstrap/premake_bootstrap embed
111121 ./build/bootstrap/premake_bootstrap --arch=$(PLATFORM ) --os=windows --to=build/bootstrap --cc=mingw $(PREMAKE_OPTS ) gmake
112122 $(MAKE ) -C build/bootstrap -j` getconf _NPROCESSORS_ONLN` config=$(CONFIG ) _$(PLATFORM:x86=win32 )
@@ -119,7 +129,7 @@ osx-clean: nix-clean
119129
120130osx : osx-clean
121131 mkdir -p build/bootstrap
122- $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_MACOSX -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " -framework CoreServices -framework Foundation -framework Security -lreadline $(SRC )
132+ $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_MACOSX -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " -framework CoreServices -framework Foundation -framework Security -lreadline $(LUA_LINK ) $( SRC )
123133 ./build/bootstrap/premake_bootstrap embed
124134 ./build/bootstrap/premake_bootstrap --arch=$(PLATFORM ) --to=build/bootstrap $(PREMAKE_OPTS ) gmake
125135 $(MAKE ) -C build/bootstrap -j` getconf _NPROCESSORS_ONLN` config=$(CONFIG )
@@ -128,7 +138,7 @@ linux-clean: nix-clean
128138
129139linux : linux-clean
130140 mkdir -p build/bootstrap
131- $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) -lm -ldl -lrt -luuid
141+ $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) $( LUA_LINK ) -lm -ldl -lrt -luuid
132142 ./build/bootstrap/premake_bootstrap embed
133143 ./build/bootstrap/premake_bootstrap --to=build/bootstrap $(PREMAKE_OPTS ) gmake
134144 $(MAKE ) -C build/bootstrap -j` getconf _NPROCESSORS_ONLN` config=$(CONFIG )
@@ -137,7 +147,7 @@ bsd-clean: nix-clean
137147
138148bsd : bsd-clean
139149 mkdir -p build/bootstrap
140- $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) -lm
150+ $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) $( LUA_LINK ) -lm
141151 ./build/bootstrap/premake_bootstrap embed
142152 ./build/bootstrap/premake_bootstrap --to=build/bootstrap $(PREMAKE_OPTS ) gmake
143153 $(MAKE ) -C build/bootstrap -j` getconf NPROCESSORS_ONLN` config=$(CONFIG )
@@ -146,7 +156,7 @@ solaris-clean: nix-clean
146156
147157solaris : solaris-clean
148158 mkdir -p build/bootstrap
149- $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) -lm
159+ $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) $( LUA_LINK ) -lm
150160 ./build/bootstrap/premake_bootstrap embed
151161 ./build/bootstrap/premake_bootstrap --to=build/bootstrap $(PREMAKE_OPTS ) gmake
152162 $(MAKE ) -C build/bootstrap -j` getconf NPROCESSORS_ONLN` config=$(CONFIG )
@@ -155,14 +165,14 @@ haiku-clean: nix-clean
155165
156166haiku : haiku-clean
157167 mkdir -p build/bootstrap
158- $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -D_BSD_SOURCE -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) -lbsd
168+ $(CC ) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -D_BSD_SOURCE -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) $( LUA_LINK ) -lbsd
159169 ./build/bootstrap/premake_bootstrap embed
160170 ./build/bootstrap/premake_bootstrap --to=build/bootstrap $(PREMAKE_OPTS ) gmake
161171 $(MAKE ) -C build/bootstrap -j` getconf _NPROCESSORS_ONLN` config=$(CONFIG )
162172
163173windows-base : windows-clean
164174 if not exist build\b ootstrap (mkdir build\b ootstrap)
165- cl /Fo.\b uild\b ootstrap\ /Fe.\b uild\b ootstrap\p remake_bootstrap.exe /DPREMAKE_NO_BUILTIN_SCRIPTS /DLUA_STATICLIB /I" $( LUA_DIR) " /I" $( LUASHIM_DIR) " user32.lib ole32.lib advapi32.lib $(SRC )
175+ cl /Fo.\b uild\b ootstrap\ /Fe.\b uild\b ootstrap\p remake_bootstrap.exe /DPREMAKE_NO_BUILTIN_SCRIPTS /DLUA_STATICLIB /I" $( LUA_DIR) " /I" $( LUASHIM_DIR) " $( LUA_LINK ) user32.lib ole32.lib advapi32.lib $(SRC )
166176 .\b uild\b ootstrap\p remake_bootstrap.exe embed
167177 .\b uild\b ootstrap\p remake_bootstrap --arch=$(PLATFORM ) --to=build/bootstrap $(PREMAKE_OPTS ) $(MSDEV )
168178
@@ -177,7 +187,7 @@ cosmo-clean: nix-clean
177187
178188cosmo : cosmo-clean
179189 mkdir -p build/bootstrap
180- cosmocc -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) -lm -ldl -lrt
190+ cosmocc -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I" $( LUA_DIR) " -I" $( LUASHIM_DIR) " $(SRC ) $( LUA_LINK ) -lm -ldl -lrt
181191 ./build/bootstrap/premake_bootstrap embed
182192 ./build/bootstrap/premake_bootstrap --to=build/bootstrap --cc=cosmocc gmake
183193 $(MAKE ) -C build/bootstrap -j` getconf _NPROCESSORS_ONLN` config=$(CONFIG )
0 commit comments