summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Kendrick (humdrum) <rjek@rjek.com>2013-03-21 16:11:59 +0000
committerRob Kendrick (humdrum) <rjek@rjek.com>2013-03-21 16:11:59 +0000
commite4780967868a62362ddb714df39ff0485a57e728 (patch)
tree0536057c6a1274087e33f0755d2c134e340a3455
parent7bca422064f99b47c6e5654a43aed9f25e9ed56e (diff)
downloadluxio-e4780967868a62362ddb714df39ff0485a57e728.tar.gz
Now builds under OpenBSD: different pkg-config package name, and no need to link to librt
-rw-r--r--Makefile27
1 files changed, 20 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 5f36ae3..a3b8ba5 100644
--- a/Makefile
+++ b/Makefile
@@ -2,11 +2,23 @@ all: lua-5.1-try lua-5.2-try
install: lua-5.1-try-install lua-5.2-try-install
+# This isn't nice. Find a nice way.
+EXTRA_LIBS := $(shell test x`uname -s` == xLinux && echo -lrt)
+
+# 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 -v | grep -q 5.1 && 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) || \
- (test `pkg-config --variable=V lua ` == 5.1 && echo lua))
-LUA51_HAS_MODINST := $(shell (pkg-config --print-variables lua | grep -q INSTALL_LMOD && echo YES))
+ (pkg-config --exists lua51 && echo lua51) || \
+ (test x`pkg-config --variable=V lua` == x5.1 && echo lua))
+LUA51_HAS_MODINST := $(shell (test x`pkg-config --variable INSTALL_LMOD $LUA51_PKG` != x && echo YES))
ifneq ($(LUA51_PKG),)
LUA51_INC := $(shell pkg-config --cflags $(LUA51_PKG))
LUA51_LIB := $(shell pkg-config --libs $(LUA51_PKG))
@@ -31,8 +43,9 @@ endif
LUA52_PKG := $(shell (pkg-config --exists lua5.2 && echo lua5.2) || \
(pkg-config --exists lua-5.2 && echo lua-5.2) || \
- (test `pkg-config --variable=V lua ` == 5.2 && echo lua))
-LUA52_HAS_MODINST := $(shell (pkg-config --print-variables lua | grep -q INSTALL_LMOD && echo YES))
+ (pkg-config --exists lua52 && echo lua52) || \
+ (test x`pkg-config --variable=V lua` == x5.2 && echo lua))
+LUA52_HAS_MODINST := $(shell (test x`pkg-config --variable INSTALL_LMOD $LUA52_PKG` != x && echo YES))
ifneq ($(LUA52_PKG),)
LUA52_INC := $(shell pkg-config --cflags $(LUA52_PKG))
LUA52_LIB := $(shell pkg-config --libs $(LUA52_PKG))
@@ -68,7 +81,7 @@ clean:
$(RM) *.so *.o luxio_constants.h
luxio_constants.h: luxio_constants.h.in const-proc.lua
- ./const-proc.lua < $^ > $@
+ $(LUA_REPL) ./const-proc.lua < $^ > $@
lua-5.1: luxio-5.1.so
ln -s -f luxio-5.1.so luxio.so
@@ -80,7 +93,7 @@ lua-5.1-install: lua-5.1
$(INSTALL) -m 644 $(LUALIBS) $(DESTDIR)$(LUA51_LMOD_INST)/luxio/
luxio-5.1.so: luxio-5.1.o
- $(CC) $(LDFLAGS) -shared -Wl,--no-as-needed -o luxio-5.1.so $(LUA51_LIB) -lrt $^
+ $(CC) $(LDFLAGS) -shared -Wl,--no-as-needed -o luxio-5.1.so $(LUA51_LIB) $(EXTRA_LIBS) $^
lua-5.2: luxio-5.2.so
ln -s -f luxio-5.2.so luxio.so
@@ -93,7 +106,7 @@ lua-5.2-install: lua-5.2
luxio-5.2.so: luxio-5.2.o
- $(CC) $(LDFLAGS) -shared -Wl,--no-as-needed -o luxio-5.2.so $(LUA52_LIB) -lrt $^
+ $(CC) $(LDFLAGS) -shared -Wl,--no-as-needed -o luxio-5.2.so $(LUA52_LIB) $(EXTRA_LIBS) $^
luxio-5.1.o: luxio.c luxio_constants.h
$(CC) $(CFLAGS) -fPIC $(LUA51_INC) -c $< -o $@