Define appropriate macros when building Lua on Linux or OS X.
authorTee-Kiah Chia <tkchia@users.noreply.github.com>
Sun, 28 Jan 2018 16:05:17 +0000 (00:05 +0800)
committerTee-Kiah Chia <tkchia@users.noreply.github.com>
Sun, 28 Jan 2018 16:05:17 +0000 (00:05 +0800)
Makefile

index d53964c..1bfba39 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -129,7 +129,21 @@ install:
 clean:
        rm -rf $(BUILDDIR)
 
+uname := $(shell uname)
+ifeq (Linux,$(uname))
+# Turn on LUA_USE_POSIX so that Lua is not compiled with the dangerous
+# tmpnam(.) function.  But, do not use LUA_USE_LINUX here, since that will
+# also turn on LUA_USE_READLINE, and I do not want to force everyone to
+# install libreadline-dev.  -- tkchia
+$(our-lua): CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN
+$(our-lua): LDFLAGS += -ldl
+else
+ifeq (Darwin,$(uname))
+$(our-lua): CFLAGS += -DLUA_USE_MACOSX
+endif
+endif
+
 $(our-lua): first/lua-5.1/*.c first/lua-5.1/*.h
        @echo Bootstrapping build
        @mkdir -p $(BUILDDIR)
-       @$(CC) -o $(our-lua) -O first/lua-5.1/*.c -lm
+       @$(CC) $(CFLAGS) -o $(our-lua) -O first/lua-5.1/*.c $(LDFLAGS) -lm