a15390cbe5b79ced6e5b1d35bc586092ad48b660
[project/luci.git] / libs / lmo / Makefile
1 ifneq (,$(wildcard ../../build/config.mk))
2 include ../../build/config.mk
3 include ../../build/module.mk
4 include ../../build/gccconfig.mk
5 else
6 include standalone.mk
7 endif
8
9 LMO_LDFLAGS    =
10 LMO_CFLAGS     =
11 LMO_SO         = lmo.so
12 LMO_PO2LMO     = po2lmo
13 LMO_LOOKUP     = lookup
14 LMO_COMMON_OBJ = src/lmo_core.o src/lmo_hash.o
15 LMO_PO2LMO_OBJ = src/lmo_po2lmo.o
16 LMO_LOOKUP_OBJ = src/lmo_lookup.o
17 LMO_LUALIB_OBJ = src/lmo_lualib.o
18
19 %.o: %.c
20         $(COMPILE) $(LMO_CFLAGS) $(LUA_CFLAGS) $(FPIC) -c -o $@ $< 
21
22 compile: build-clean $(LMO_COMMON_OBJ) $(LMO_PO2LMO_OBJ) $(LMO_LOOKUP_OBJ) $(LMO_LUALIB_OBJ)
23         $(LINK) $(SHLIB_FLAGS) $(LMO_LDFLAGS) -o src/$(LMO_SO) \
24                 $(LMO_COMMON_OBJ) $(LMO_LUALIB_OBJ)
25         $(LINK) $(LMO_LDFLAGS) -o src/$(LMO_PO2LMO) $(LMO_COMMON_OBJ) $(LMO_PO2LMO_OBJ)
26         $(LINK) $(LMO_LDFLAGS) -o src/$(LMO_LOOKUP) $(LMO_COMMON_OBJ) $(LMO_LOOKUP_OBJ)
27         mkdir -p dist$(LUA_LIBRARYDIR)
28         cp src/$(LMO_SO) dist$(LUA_LIBRARYDIR)/$(LMO_SO)
29
30 install: build
31         cp -pR dist$(LUA_LIBRARYDIR)/* $(LUA_LIBRARYDIR)
32
33 clean: build-clean
34
35 build-clean:
36         rm -f src/*.o src/lookup src/po2lmo src/lmo.so
37
38 host-compile: build-clean host-clean $(LMO_COMMON_OBJ) $(LMO_PO2LMO_OBJ)
39         $(LINK) $(LMO_LDFLAGS) -o src/$(LMO_PO2LMO) $(LMO_COMMON_OBJ) $(LMO_PO2LMO_OBJ)
40
41 host-install: host-compile
42         cp src/$(LMO_PO2LMO) ../../build/$(LMO_PO2LMO)
43
44 host-clean:
45         rm -f ../../build/$(LMO_PO2LMO)
46