X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fuci.git;a=blobdiff_plain;f=lua%2FMakefile;h=ba5205fbcd728b1b028a7d649fa7df533874a888;hp=9cc6c397696aa10452cc75a0ff41e07ebeac3576;hb=cd9311c8d6b7432f507e9eed12587c971875a9de;hpb=3da86cbf987461afc1c798f1addf8a1c4bdafcbb diff --git a/lua/Makefile b/lua/Makefile index 9cc6c39..ba5205f 100644 --- a/lua/Makefile +++ b/lua/Makefile @@ -1,7 +1,25 @@ include ../Makefile.inc +LUA_VERSION=5.1 +PREFIX_SEARCH=/usr /usr/local /opt/local +LUA_PLUGINDIR=$(firstword \ + $(foreach ldir,$(subst ;, ,$(shell lua -e 'print(package.cpath)')), \ + $(if $(findstring lib/lua/,$(ldir)),$(patsubst %/?.so,%,$(ldir))) \ + ) \ +) -CPPFLAGS=-I.. -LIBS=-L.. -luci +# find lua prefix +LUA_PREFIX=$(firstword \ + $(foreach prefix,$(PREFIX_SEARCH),\ + $(if $(wildcard $(prefix)/include/lua.h),$(prefix)) \ + ) \ +) + +libdir=$(prefix)/libs +luadir=$(if $(LUA_PLUGINDIR),$(LUA_PLUGINDIR),$(libdir)/lua/$(LUA_VERSION)) +luainc=$(shell pkg-config --silence-errors --cflags lua$(LUA_VERSION)) + +CPPFLAGS=-I.. $(if $(luainc),$(luainc), -I$(LUA_PREFIX)/include) +LIBS=-L.. -luci $(shell pkg-config --silence-errors --libs lua$(LUA_VERSION)) PLUGIN_LD=$(CC) ifeq ($(OS),Darwin) @@ -16,11 +34,11 @@ uci.so: uci.o $(PLUGIN_LD) $(PLUGIN_LDFLAGS) -o $@ $^ $(LIBS) %.o: %.c - $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $< + $(CC) $(CPPFLAGS) $(CFLAGS) $(FPIC) -c -o $@ $< install: - mkdir -p $(DESTDIR)$(prefix)/lib/lua/5.1 - $(INSTALL) -m0644 uci.so $(DESTDIR)$(prefix)/lib/lua/5.1/ + mkdir -p $(DESTDIR)$(luadir) + $(INSTALL) -m0644 uci.so $(DESTDIR)$(luadir)/ clean: rm -f *.so *.o uci.so