|
version 1.1.1.1, 2012/02/21 23:16:02
|
version 1.1.1.2, 2012/05/29 12:55:57
|
|
Line 1
|
Line 1
|
| # $Id$ |
# $Id$ |
| # MiniUPnP project |
# MiniUPnP project |
| # http://miniupnp.free.fr/ | # http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/ |
| # Author: Thomas Bernard |
# Author: Thomas Bernard |
| # This Makefile should work for *BSD and SunOS/Solaris | # |
| # Linux users, please use Makefile.linux | # Makefile for miniupnpd (MiniUPnP daemon) |
| CFLAGS ?= -Wall -Os | # |
| #CFLAGS = -Wall -O -g -DDEBUG | # This Makefile should work for *BSD and SunOS/Solaris. |
| | # On Mac OS X, use "bsdmake" to build. |
| | # This Makefile is NOT compatible with GNU Make. |
| | # Linux users, please use Makefile.linux : |
| | # make -f Makefile.linux |
| | |
| | CFLAGS += -pipe -Wall |
| | #CFLAGS = -pipe -Wall -O -g -DDEBUG |
| CC ?= gcc |
CC ?= gcc |
| RM = rm -f |
RM = rm -f |
| MV = mv |
MV = mv |
|
Line 25 FWNAME = ipf
|
Line 32 FWNAME = ipf
|
| |
|
| # better way to find if we are using ipf or pf |
# better way to find if we are using ipf or pf |
| .if $(OSNAME) == "FreeBSD" |
.if $(OSNAME) == "FreeBSD" |
| |
.if defined(/etc/rc.subr) && defined(/etc/rc.conf) |
| FWNAME != . /etc/rc.subr; . /etc/rc.conf; \ |
FWNAME != . /etc/rc.subr; . /etc/rc.conf; \ |
| if checkyesno ipfilter_enable; then \ |
if checkyesno ipfilter_enable; then \ |
| echo "ipf"; else echo "pf"; fi |
echo "ipf"; else echo "pf"; fi |
| .endif |
.endif |
| |
.endif |
| |
|
| .if $(OSNAME) == "NetBSD" |
.if $(OSNAME) == "NetBSD" |
| FWNAME != . /etc/rc.subr; . /etc/rc.conf; \ |
FWNAME != . /etc/rc.subr; . /etc/rc.conf; \ |
|
Line 42 FWNAME != . /etc/rc.subr; . /etc/rc.conf; \
|
Line 51 FWNAME != . /etc/rc.subr; . /etc/rc.conf; \
|
| echo "ipf"; else echo "pf"; fi |
echo "ipf"; else echo "pf"; fi |
| .endif |
.endif |
| |
|
| |
.if $(OSNAME) == "Darwin" |
| |
FWNAME = ipfw |
| |
.endif |
| |
|
| # Solaris specific CFLAGS |
# Solaris specific CFLAGS |
| .if $(OSNAME) == "SunOS" |
.if $(OSNAME) == "SunOS" |
| CFLAGS += -DSOLARIS2=`uname -r | cut -d. -f2` |
CFLAGS += -DSOLARIS2=`uname -r | cut -d. -f2` |
|
Line 55 CFLAGS += -m64 -mcmodel=medlow
|
Line 68 CFLAGS += -m64 -mcmodel=medlow
|
| STDOBJS = miniupnpd.o upnphttp.o upnpdescgen.o upnpsoap.o \ |
STDOBJS = miniupnpd.o upnphttp.o upnpdescgen.o upnpsoap.o \ |
| upnpredirect.o getifaddr.o daemonize.o upnpglobalvars.o \ |
upnpredirect.o getifaddr.o daemonize.o upnpglobalvars.o \ |
| options.o upnppermissions.o minissdp.o natpmp.o \ |
options.o upnppermissions.o minissdp.o natpmp.o \ |
| upnpevents.o | upnpevents.o upnputils.o getconnstatus.o |
| BSDOBJS = bsd/getifstats.o | BSDOBJS = bsd/getifstats.o bsd/ifacewatcher.o |
| SUNOSOBJS = solaris/getifstats.o | SUNOSOBJS = solaris/getifstats.o bsd/ifacewatcher.o |
| | MACOBJS = mac/getifstats.o bsd/ifacewatcher.o |
| PFOBJS = pf/obsdrdr.o |
PFOBJS = pf/obsdrdr.o |
| IPFOBJS = ipf/ipfrdr.o |
IPFOBJS = ipf/ipfrdr.o |
| |
IPFWOBJS = ipfw/ipfwrdr.o |
| MISCOBJS = upnpreplyparse.o minixml.o |
MISCOBJS = upnpreplyparse.o minixml.o |
| |
|
| ALLOBJS = $(STDOBJS) $(MISCOBJS) |
ALLOBJS = $(STDOBJS) $(MISCOBJS) |
| .if $(OSNAME) == "SunOS" |
.if $(OSNAME) == "SunOS" |
| ALLOBJS += $(SUNOSOBJS) |
ALLOBJS += $(SUNOSOBJS) |
| |
TESTGETIFSTATSOBJS = testgetifstats.o solaris/getifstats.o |
| |
.elif $(OSNAME) == "Darwin" |
| |
ALLOBJS += $(MACOBJS) |
| |
TESTGETIFSTATSOBJS = testgetifstats.o mac/getifstats.o |
| .else |
.else |
| ALLOBJS += $(BSDOBJS) |
ALLOBJS += $(BSDOBJS) |
| |
TESTGETIFSTATSOBJS = testgetifstats.o bsd/getifstats.o |
| .endif |
.endif |
| |
|
| .if $(FWNAME) == "pf" |
.if $(FWNAME) == "pf" |
| ALLOBJS += $(PFOBJS) |
ALLOBJS += $(PFOBJS) |
| |
.elif $(FWNAME) == "ipfw" |
| |
ALLOBJS += $(IPFWOBJS) |
| .else |
.else |
| ALLOBJS += $(IPFOBJS) |
ALLOBJS += $(IPFOBJS) |
| .endif |
.endif |
| |
|
| TESTUPNPDESCGENOBJS = testupnpdescgen.o upnpdescgen.o |
TESTUPNPDESCGENOBJS = testupnpdescgen.o upnpdescgen.o |
| .if $(OSNAME) == "SunOS" |
|
| TESTGETIFSTATSOBJS = testgetifstats.o solaris/getifstats.o |
|
| .else |
|
| TESTGETIFSTATSOBJS = testgetifstats.o bsd/getifstats.o |
|
| .endif |
|
| TESTUPNPPERMISSIONSOBJS = testupnppermissions.o upnppermissions.o |
TESTUPNPPERMISSIONSOBJS = testupnppermissions.o upnppermissions.o |
| TESTGETIFADDROBJS = testgetifaddr.o getifaddr.o |
TESTGETIFADDROBJS = testgetifaddr.o getifaddr.o |
| MINIUPNPDCTLOBJS = miniupnpdctl.o |
MINIUPNPDCTLOBJS = miniupnpdctl.o |
|
Line 88 MINIUPNPDCTLOBJS = miniupnpdctl.o
|
Line 105 MINIUPNPDCTLOBJS = miniupnpdctl.o
|
| EXECUTABLES = miniupnpd testupnpdescgen testgetifstats \ |
EXECUTABLES = miniupnpd testupnpdescgen testgetifstats \ |
| testupnppermissions miniupnpdctl \ |
testupnppermissions miniupnpdctl \ |
| testgetifaddr |
testgetifaddr |
| .if $(OSNAME) == "Darwin" |
| | LIBS = |
| | .else |
| LIBS = -lkvm |
LIBS = -lkvm |
| |
.endif |
| .if $(OSNAME) == "SunOS" |
.if $(OSNAME) == "SunOS" |
| LIBS += -lsocket -lnsl -lkstat -lresolv |
LIBS += -lsocket -lnsl -lkstat -lresolv |
| .endif |
.endif |
|
Line 104 INSTALLMANDIR = /usr/share/man
|
Line 124 INSTALLMANDIR = /usr/share/man
|
| all: $(EXECUTABLES) |
all: $(EXECUTABLES) |
| |
|
| clean: |
clean: |
| $(RM) $(STDOBJS) $(BSDOBJS) $(SUNOSOBJS) $(EXECUTABLES) \ | $(RM) $(STDOBJS) $(BSDOBJS) $(SUNOSOBJS) $(MACOBJS) $(EXECUTABLES) \ |
| testupnpdescgen.o \ |
testupnpdescgen.o \ |
| $(MISCOBJS) config.h testgetifstats.o testupnppermissions.o \ |
$(MISCOBJS) config.h testgetifstats.o testupnppermissions.o \ |
| miniupnpdctl.o testgetifaddr.o \ |
miniupnpdctl.o testgetifaddr.o \ |
| $(PFOBJS) $(IPFOBJS) | $(PFOBJS) $(IPFOBJS) $(IPFWOBJS) |
| |
|
| install: miniupnpd genuuid |
install: miniupnpd genuuid |
| $(STRIP) miniupnpd |
$(STRIP) miniupnpd |
|
Line 132 UUID != if which uuidgen 2>&1 > /dev/null; then \
|
Line 152 UUID != if which uuidgen 2>&1 > /dev/null; then \
|
| |
|
| genuuid: |
genuuid: |
| $(MV) miniupnpd.conf miniupnpd.conf.before |
$(MV) miniupnpd.conf miniupnpd.conf.before |
| sed -e "s/^uuid=[-0-9a-f]*/uuid=$(UUID)/" miniupnpd.conf.before > miniupnpd.conf | sed -e "s/^uuid=[-0-9a-fA-F]*/uuid=$(UUID)/" miniupnpd.conf.before > miniupnpd.conf |
| $(RM) miniupnpd.conf.before |
$(RM) miniupnpd.conf.before |
| |
|
| depend: config.h |
depend: config.h |