source: rtems-libbsd/dhcpcd/Makefile @ 338f300

55-freebsd-126-freebsd-12
Last change on this file since 338f300 was f2ed769, checked in by Sebastian Huber <sebastian.huber@…>, on 01/30/14 at 12:29:46

DHCPCD(8): Import

Import DHCPCD(8) from:

http://roy.marples.name/projects/dhcpcd/

The upstream sources can be obtained via:

fossil clone http://roy.marples.name/projects/dhcpcd

The imported version is 2014-01-29 19:46:44 [6b209507bb].

  • Property mode set to 100644
File size: 5.9 KB
Line 
1# dhcpcd Makefile
2
3PROG=           dhcpcd
4SRCS=           common.c control.c dhcpcd.c duid.c eloop.c
5SRCS+=          if-options.c if-pref.c net.c script.c
6SRCS+=          dhcp-common.c
7
8CFLAGS?=        -O2
9CSTD?=          c99
10MKDIRS=
11include config.mk
12CFLAGS+=        -std=${CSTD}
13
14SRCS+=          ${DHCPCD_SRCS}
15
16.PATH: ./crypt
17
18VPATH=  . ./crypt
19
20CPPFLAGS+=      -I./crypt
21SRCS+=          auth.c hmac_md5.c ${MD5_SRC}
22
23OBJS+=          ${SRCS:.c=.o} ${COMPAT_SRCS:.c=.o}
24
25SCRIPT=         ${LIBEXECDIR}/dhcpcd-run-hooks
26HOOKDIR=        ${LIBEXECDIR}/dhcpcd-hooks
27
28MAN5=           dhcpcd.conf.5
29MAN8=           dhcpcd.8 dhcpcd-run-hooks.8
30CLEANFILES=     dhcpcd.conf.5 dhcpcd.8 dhcpcd-run-hooks.8
31
32SCRIPTS=        dhcpcd-run-hooks
33SCRIPTSDIR=     ${LIBEXECDIR}
34CLEANFILES+=    dhcpcd-run-hooks
35CLEANFILES+=    .depend
36
37FILES=          dhcpcd.conf
38FILESDIR=       ${SYSCONFDIR}
39
40SUBDIRS=        dhcpcd-hooks ${MKDIRS}
41
42SED_RUNDIR=             -e 's:@RUNDIR@:${RUNDIR}:g'
43SED_DBDIR=              -e 's:@DBDIR@:${DBDIR}:g'
44SED_LIBDIR=             -e 's:@LIBDIR@:${LIBDIR}:g'
45SED_HOOKDIR=            -e 's:@HOOKDIR@:${HOOKDIR}:g'
46SED_SERVICEEXISTS=      -e 's:@SERVICEEXISTS@:${SERVICEEXISTS}:g'
47SED_SERVICECMD=         -e 's:@SERVICECMD@:${SERVICECMD}:g'
48SED_SERVICESTATUS=      -e 's:@SERVICESTATUS@:${SERVICESTATUS}:g'
49SED_SCRIPT=             -e 's:@SCRIPT@:${SCRIPT}:g'
50SED_SYS=                -e 's:@SYSCONFDIR@:${SYSCONFDIR}:g'
51
52_DEPEND_SH=     test -e .depend && echo ".depend" || echo ""
53_DEPEND!=       ${_DEPEND_SH}
54DEPEND=         ${_DEPEND}$(shell ${_DEPEND_SH})
55
56_VERSION_SH=    sed -n 's/\#define VERSION[[:space:]]*"\(.*\)".*/\1/p' defs.h
57_VERSION!=      ${_VERSION_SH}
58VERSION=        ${_VERSION}$(shell ${_VERSION_SH})
59
60FOSSILID?=      current
61
62DISTPREFIX?=    ${PROG}-${VERSION}
63DISTFILEGZ?=    ${DISTPREFIX}.tar.gz
64DISTFILE?=      ${DISTPREFIX}.tar.bz2
65
66HOST_SH?=       /bin/sh
67
68CLEANFILES+=    *.tar.bz2
69
70.PHONY:         import import-bsd dev test
71
72.SUFFIXES:      .in
73
74.in:
75        ${SED} ${SED_RUNDIR} ${SED_DBDIR} ${SED_LIBDIR} ${SED_HOOKDIR} \
76                ${SED_SYS} ${SED_SCRIPT} \
77                ${SED_SERVICEEXISTS} ${SED_SERVICECMD} ${SED_SERVICESTATUS} \
78                $< > $@
79
80all: config.h ${PROG} ${SCRIPTS} ${MAN5} ${MAN8}
81        for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
82
83dev:
84        cd dev && ${MAKE}
85
86.c.o:
87        ${CC} ${CFLAGS} ${CPPFLAGS} -c $< -o $@
88
89CLEANFILES+=    dhcpcd-embedded.h dhcpcd-embedded.c
90
91dhcpcd-embedded.h: genembedh dhcpcd-definitions.conf dhcpcd-embedded.h.in
92        ${HOST_SH} ${.ALLSRC} $^ > $@
93
94dhcpcd-embedded.c: genembedc dhcpcd-definitions.conf
95        ${HOST_SH} ${.ALLSRC} $^ > $@
96
97if-options.c: dhcpcd-embedded.h
98
99.depend: ${SRCS} ${COMPAT_SRCS}
100        ${CC} ${CPPFLAGS} -MM ${SRCS} ${COMPAT_SRCS} > .depend
101
102depend: .depend
103
104${PROG}: ${DEPEND} ${OBJS}
105        ${CC} ${LDFLAGS} -o $@ ${OBJS} ${LDADD}
106
107test:
108        cd $@; ${MAKE} $@; ./$@
109
110_embeddedinstall: dhcpcd-definitions.conf
111        ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
112        ${INSTALL} -m ${CONFMODE} dhcpcd-definitions.conf ${DESTDIR}${SCRIPTSDIR}
113
114_proginstall: ${PROG}
115        ${INSTALL} -d ${DESTDIR}${SBINDIR}
116        ${INSTALL} -m ${BINMODE} ${PROG} ${DESTDIR}${SBINDIR}
117        ${INSTALL} -d ${DESTDIR}${DBDIR}
118
119_scriptsinstall: ${SCRIPTS}
120        ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
121        ${INSTALL} -m ${BINMODE} ${SCRIPTS} ${DESTDIR}${SCRIPTSDIR}
122
123proginstall: _proginstall _scriptsinstall ${EMBEDDEDINSTALL}
124        for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
125
126_maninstall: ${MAN5} ${MAN8}
127        ${INSTALL} -d ${DESTDIR}${MANDIR}/man5
128        ${INSTALL} -m ${MANMODE} ${MAN5} ${DESTDIR}${MANDIR}/man5
129        ${INSTALL} -d ${DESTDIR}${MANDIR}/man8
130        ${INSTALL} -m ${MANMODE} ${MAN8} ${DESTDIR}${MANDIR}/man8
131
132_confinstall:
133        ${INSTALL} -d ${DESTDIR}${SYSCONFDIR}
134        test -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.conf || \
135                ${INSTALL} -m ${CONFMODE} dhcpcd.conf ${DESTDIR}${SYSCONFDIR}
136
137install: proginstall _maninstall _confinstall
138
139clean:
140        rm -f ${OBJS} ${PROG} ${PROG}.core ${CLEANFILES}
141        for x in ${SUBDIRS} test; do cd $$x; ${MAKE} $@; cd ..; done
142
143distclean: clean
144        rm -f .depend config.h config.mk
145
146dist:
147        fossil tarball --name ${DISTPREFIX} ${FOSSILID} ${DISTFILEGZ}
148        gunzip -c ${DISTFILEGZ} | bzip2 >${DISTFILE}
149        rm ${DISTFILEGZ}
150
151import: ${SRCS}
152        rm -rf /tmp/${DISTPREFIX}
153        ${INSTALL} -d /tmp/${DISTPREFIX}
154        cp ${SRCS} dhcpcd.conf dhcpcd-definitions.conf *.in /tmp/${DISTPREFIX}
155        cp $$(${CC} ${CPPFLAGS} -MM ${SRCS} | \
156                sed -e 's/^.*\.c //g' -e 's/.*\.c$$//g' -e 's/\\//g' | \
157                tr ' ' '\n' | \
158                sed -e '/^compat\//d' | \
159                sort -u) /tmp/${DISTPREFIX}
160        if test -n "${COMPAT_SRCS}"; then \
161                ${INSTALL} -d /tmp/${DISTPREFIX}/compat; \
162                cp ${COMPAT_SRCS} /tmp/${DISTPREFIX}/compat; \
163                cp $$(${CC} ${CPPFLAGS} -MM ${COMPAT_SRCS} | \
164                        sed -e 's/^.*c //g' -e 's/.*\.c$$//g' -e 's/\\//g' | \
165                        tr ' ' '\n' | \
166                        sort -u) /tmp/${DISTPREFIX}/compat; \
167        fi;
168        if test -n "${IMPORT_RCSID}"; then \
169                for x in \
170                    /tmp/${DISTPREFIX}/*.c \
171                    /tmp/${DISTPREFIX}/compat/*.c \
172                ; do \
173                        if test -e "$$x"; then \
174                                printf "${IMPORT_RCSID}\n\n" >"$$x".new; \
175                                cat "$$x" >>"$$x".new; \
176                                mv "$$x".new "$$x"; \
177                        fi; \
178                done; \
179        fi;
180        if test -n "${IMPORT_HID}"; then \
181                for x in \
182                    /tmp/${DISTPREFIX}/*.h \
183                    /tmp/${DISTPREFIX}/compat/*.h \
184                ; do \
185                        if test -e "$$x"; then \
186                                printf "${IMPORT_HID}\n\n" >"$$x".new; \
187                                cat "$$x" >>"$$x".new; \
188                                mv "$$x".new "$$x"; \
189                        fi; \
190                done; \
191        fi;
192        if test -n "${IMPORT_MANID}"; then \
193                for x in \
194                    /tmp/${DISTPREFIX}/dhcpcd.8.in \
195                    /tmp/${DISTPREFIX}/dhcpcd-run-hooks.8.in \
196                    /tmp/${DISTPREFIX}/dhcpcd.conf.5.in \
197                ; do \
198                        if test -e "$$x"; then \
199                                printf "${IMPORT_MANID}\n" >"$$x".new; \
200                                cat "$$x" >>"$$x".new; \
201                                mv "$$x".new "$$x"; \
202                        fi; \
203                done; \
204        fi;
205        if test -n "${IMPORT_SHID}"; then \
206                for x in \
207                    /tmp/${DISTPREFIX}/dhcpcd-run-hooks.in \
208                    /tmp/${DISTPREFIX}/dhcpcd.conf \
209                    /tmp/${DISTPREFIX}/dhcpcd-definitions.conf \
210                ; do \
211                        if test -e "$$x"; then \
212                                if test "$$(sed -ne 1p $$x)" = "#!/bin/sh" \
213                                ; then \
214                                        echo "#!/bin/sh" > "$$x".new; \
215                                        printf "${IMPORT_SHID}\n" >>"$$x".new; \
216                                        echo "" >>"$$x".new; \
217                                        sed 1d "$$x" >>"$$x".new; \
218                                else \
219                                        printf "${IMPORT_SHID}\n" >>"$$x".new; \
220                                        echo "" >>"$$x".new; \
221                                        cat "$$x" >>"$$x".new; \
222                                fi; \
223                                mv "$$x".new "$$x"; \
224                        fi; \
225                done; \
226        fi;
227        cd dhcpcd-hooks; ${MAKE} DISTPREFIX=${DISTPREFIX} $@
228
229include Makefile.inc
Note: See TracBrowser for help on using the repository browser.