| -rw-r--r-- | README | 11 | ||||
| -rw-r--r-- | cgit.mk | 36 |
2 files changed, 31 insertions, 16 deletions
@@ -38,11 +38,14 @@ If you'd like to compile without Lua support, you may use: And if you'd like to specify a Lua implementation, you may use: - $ make LUA_PKGCONFIG=lua5.1 + $ make LUA_IMPLEMENTATION=JIT -If this is not specified, the Lua implementation will be auto-detected, -preferring LuaJIT if many are present. Acceptable values are generally "lua", -"luajit", "lua5.1", and "lua5.2". +for using the LuaJIT project. Or: + + $ make LUA_IMPLEMENTATION=VANILLA + +for the mainline Lua project. If you specify neither implementation, it will +be auto-detected, preferring LuaJIT if both are present. Dependencies @@ -29,18 +29,30 @@ ifdef NO_LUA LUA_MESSAGE := linking without specified Lua support CGIT_CFLAGS += -DNO_LUA else -ifeq ($(LUA_PKGCONFIG),) - LUA_PKGCONFIG := $(shell for pc in luajit lua lua5.2 lua5.1; do \ - pkg-config --exists $$pc && echo $$pc && break; \ - done) - LUA_MODE := autodetected -else - LUA_MODE := specified -endif -ifneq ($(LUA_PKGCONFIG),) - LUA_MESSAGE := linking with $(LUA_MODE) $(LUA_PKGCONFIG) - LUA_LIBS := $(shell pkg-config --libs $(LUA_PKGCONFIG) 2>/dev/null) - LUA_CFLAGS := $(shell pkg-config --cflags $(LUA_PKGCONFIG) 2>/dev/null) +LUAJIT_CFLAGS := $(shell pkg-config --cflags luajit 2>/dev/null) +LUAJIT_LIBS := $(shell pkg-config --libs luajit 2>/dev/null) +LUA_LIBS := $(shell pkg-config --libs lua 2>/dev/null) +LUA_CFLAGS := $(shell pkg-config --cflags lua 2>/dev/null) +ifeq (JIT,$(LUA_IMPLEMENTATION)) + ifeq ($(strip $(LUAJIT_LIBS)),) + $(error LuaJIT specified via LUA_IMPLEMENTATION=JIT, but library could not be found.) + endif + LUA_MESSAGE := linking with selected LuaJIT + CGIT_LIBS += $(LUAJIT_LIBS) + CGIT_CFLAGS += $(LUAJIT_CFLAGS) +else ifeq (VANILLA,$(LUA_IMPLEMENTATION)) + ifeq ($(strip $(LUA_LIBS)),) + $(error Lua specified via LUA_IMPLEMENTATION=VANILLA, but library could not be found.) + endif + LUA_MESSAGE := linking with selected Lua + CGIT_LIBS += $(LUA_LIBS) + CGIT_LIBS += $(LUA_CFLAGS) +else ifneq ($(strip $(LUAJIT_LIBS)),) + LUA_MESSAGE := linking with autodetected LuaJIT + CGIT_LIBS += $(LUAJIT_LIBS) + CGIT_CFLAGS += $(LUAJIT_CFLAGS) +else ifneq ($(strip $(LUA_LIBS)),) + LUA_MESSAGE := linking with autodetected Lua CGIT_LIBS += $(LUA_LIBS) CGIT_CFLAGS += $(LUA_CFLAGS) else |