Annotation of embedaddon/miniupnpc/Makefile, revision 1.1

1.1     ! misho       1: # $Id: Makefile,v 1.81 2011/06/21 15:24:14 nanard Exp $
        !             2: # MiniUPnP Project
        !             3: # http://miniupnp.free.fr/
        !             4: # (c) 2005-2011 Thomas Bernard
        !             5: # to install use :
        !             6: # $ PREFIX=/tmp/dummylocation make install
        !             7: # or
        !             8: # $ INSTALLPREFIX=/usr/local make install
        !             9: # or 
        !            10: # make install (will go to /usr/bin, /usr/lib, etc...)
        !            11: OS = $(shell uname -s)
        !            12: CC ?= gcc
        !            13: #AR = gar
        !            14: #CFLAGS = -O -Wall -g -DDEBUG
        !            15: CFLAGS ?= -O -Wall -DNDEBUG -DMINIUPNPC_SET_SOCKET_TIMEOUT -Wstrict-prototypes
        !            16: # -DNO_GETADDRINFO
        !            17: INSTALL = install
        !            18: SH = /bin/sh
        !            19: JAVA = java
        !            20: # see http://code.google.com/p/jnaerator/
        !            21: JNAERATOR = jnaerator-0.9.3.jar
        !            22: #following libs are needed on Solaris
        !            23: #LDLIBS=-lsocket -lnsl -lresolv
        !            24: 
        !            25: # APIVERSION is used to build SONAME
        !            26: APIVERSION = 8
        !            27: 
        !            28: SRCS = igd_desc_parse.c miniupnpc.c minixml.c minisoap.c miniwget.c \
        !            29:        upnpc.c upnpcommands.c upnpreplyparse.c testminixml.c \
        !            30:           minixmlvalid.c testupnpreplyparse.c minissdpc.c \
        !            31:           upnperrors.c testigddescparse.c testminiwget.c \
        !            32:        connecthostport.c portlistringparse.c receivedata.c
        !            33: 
        !            34: LIBOBJS = miniwget.o minixml.o igd_desc_parse.o minisoap.o \
        !            35:           miniupnpc.o upnpreplyparse.o upnpcommands.o upnperrors.o \
        !            36:           connecthostport.o portlistingparse.o receivedata.o
        !            37: 
        !            38: ifneq ($(OS), AmigaOS)
        !            39: CFLAGS := -fPIC $(CFLAGS)
        !            40: LIBOBJS := $(LIBOBJS) minissdpc.o
        !            41: endif
        !            42: 
        !            43: OBJS = $(patsubst %.c,%.o,$(SRCS))
        !            44: 
        !            45: # HEADERS to install
        !            46: HEADERS = miniupnpc.h miniwget.h upnpcommands.h igd_desc_parse.h \
        !            47:           upnpreplyparse.h upnperrors.h miniupnpctypes.h \
        !            48:           portlistingparse.h \
        !            49:           declspec.h
        !            50: 
        !            51: # library names
        !            52: LIBRARY = libminiupnpc.a
        !            53: ifeq ($(OS), Darwin)
        !            54:   SHAREDLIBRARY = libminiupnpc.dylib
        !            55:   SONAME = $(basename $(SHAREDLIBRARY)).$(APIVERSION).dylib
        !            56:   CFLAGS := -DMACOSX -D_DARWIN_C_SOURCE $(CFLAGS)
        !            57: else 
        !            58:   SHAREDLIBRARY = libminiupnpc.so
        !            59:   SONAME = $(SHAREDLIBRARY).$(APIVERSION)
        !            60: endif
        !            61: 
        !            62: EXECUTABLES = upnpc-static
        !            63: EXECUTABLES_ADDTESTS = testminixml minixmlvalid testupnpreplyparse \
        !            64:                          testigddescparse testminiwget
        !            65: 
        !            66: TESTMINIXMLOBJS = minixml.o igd_desc_parse.o testminixml.o
        !            67: 
        !            68: TESTMINIWGETOBJS = miniwget.o testminiwget.o connecthostport.o receivedata.o
        !            69: 
        !            70: TESTUPNPREPLYPARSE = testupnpreplyparse.o minixml.o upnpreplyparse.o
        !            71: 
        !            72: TESTIGDDESCPARSE = testigddescparse.o igd_desc_parse.o minixml.o \
        !            73:                    miniupnpc.o miniwget.o upnpcommands.o upnpreplyparse.o \
        !            74:                    minisoap.o connecthostport.o receivedata.o \
        !            75:                    portlistingparse.o
        !            76: 
        !            77: ifneq ($(OS), AmigaOS)
        !            78: EXECUTABLES := $(EXECUTABLES) upnpc-shared
        !            79: TESTMINIWGETOBJS := $(TESTMINIWGETOBJS) minissdpc.o
        !            80: TESTIGDDESCPARSE := $(TESTIGDDESCPARSE) minissdpc.o
        !            81: endif
        !            82: 
        !            83: # install directories
        !            84: INSTALLPREFIX ?= $(PREFIX)/usr
        !            85: INSTALLDIRINC = $(INSTALLPREFIX)/include/miniupnpc
        !            86: INSTALLDIRLIB = $(INSTALLPREFIX)/lib
        !            87: INSTALLDIRBIN = $(INSTALLPREFIX)/bin
        !            88: 
        !            89: FILESTOINSTALL = $(LIBRARY) $(EXECUTABLES)
        !            90: ifneq ($(OS), AmigaOS)
        !            91: FILESTOINSTALL := $(FILESTOINSTALL) $(SHAREDLIBRARY)
        !            92: endif
        !            93: 
        !            94: 
        !            95: .PHONY:        install clean depend all check everything \
        !            96:        installpythonmodule
        !            97: #      validateminixml validateminiwget
        !            98: 
        !            99: all:   $(LIBRARY) $(EXECUTABLES)
        !           100: 
        !           101: check: validateminixml validateminiwget
        !           102: 
        !           103: everything:    all $(EXECUTABLES_ADDTESTS)
        !           104: 
        !           105: pythonmodule:  $(LIBRARY) miniupnpcmodule.c setup.py
        !           106:        python setup.py build
        !           107:        touch $@
        !           108: 
        !           109: installpythonmodule:   pythonmodule
        !           110:        python setup.py install
        !           111: 
        !           112: validateminixml:       minixmlvalid
        !           113:        @echo "minixml validation test"
        !           114:        ./minixmlvalid
        !           115:        touch $@
        !           116: 
        !           117: validateminiwget:      testminiwget minihttptestserver testminiwget.sh
        !           118:        @echo "miniwget validation test"
        !           119:        ./testminiwget.sh
        !           120:        touch $@
        !           121: 
        !           122: clean:
        !           123:        $(RM) $(LIBRARY) $(SHAREDLIBRARY) $(EXECUTABLES) $(OBJS) miniupnpcstrings.h
        !           124:        # clean python stuff
        !           125:        $(RM) pythonmodule validateminixml
        !           126:        $(RM) -r build/ dist/
        !           127:        #python setup.py clean
        !           128: 
        !           129: install:       $(FILESTOINSTALL)
        !           130:        $(INSTALL) -d $(INSTALLDIRINC)
        !           131:        $(INSTALL) -m 644 $(HEADERS) $(INSTALLDIRINC)
        !           132:        $(INSTALL) -d $(INSTALLDIRLIB)
        !           133:        $(INSTALL) -m 644 $(LIBRARY) $(INSTALLDIRLIB)
        !           134: ifneq ($(OS), AmigaOS)
        !           135:        $(INSTALL) -m 644 $(SHAREDLIBRARY) $(INSTALLDIRLIB)/$(SONAME)
        !           136:        ln -fs $(SONAME) $(INSTALLDIRLIB)/$(SHAREDLIBRARY)
        !           137: endif
        !           138:        $(INSTALL) -d $(INSTALLDIRBIN)
        !           139: ifeq ($(OS), AmigaOS)
        !           140:        $(INSTALL) -m 755 upnpc-static $(INSTALLDIRBIN)/upnpc
        !           141: else
        !           142:        $(INSTALL) -m 755 upnpc-shared $(INSTALLDIRBIN)/upnpc
        !           143: endif
        !           144:        $(INSTALL) -m 755 external-ip.sh $(INSTALLDIRBIN)/external-ip
        !           145: 
        !           146: cleaninstall:
        !           147:        $(RM) -r $(INSTALLDIRINC)
        !           148:        $(RM) $(INSTALLDIRLIB)/$(LIBRARY)
        !           149:        $(RM) $(INSTALLDIRLIB)/$(SHAREDLIBRARY)
        !           150: 
        !           151: depend:
        !           152:        makedepend -Y -- $(CFLAGS) -- $(SRCS) 2>/dev/null
        !           153: 
        !           154: $(LIBRARY):    $(LIBOBJS)
        !           155:        $(AR) crs $@ $?
        !           156: 
        !           157: $(SHAREDLIBRARY):      $(LIBOBJS)
        !           158: ifeq ($(OS), Darwin)
        !           159:        $(CC) -dynamiclib $(LDFLAGS) -Wl,-install_name,$(SONAME) -o $@ $^ 
        !           160: else
        !           161:        $(CC) -shared $(LDFLAGS) -Wl,-soname,$(SONAME) -o $@ $^
        !           162: endif
        !           163: 
        !           164: upnpc-static:  upnpc.o $(LIBRARY) $(LDLIBS)
        !           165:        $(CC) $(LDFLAGS) -o $@ $^
        !           166: 
        !           167: upnpc-shared:  upnpc.o $(SHAREDLIBRARY) $(LDLIBS)
        !           168:        $(CC) $(LDFLAGS) -o $@ $^
        !           169: 
        !           170: testminixml:   $(TESTMINIXMLOBJS)
        !           171: 
        !           172: testminiwget:  $(TESTMINIWGETOBJS)
        !           173: 
        !           174: minixmlvalid:  minixml.o minixmlvalid.o
        !           175: 
        !           176: testupnpreplyparse:    $(TESTUPNPREPLYPARSE)
        !           177: 
        !           178: testigddescparse:      $(TESTIGDDESCPARSE)
        !           179: 
        !           180: miniupnpcstrings.h:    miniupnpcstrings.h.in updateminiupnpcstrings.sh
        !           181:        $(SH) updateminiupnpcstrings.sh
        !           182: 
        !           183: jar:   $(SHAREDLIBRARY) 
        !           184:        $(JAVA) -jar $(JNAERATOR) -library miniupnpc miniupnpc.h declspec.h upnpcommands.h upnpreplyparse.h igd_desc_parse.h miniwget.h upnperrors.h $(SHAREDLIBRARY) -package fr.free.miniupnp -o . -jar java/miniupnpc_$(OS).jar -v
        !           185: 
        !           186: minihttptestserver:    minihttptestserver.o
        !           187: 
        !           188: # DO NOT DELETE THIS LINE -- make depend depends on it.
        !           189: 
        !           190: igd_desc_parse.o: igd_desc_parse.h
        !           191: miniupnpc.o: miniupnpc.h declspec.h igd_desc_parse.h minissdpc.h miniwget.h
        !           192: miniupnpc.o: minisoap.h minixml.h upnpcommands.h upnpreplyparse.h
        !           193: miniupnpc.o: portlistingparse.h miniupnpctypes.h connecthostport.h
        !           194: miniupnpc.o: receivedata.h
        !           195: minixml.o: minixml.h
        !           196: minisoap.o: minisoap.h miniupnpcstrings.h
        !           197: miniwget.o: miniupnpcstrings.h miniwget.h declspec.h connecthostport.h
        !           198: miniwget.o: receivedata.h
        !           199: upnpc.o: miniwget.h declspec.h miniupnpc.h igd_desc_parse.h upnpcommands.h
        !           200: upnpc.o: upnpreplyparse.h portlistingparse.h miniupnpctypes.h upnperrors.h
        !           201: upnpcommands.o: upnpcommands.h upnpreplyparse.h portlistingparse.h declspec.h
        !           202: upnpcommands.o: miniupnpctypes.h miniupnpc.h igd_desc_parse.h
        !           203: upnpreplyparse.o: upnpreplyparse.h minixml.h
        !           204: testminixml.o: minixml.h igd_desc_parse.h
        !           205: minixmlvalid.o: minixml.h
        !           206: testupnpreplyparse.o: upnpreplyparse.h
        !           207: minissdpc.o: minissdpc.h miniupnpc.h declspec.h igd_desc_parse.h codelength.h
        !           208: upnperrors.o: upnperrors.h declspec.h upnpcommands.h upnpreplyparse.h
        !           209: upnperrors.o: portlistingparse.h miniupnpctypes.h miniupnpc.h
        !           210: upnperrors.o: igd_desc_parse.h
        !           211: testigddescparse.o: igd_desc_parse.h minixml.h miniupnpc.h declspec.h
        !           212: testminiwget.o: miniwget.h declspec.h
        !           213: connecthostport.o: connecthostport.h
        !           214: receivedata.o: receivedata.h

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>