1# Derived from NetBSD's Makefile for dhcpcd 2 3DISTDIR= ${.CURDIR}/../../contrib/dhcpcd 4 5PROG= dhcpcd 6 7SRCDIR= ${DISTDIR}/src 8.PATH: ${SRCDIR} 9CFLAGS+= -DHAVE_CONFIG_H -I${.CURDIR} -I${SRCDIR} -I${DISTDIR} 10SRCS= common.c control.c dhcpcd.c duid.c eloop.c logerr.c 11SRCS+= if.c if-options.c route.c sa.c script.c 12SRCS+= dhcp-common.c dhcpcd-embedded.c 13SRCS+= if-bsd.c 14 15CFLAGS+= -DAUTH 16SRCS+= auth.c 17 18CFLAGS+= -DARP -DINET 19SRCS+= arp.c bpf.c dhcp.c ipv4.c 20CFLAGS+= -DIPV4LL -DARPING 21SRCS+= ipv4ll.c 22 23CFLAGS+= -DINET6 24SRCS+= ipv6.c ipv6nd.c 25CFLAGS+= -DDHCP6 26SRCS+= dhcp6.c 27 28.PATH: ${DISTDIR}/compat 29SRCS+= pidfile.c strtoi.c strtou.c 30.PATH: ${DISTDIR}/compat/crypt 31SRCS+= hmac.c 32 33# Fully convert to openssl/md5.h and openssl/sha2.h 34FLAGS_GROUPS= openssl 35openssl_FLAGS= -I${_SHLIBDIRPREFIX}/usr/include/priv/openssl 36openssl_FLAGS+= -DMD5Init=MD5_Init -DMD5Update=MD5_Update -DMD5Final=MD5_Final 37openssl_FLAGS_FILES= hmac.c ipv6.c 38 39CFLAGS+= ${PRIVATELIB_CFLAGS} 40DPADD= ${LIBCRYPTO} 41LDADD= -lprivate_crypto 42LDFLAGS+= ${PRIVATELIB_LDFLAGS} 43 44# system directories 45_SYSCONFDIR= /etc 46_LIBDIR= /usr/lib 47_LIBEXECDIR= /usr/libexec 48_DBDIR= /var/db/dhcpcd 49_RUNDIR= /var/run 50CFLAGS+= -DSYSCONFDIR='"${_SYSCONFDIR}"' \ 51 -DSBINDIR='"${BINDIR}"' \ 52 -DLIBDIR='"${_LIBDIR}"' \ 53 -DLIBEXECDIR='"${_LIBEXECDIR}"' \ 54 -DDBDIR='"${_DBDIR}"' \ 55 -DRUNDIR='"${_RUNDIR}"' 56 57_DATADIR= /usr/share/examples 58_HOOKDIR= ${_LIBEXECDIR}/dhcpcd-hooks 59_SED_CMDS= -e 's:@SYSCONFDIR@:${_SYSCONFDIR}:g' \ 60 -e 's:@DATADIR@:${_DATADIR}:g' \ 61 -e 's:@DBDIR@:${_DBDIR}:g' \ 62 -e 's:@LIBDIR@:${_LIBDIR}:g' \ 63 -e 's:@RUNDIR@:${_RUNDIR}:g' \ 64 -e 's:@HOOKDIR@:${_HOOKDIR}:g' \ 65 -e 's:@SCRIPT@:${_LIBEXECDIR}/dhcpcd-run-hooks:g' \ 66 -e 's:@SERVICEEXISTS@::g' \ 67 -e 's:@SERVICECMD@::g' \ 68 -e 's:@SERVICESTATUS@::g' \ 69 -e 's:@STATUSARG@::g' \ 70 -e 's:@YPDOMAIN_DIR@::g' \ 71 -e 's:@YPDOMAIN_SUFFIX@::g' 72 73MAN= dhcpcd.conf.5 dhcpcd.8 74.for f in dhcpcd.conf.5 dhcpcd.8 75CLEANFILES+= ${f} 76${f}: ${f}.in 77 sed ${_SED_CMDS} ${SRCDIR}/${f}.in > $@ 78.endfor 79 80# XXX -Wunused-parameter in duid.c, not implemented duid_machineuuid(). 81WARNS?= 3 82 83# NOTE: 84# The configuration file 'dhcpcd.conf' is installed by 'etc/Makefile' 85 86# 87# Hooks 88# 89 90HOOKSRC= ${DISTDIR}/hooks 91.PATH: ${HOOKSRC} 92 93SCRIPTS= dhcpcd-run-hooks 94SCRIPTSDIR= ${_LIBEXECDIR} 95MAN+= dhcpcd-run-hooks.8 96 97FILES= 01-test 02-dump 20-resolv.conf 30-hostname 98FILESDIR= ${_HOOKDIR} 99 100# Example hooks that should not be installed by default 101.for f in 10-wpa_supplicant 15-timezone 29-lookup-hostname 50-ypbind 102FILES+= ${f} 103FILESDIR_${f}= ${_DATADIR}/dhcpcd/hooks 104.endfor 105 106.for f in dhcpcd-run-hooks dhcpcd-run-hooks.8 50-ypbind 107CLEANFILES+= ${f} 108${f}: ${f}.in 109 sed ${_SED_CMDS} ${HOOKSRC}/${f}.in > $@ 110.endfor 111 112.include <bsd.prog.mk> 113