| # $Id: Makefile,v 1.2 2009/01/13 02:50:10 bradhuang Exp $ |
| |
| .SUFFIXES: |
| .SUFFIXES: .o .c |
| .PHONY: clean all depend |
| |
| LIBS = |
| INCS = -I$(TOP_USERS_DIR)/include |
| #CFLAGS = -g -O2 -Wall |
| CFLAGS := -Os $(CFLAGS) $(INCS) |
| CPPFLAGS = -I. -I. |
| DEPEND = .depend |
| LDFLAGS = -g -s |
| |
| #CC = rsdk-linux-gcc |
| CC = $(CROSS_COMPILE)gcc |
| |
| CPP = gcc -E |
| #AR = rsdk-linux-ar |
| AR = $(CROSS_COMPILE)ar |
| |
| SOURCES = minixml.c, upnphttp.c, upnpreplyparse.c, upnpsoap.c \ |
| mini_upnp.c |
| OBJS = $(SOURCES:.c=.o) |
| |
| UPNP_DAEMON = mini_upnpd |
| |
| # For mini_upnp stand alone |
| STATIC_LIB=1 |
| |
| ifeq ($(STATIC_LIB),1) |
| ########## Build Static Library ################## |
| all: mini_upnp.a |
| |
| UPNP_LIB = mini_upnp.a |
| |
| mini_upnp.a: mini_upnp.o minixml.o upnphttp.o upnpreplyparse.o upnpsoap.o |
| $(AR) rcs $@ mini_upnp.o minixml.o upnphttp.o upnpreplyparse.o upnpsoap.o |
| |
| else |
| ########## Build Shared Library ################## |
| all: $(UPNP_DAEMON) $(UPNP_LIB) |
| |
| UPNP_LIB = mini_upnp.so |
| |
| CFLAGS += -DUSE_SHARED_DAEMON |
| |
| minixml.o: minixml.c |
| $(CC) -c -o $@ -fpic $(CFLAGS) $(IFLAGS) $< |
| |
| upnphttp.o: upnphttp.c |
| $(CC) -c -o $@ -fpic $(CFLAGS) $(IFLAGS) $< |
| |
| upnpreplyparse.o: upnpreplyparse.c |
| $(CC) -c -o $@ -fpic $(CFLAGS) $(IFLAGS) $< |
| |
| upnpsoap.o: upnpsoap.c |
| $(CC) -c -o $@ -fpic $(CFLAGS) $(IFLAGS) $< |
| |
| $(UPNP_LIB): minixml.o upnphttp.o upnpreplyparse.o upnpsoap.o |
| $(CC) -s -shared -o $@ minixml.o upnphttp.o upnpreplyparse.o upnpsoap.o |
| |
| $(UPNP_DAEMON): mini_upnp.o $(UPNP_LIB) |
| $(CC) -o $@ $(APMIB_LIB) $^ $(LDFLAGS) $(LIBS) |
| |
| endif |
| |
| |
| clean: |
| rm -f *.o *.so *.a $(UPNP_DAEMON) |
| |
| romfs: |
| ifeq ($(STATIC_LIB),1) |
| @echo "Do nothing here." |
| else |
| $(ROMFSINST) mini_upnpd /bin/mini_upnpd |
| $(ROMFSINST) mini_upnp.so /lib/mini_upnp.so |
| endif |
| |
| # depend stuff |
| depend: $(SOURCES) |
| $(CPP) $(CPPFLAGS) -MM $^ > $(DEPEND) |
| |
| -include $(DEPEND) |
| |
| # tags |
| tags: $(SOURCES) |
| ctags -o tags $^ *.h |
| |
| .c.o: |
| ${CC} -c -o $@ $(CFLAGS) $(IFLAGS) $< |
| |
| |
| |
| |