summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Ipsum <richardipsum@fastmail.co.uk>2017-04-14 22:22:41 +0100
committerRichard Ipsum <richardipsum@fastmail.co.uk>2017-04-27 12:36:01 +0100
commitbc8ecbc31f0d7910c8e0d8cd8fdf1ccff42f3aef (patch)
tree8e435a605db04b4d0a6e63c0b40086f2bab220a2
parentd71810fa0e37fc213ff400796b5a473d946e7da7 (diff)
downloadluxio-bc8ecbc31f0d7910c8e0d8cd8fdf1ccff42f3aef.tar.gz
Split find lua Make code into separate file
-rw-r--r--Makefile111
-rw-r--r--findlua.mk107
2 files changed, 109 insertions, 109 deletions
diff --git a/Makefile b/Makefile
index d09d789..a7af9cb 100644
--- a/Makefile
+++ b/Makefile
@@ -1,122 +1,15 @@
+include findlua.mk
+
all: lua-5.1-try lua-5.2-try
install: lua-5.1-try-install lua-5.2-try-install
-ifeq ($(strip $(shell which pkg-config > /dev/null || echo NONE)),NONE)
- $(error This makefile requires pkg-config)
-endif
-
-ifeq ($(strip $(shell which $(CC) > /dev/null || echo NONE)),NONE)
- $(info Luxio: Hmm, CC make variable contains nonsense. Overriding to gcc.)
- CC := gcc
-endif
-
-# This isn't nice. Find a nice way.
-HOST_OS := $(shell uname -s)
-
-ifneq ($(findstring $(HOST_OS),Linux NetBSD GNU/kFreeBSD),)
- # These operating systems require a seperate Real Time library
- EXTRA_LIBS := -lrt
-else
- EXTRA_LIBS :=
-endif
-
-NAKED_LUA_VER := $(shell (pkg-config --exists lua && \
- pkg-config --modversion lua || \
- pkg-config --variable V lua) | cut -d. -f1-2)
-
-# fine appropriate Lua interpreter
-LUA_REPL := $(shell (which lua5.1 > /dev/null 2>&1 && echo lua5.1) || \
- (which lua-5.1 > /dev/null 2>&1 && echo lua-5.1) || \
- (which lua51 > /dev/null 2>&1 && echo lua51) || \
- (lua -e"print(_VERSION)" | grep -q 5.1 && echo lua) || \
- (which lua-5.2 > /dev/null 2>&1 && echo lua-5.2) || \
- (which lua52 > /dev/null 2>&1 && echo lua52))
-
-# find appropriate Lua libraries
-LUA51_PKG := $(shell (pkg-config --exists lua5.1 && echo lua5.1) || \
- (pkg-config --exists lua-5.1 && echo lua-5.1) || \
- (pkg-config --exists lua51 && echo lua51) || \
- (echo "NONE"))
-
-
-LUA51_PKG := $(strip $(LUA51_PKG))
-
-ifeq ($(LUA51_PKG),NONE)
- ifeq ($(NAKED_LUA_VER),5.1)
- LUA51_PKG := lua
- endif
-endif
-
-ifneq ($(LUA51_PKG),NONE)
- $(info Luxio: Lua 5.1 package name on this system is $(LUA51_PKG))
- LUA51_HAS_MODINST := $(shell test x`pkg-config --variable INSTALL_LMOD $(LUA51_PKG)` != x && echo YES)
- LUA51_INC := $(shell pkg-config --cflags $(LUA51_PKG))
- LUA51_LIB := $(shell pkg-config --libs $(LUA51_PKG))
- ifeq ($(LUA51_HAS_MODINST),)
- LOCAL := YES
- endif
- ifeq ($(LOCAL),)
- LUA51_LMOD_INST := $(shell pkg-config --variable=INSTALL_LMOD $(LUA51_PKG))
- LUA51_CMOD_INST := $(shell pkg-config --variable=INSTALL_CMOD $(LUA51_PKG))
- else
- LUA51_LMOD_INST := /usr/local/share/lua/5.1
- LUA51_CMOD_INST := /usr/local/lib/lua/5.1
- endif
- lua-5.1-try: lua-5.1
- lua-5.1-try-install: lua-5.1-install
-else
-lua-5.1-try:
- @echo Luxio: Lua 5.1 could not be found, so luxio was not built for it.
-lua-5.1-try-install:
- @echo Luxio: Lua 5.1 could not be found, so luxio was not installed for it.
-endif
-
-LUA52_PKG := $(shell (pkg-config --exists lua5.2 && echo lua5.2) || \
- (pkg-config --exists lua-5.2 && echo lua-5.2) || \
- (pkg-config --exists lua52 && echo lua52) || \
- (echo "NONE"))
-
-LUA52_PKG := $(strip $(LUA52_PKG))
-
-ifeq ($(LUA52_PKG),NONE)
- ifeq ($(NAKED_LUA_VER),5.2)
- LUA52_PKG := lua
- endif
-endif
-
-ifneq ($(LUA52_PKG),NONE)
- $(info Luxio: Lua 5.2 package name on this system is $(LUA52_PKG))
- LUA52_HAS_MODINST := $(shell test x`pkg-config --variable INSTALL_LMOD $(LUA52_PKG)` != x && echo YES)
- LUA52_INC := $(shell pkg-config --cflags $(LUA52_PKG))
- LUA52_LIB := $(shell pkg-config --libs $(LUA52_PKG))
- ifeq ($(LUA52_HAS_MODINST),)
- LOCAL := YES
- endif
- ifeq ($(LOCAL),)
- LUA52_LMOD_INST := $(shell pkg-config --variable=INSTALL_LMOD $(LUA52_PKG))
- LUA52_CMOD_INST := $(shell pkg-config --variable=INSTALL_CMOD $(LUA52_PKG))
- else
- LUA52_LMOD_INST := /usr/local/share/lua/5.2
- LUA52_CMOD_INST := /usr/local/lib/lua/5.2
- endif
- lua-5.2-try: lua-5.2
- lua-5.2-try-install: lua-5.2-install
-else
-lua-5.2-try:
- @echo Luxio: Lua 5.2 could not be found, so luxio was not built for it.
-lua-5.2-try-install:
- @echo Luxio: Lua 5.2 could not be found, so luxio was not installed for it.
-endif
-
-
CFLAGS ?= -O2 -Wall
INSTALL := /usr/bin/install
LUALIBS := $(patsubst %,luxio/%.lua, \
event simple subprocess)
-
clean:
$(RM) *.so *.o luxio_constants.inc luxio-5.1 luxio-5.2
diff --git a/findlua.mk b/findlua.mk
new file mode 100644
index 0000000..b8149fb
--- /dev/null
+++ b/findlua.mk
@@ -0,0 +1,107 @@
+ifeq ($(strip $(shell which pkg-config > /dev/null || echo NONE)),NONE)
+ $(error This makefile requires pkg-config)
+endif
+
+ifeq ($(strip $(shell which $(CC) > /dev/null || echo NONE)),NONE)
+ $(info Luxio: Hmm, CC make variable contains nonsense. Overriding to gcc.)
+ CC := gcc
+endif
+
+# This isn't nice. Find a nice way.
+HOST_OS := $(shell uname -s)
+
+ifneq ($(findstring $(HOST_OS),Linux NetBSD GNU/kFreeBSD),)
+ # These operating systems require a seperate Real Time library
+ EXTRA_LIBS := -lrt
+else
+ EXTRA_LIBS :=
+endif
+
+NAKED_LUA_VER := $(shell (pkg-config --exists lua && \
+ pkg-config --modversion lua || \
+ pkg-config --variable V lua) | cut -d. -f1-2)
+
+# fine appropriate Lua interpreter
+LUA_REPL := $(shell (which lua5.1 > /dev/null 2>&1 && echo lua5.1) || \
+ (which lua-5.1 > /dev/null 2>&1 && echo lua-5.1) || \
+ (which lua51 > /dev/null 2>&1 && echo lua51) || \
+ (lua -e"print(_VERSION)" | grep -q 5.1 && echo lua) || \
+ (which lua-5.2 > /dev/null 2>&1 && echo lua-5.2) || \
+ (which lua52 > /dev/null 2>&1 && echo lua52))
+
+# find appropriate Lua libraries
+LUA51_PKG := $(shell (pkg-config --exists lua5.1 && echo lua5.1) || \
+ (pkg-config --exists lua-5.1 && echo lua-5.1) || \
+ (pkg-config --exists lua51 && echo lua51) || \
+ (echo "NONE"))
+
+
+LUA51_PKG := $(strip $(LUA51_PKG))
+
+ifeq ($(LUA51_PKG),NONE)
+ ifeq ($(NAKED_LUA_VER),5.1)
+ LUA51_PKG := lua
+ endif
+endif
+
+ifneq ($(LUA51_PKG),NONE)
+ $(info Luxio: Lua 5.1 package name on this system is $(LUA51_PKG))
+ LUA51_HAS_MODINST := $(shell test x`pkg-config --variable INSTALL_LMOD $(LUA51_PKG)` != x && echo YES)
+ LUA51_INC := $(shell pkg-config --cflags $(LUA51_PKG))
+ LUA51_LIB := $(shell pkg-config --libs $(LUA51_PKG))
+ ifeq ($(LUA51_HAS_MODINST),)
+ LOCAL := YES
+ endif
+ ifeq ($(LOCAL),)
+ LUA51_LMOD_INST := $(shell pkg-config --variable=INSTALL_LMOD $(LUA51_PKG))
+ LUA51_CMOD_INST := $(shell pkg-config --variable=INSTALL_CMOD $(LUA51_PKG))
+ else
+ LUA51_LMOD_INST := /usr/local/share/lua/5.1
+ LUA51_CMOD_INST := /usr/local/lib/lua/5.1
+ endif
+ lua-5.1-try: lua-5.1
+ lua-5.1-try-install: lua-5.1-install
+else
+lua-5.1-try:
+ @echo Luxio: Lua 5.1 could not be found, so luxio was not built for it.
+lua-5.1-try-install:
+ @echo Luxio: Lua 5.1 could not be found, so luxio was not installed for it.
+endif
+
+LUA52_PKG := $(shell (pkg-config --exists lua5.2 && echo lua5.2) || \
+ (pkg-config --exists lua-5.2 && echo lua-5.2) || \
+ (pkg-config --exists lua52 && echo lua52) || \
+ (echo "NONE"))
+
+LUA52_PKG := $(strip $(LUA52_PKG))
+
+ifeq ($(LUA52_PKG),NONE)
+ ifeq ($(NAKED_LUA_VER),5.2)
+ LUA52_PKG := lua
+ endif
+endif
+
+ifneq ($(LUA52_PKG),NONE)
+ $(info Luxio: Lua 5.2 package name on this system is $(LUA52_PKG))
+ LUA52_HAS_MODINST := $(shell test x`pkg-config --variable INSTALL_LMOD $(LUA52_PKG)` != x && echo YES)
+ LUA52_INC := $(shell pkg-config --cflags $(LUA52_PKG))
+ LUA52_LIB := $(shell pkg-config --libs $(LUA52_PKG))
+ ifeq ($(LUA52_HAS_MODINST),)
+ LOCAL := YES
+ endif
+ ifeq ($(LOCAL),)
+ LUA52_LMOD_INST := $(shell pkg-config --variable=INSTALL_LMOD $(LUA52_PKG))
+ LUA52_CMOD_INST := $(shell pkg-config --variable=INSTALL_CMOD $(LUA52_PKG))
+ else
+ LUA52_LMOD_INST := /usr/local/share/lua/5.2
+ LUA52_CMOD_INST := /usr/local/lib/lua/5.2
+ endif
+ lua-5.2-try: lua-5.2
+ lua-5.2-try-install: lua-5.2-install
+else
+lua-5.2-try:
+ @echo Luxio: Lua 5.2 could not be found, so luxio was not built for it.
+lua-5.2-try-install:
+ @echo Luxio: Lua 5.2 could not be found, so luxio was not installed for it.
+endif
+