1
# $Id: Makefile.mingw,v 1.13 2010/04/17 22:07:59 nanard Exp $
3
# http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
4
# (c) 2005-2008 Thomas Bernard
5
# This Makefile is made for MinGW
8
#CFLAGS = -Wall -g -DDEBUG
9
CFLAGS = -Wall -Os -DNDEBUG
10
LDLIBS = -lws2_32 -liphlpapi
12
# -liphlpapi is used for GetBestRoute()
13
PYTHON=\utils\python25\python
14
OBJS=miniwget.o minixml.o igd_desc_parse.o minisoap.o \
15
miniupnpc.o upnpreplyparse.o upnpcommands.o upnperrors.o \
17
OBJSDLL=$(addprefix dll/, $(OBJS))
19
all: init upnpc-static upnpc-shared testminixml libminiupnpc.a miniupnpc.dll
26
del upnpc testminixml *.o
32
libminiupnpc.a: $(OBJS)
35
pythonmodule: libminiupnpc.a
36
$(PYTHON) setupmingw32.py build --compiler=mingw32
37
$(PYTHON) setupmingw32.py install --skip-build
39
miniupnpc.dll: libminiupnpc.a $(OBJSDLL)
40
dllwrap -k --driver-name gcc --def miniupnpc.def \
41
--output-def miniupnpc.dll.def --implib miniupnpc.lib -o $@ \
44
miniupnpc.lib: miniupnpc.dll
45
echo $@ generated with $<
48
echo $@ generated with $<
51
$(CC) $(CFLAGS) -DSTATICLIB -c -o $@ $<
52
$(CC) $(CFLAGS) -DMINIUPNP_EXPORTS -c -o dll/$@ $<
55
$(CC) $(CFLAGS) -DSTATICLIB -c -o $@ $<
56
$(CC) $(CFLAGS) -c -o dll/$@ $<
58
upnpc-static: upnpc.o libminiupnpc.a
59
$(CC) -o $@ $^ $(LDLIBS)
61
upnpc-shared: dll/upnpc.o miniupnpc.lib
62
$(CC) -o $@ $^ $(LDLIBS)
64
wingenminiupnpcstrings: wingenminiupnpcstrings.o
66
wingenminiupnpcstrings.o: wingenminiupnpcstrings.c
68
miniupnpcstrings.h: miniupnpcstrings.h.in wingenminiupnpcstrings
69
wingenminiupnpcstrings $< $@
71
minixml.o: minixml.c minixml.h miniupnpcstrings.h
73
upnpc.o: upnpc.c miniwget.h minisoap.h miniupnpc.h igd_desc_parse.h upnpreplyparse.h upnpcommands.h
75
miniwget.o: miniwget.c miniwget.h miniupnpcstrings.h
77
minisoap.o: minisoap.c minisoap.h
79
miniupnpc.o: miniupnpc.c miniupnpc.h minisoap.h miniwget.h minixml.h
81
igd_desc_parse.o: igd_desc_parse.c igd_desc_parse.h
83
testminixml: minixml.o igd_desc_parse.o testminixml.c
85
upnpreplyparse.o: upnpreplyparse.c upnpreplyparse.h minixml.h
87
upnpcommands.o: upnpcommands.c upnpcommands.h upnpreplyparse.h miniupnpc.h