libiwinfo:
[project/luci.git] / contrib / package / iwinfo / src / Makefile
index 1d4319fb001920337ed063884fe39eec251e7487..a7a7b9a5813641bba63031a8dd1c1b4d6d96ec99 100644 (file)
@@ -1,15 +1,31 @@
-IWINFO_LDFLAGS    = $(LDFLAGS) -shared -llua $(if $(CRAP),,-lnl-tiny)
-IWINFO_CFLAGS     = $(CFLAGS) -std=gnu99 -fstrict-aliasing $(if $(CRAP),-DUSE_WL,-DUSE_MADWIFI -DUSE_NL80211)
+IWINFO_BACKENDS   = $(BACKENDS)
+IWINFO_LDFLAGS    = $(LDFLAGS) -shared -llua
+IWINFO_CFLAGS     = $(CFLAGS) -std=gnu99 -fstrict-aliasing
 IWINFO_SO         = iwinfo.so
-IWINFO_OBJ        = $(if $(CRAP),iwinfo_wl.o,iwinfo_madwifi.o iwinfo_nl80211.o) \
-       iwinfo_wext.o iwinfo_wext_scan.o iwinfo_lualib.o
+IWINFO_OBJ        = iwinfo_utils.o iwinfo_wext.o iwinfo_wext_scan.o iwinfo_lualib.o
+
+ifneq ($(filter wl,$(IWINFO_BACKENDS)),)
+       IWINFO_CFLAGS  += -DUSE_WL
+       IWINFO_OBJ     += iwinfo_wl.o
+endif
+
+ifneq ($(filter madwifi,$(IWINFO_BACKENDS)),)
+       IWINFO_CFLAGS  += -DUSE_MADWIFI
+       IWINFO_OBJ     += iwinfo_madwifi.o
+endif
+
+ifneq ($(filter nl80211,$(IWINFO_BACKENDS)),)
+       IWINFO_CFLAGS  += -DUSE_NL80211
+       IWINFO_LDFLAGS += -lnl-tiny
+       IWINFO_OBJ     += iwinfo_nl80211.o
+endif
+
 
 %.o: %.c
-       $(CC) $(IWINFO_CFLAGS) $(LUA_CFLAGS) $(FPIC) -c -o $@ $< 
+       $(CC) $(IWINFO_CFLAGS) $(LUA_CFLAGS) $(FPIC) -c -o $@ $<
 
 compile: clean $(IWINFO_OBJ)
        $(LD) $(IWINFO_LDFLAGS) -o $(IWINFO_SO) $(IWINFO_OBJ)
 
 clean:
        rm -f *.o $(IWINFO_SO)
-