Annotation of embedaddon/miniupnpd/miniupnpc-async/Makefile, revision 1.1
1.1 ! misho 1: # $Id: Makefile,v 1.12 2017/05/26 11:01:37 nanard Exp $
! 2: # MiniUPnP Project
! 3: # http://miniupnp.free.fr/
! 4: # (c) 2005-2017 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 $(CC) -dumpmachine)
! 12:
! 13: CC ?= gcc
! 14: #AR = gar
! 15: CFLAGS = -O0 -g -DDEBUG
! 16: #CFLAGS = -O
! 17: CFLAGS += -fPIC
! 18: CFLAGS += -ansi
! 19: CFLAGS += -Wall -W
! 20: CFLAGS += -D_BSD_SOURCE
! 21: ifeq (, $(findstring darwin, $(OS))$(findstring freebsd, $(OS)))
! 22: #CFLAGS += -D_POSIX_C_SOURCE=200112L
! 23: CFLAGS += -D_XOPEN_SOURCE=600
! 24: endif
! 25: CFLAGS += -DUPNPC_USE_SELECT
! 26: INSTALL = install
! 27:
! 28: #following libs are needed on Solaris
! 29: ifneq (, $(findstring sun, $(OS)))
! 30: LDLIBS += -lsocket -lnsl -lresolv
! 31: CFLAGS += -D__EXTENSIONS__
! 32: endif
! 33:
! 34: # APIVERSION is used to build SONAME
! 35: APIVERSION = 0
! 36:
! 37: SRCS = miniupnpc-async.c parsessdpreply.c \
! 38: upnputils.c igd_desc_parse.c minixml.c \
! 39: upnpreplyparse.c \
! 40: testasync.c
! 41:
! 42: LIBOBJS = miniupnpc-async.o parsessdpreply.o \
! 43: upnputils.o igd_desc_parse.o minixml.o \
! 44: upnpreplyparse.o
! 45:
! 46: OBJS = $(patsubst %.c,%.o,$(SRCS))
! 47:
! 48: # HEADERS to install
! 49: HEADERS = miniupnpc-async.h
! 50: LIBRARY = libminiupnpc-async.a
! 51: SHAREDLIBRARY = libminiupnpc-async.so
! 52: SONAME = $(SHAREDLIBRARY).$(APIVERSION)
! 53: EXECUTABLES = testasync
! 54:
! 55: INSTALLPREFIX ?= $(PREFIX)/usr
! 56: INSTALLDIRINC = $(INSTALLPREFIX)/include/miniupnpc
! 57: INSTALLDIRLIB = $(INSTALLPREFIX)/lib
! 58: INSTALLDIRBIN = $(INSTALLPREFIX)/bin
! 59:
! 60: .PHONY: install clean depend all installpythonmodule
! 61:
! 62: all: $(LIBRARY) $(EXECUTABLES)
! 63:
! 64: check:
! 65: @echo "To be implemented"
! 66:
! 67: pythonmodule: $(LIBRARY) miniupnpcmodule.c setup.py
! 68: python setup.py build
! 69: touch $@
! 70:
! 71: installpythonmodule: pythonmodule
! 72: python setup.py install
! 73:
! 74: clean:
! 75: $(RM) $(LIBRARY) $(SHAREDLIBRARY) $(EXECUTABLES) $(OBJS)
! 76: # clean python stuff
! 77: $(RM) pythonmodule
! 78: $(RM) -r build/ dist/
! 79: #python setup.py clean
! 80:
! 81: install: $(LIBRARY) $(SHAREDLIBRARY)
! 82: $(INSTALL) -d $(INSTALLDIRINC)
! 83: $(INSTALL) -m 644 $(HEADERS) $(INSTALLDIRINC)
! 84: $(INSTALL) -d $(INSTALLDIRLIB)
! 85: $(INSTALL) -m 644 $(LIBRARY) $(INSTALLDIRLIB)
! 86: $(INSTALL) -m 644 $(SHAREDLIBRARY) $(INSTALLDIRLIB)/$(SONAME)
! 87: $(INSTALL) -d $(INSTALLDIRBIN)
! 88: $(INSTALL) -m 755 $(EXECUTABLES) $(INSTALLDIRBIN)
! 89: ln -fs $(SONAME) $(INSTALLDIRLIB)/$(SHAREDLIBRARY)
! 90:
! 91: cleaninstall:
! 92: $(RM) -r $(INSTALLDIRINC)
! 93: $(RM) $(INSTALLDIRLIB)/$(LIBRARY)
! 94: $(RM) $(INSTALLDIRLIB)/$(SHAREDLIBRARY)
! 95:
! 96: depend:
! 97: makedepend -Y -- $(CFLAGS) -- $(SRCS) 2>/dev/null
! 98:
! 99: $(LIBRARY): $(LIBOBJS)
! 100: $(AR) crs $@ $?
! 101:
! 102: $(SHAREDLIBRARY): $(LIBOBJS)
! 103: $(CC) -shared -Wl,-soname,$(SONAME) -o $@ $^
! 104:
! 105: upnpc-static: upnpc.o $(LIBRARY)
! 106: $(CC) -o $@ $^
! 107:
! 108: upnpc-shared: upnpc.o $(SHAREDLIBRARY)
! 109: $(CC) -o $@ $^
! 110:
! 111: testasync: testasync.o libminiupnpc-async.a
! 112: #testasync: testasync.o -lminiupnpc-async
! 113:
! 114: # DO NOT DELETE THIS LINE -- make depend depends on it.
! 115:
! 116: miniupnpc-async.o: miniupnpc-async.h declspec.h parsessdpreply.h upnputils.h
! 117: parsessdpreply.o: parsessdpreply.h
! 118: testasync.o: miniupnpc-async.h declspec.h
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>