This makes the toplevel directory more manageable.
config.log
# Ignore object files
+.depend
*.o
*.So
*.so
-# dhcpcd Makefile
+SUBDIRS= src dhcpcd-hooks
-PROG= dhcpcd
-SRCS= common.c control.c dhcpcd.c duid.c eloop.c
-SRCS+= if.c if-options.c sa.c route.c
-SRCS+= dhcp-common.c script.c
-
-CFLAGS?= -O2
-MKDIRS=
-
-TOP?= .
-include ${TOP}/iconfig.mk
-
-CSTD?= c99
-CFLAGS+= -std=${CSTD}
-CPPFLAGS+= -I./crypt
-
-SRCS+= ${DHCPCD_SRCS}
-DHCPCD_DEFS?= dhcpcd-definitions.conf
-
-OBJS+= ${SRCS:.c=.o} ${CRYPT_SRCS:.c=.o} ${COMPAT_SRCS:.c=.o}
-
-SCRIPT= ${LIBEXECDIR}/dhcpcd-run-hooks
-HOOKDIR= ${LIBEXECDIR}/dhcpcd-hooks
-
-MAN5= dhcpcd.conf.5
-MAN8= dhcpcd.8 dhcpcd-run-hooks.8
-CLEANFILES= dhcpcd.conf.5 dhcpcd.8 dhcpcd-run-hooks.8
-
-SCRIPTS= dhcpcd-run-hooks
-SCRIPTSDIR= ${LIBEXECDIR}
-CLEANFILES+= dhcpcd-run-hooks
-
-FILES= dhcpcd.conf
-FILESDIR= ${SYSCONFDIR}
-
-SUBDIRS= dhcpcd-hooks ${MKDIRS}
-
-SED_RUNDIR= -e 's:@RUNDIR@:${RUNDIR}:g'
-SED_DBDIR= -e 's:@DBDIR@:${DBDIR}:g'
-SED_LIBDIR= -e 's:@LIBDIR@:${LIBDIR}:g'
-SED_DATADIR= -e 's:@DATADIR@:${DATADIR}:g'
-SED_HOOKDIR= -e 's:@HOOKDIR@:${HOOKDIR}:g'
-SED_SERVICEEXISTS= -e 's:@SERVICEEXISTS@:${SERVICEEXISTS}:g'
-SED_SERVICECMD= -e 's:@SERVICECMD@:${SERVICECMD}:g'
-SED_SERVICESTATUS= -e 's:@SERVICESTATUS@:${SERVICESTATUS}:g'
-SED_STATUSARG= -e 's:@STATUSARG@:${STATUSARG}:g'
-SED_SCRIPT= -e 's:@SCRIPT@:${SCRIPT}:g'
-SED_SYS= -e 's:@SYSCONFDIR@:${SYSCONFDIR}:g'
-
-DEPEND!= test -e .depend && echo ".depend" || echo ""
-VERSION!= sed -n 's/\#define VERSION[[:space:]]*"\(.*\)".*/\1/p' defs.h
+VERSION!= sed -n 's/\#define VERSION[[:space:]]*"\(.*\)".*/\1/p' src/defs.h
FOSSILID?= current
CLEANFILES+= *.tar.xz
-.PHONY: import import-bsd dev test
+.PHONY: import import-bsd test
.SUFFIXES: .in
-.in: Makefile config.mk
- ${SED} ${SED_RUNDIR} ${SED_DBDIR} ${SED_LIBDIR} ${SED_HOOKDIR} \
- ${SED_SYS} ${SED_SCRIPT} ${SED_DATADIR} \
- ${SED_SERVICEEXISTS} ${SED_SERVICECMD} ${SED_SERVICESTATUS} \
- ${SED_STATUSARG} \
- $< > $@
-
-all: config.h ${PROG} ${SCRIPTS} ${MAN5} ${MAN8}
+all: config.h
for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
-dev:
- cd dev && ${MAKE}
-
-.c.o: Makefile config.mk
- ${CC} ${CFLAGS} ${CPPFLAGS} -c $< -o $@
-
-CLEANFILES+= dhcpcd-embedded.h dhcpcd-embedded.c
-
-dhcpcd-embedded.h: genembedh ${DHCPCD_DEFS} dhcpcd-embedded.h.in
- ${HOST_SH} ${.ALLSRC} $^ > $@
-
-dhcpcd-embedded.c: genembedc ${DHCPCD_DEFS} dhcpcd-embedded.c.in
- ${HOST_SH} ${.ALLSRC} $^ > $@
-
-if-options.c: dhcpcd-embedded.h
-
-.depend: ${SRCS} ${COMPAT_SRCS} ${CRYPT_SRCS}
- ${CC} ${CPPFLAGS} -MM ${SRCS} ${COMPAT_SRCS} ${CRYPT_SRCS} > .depend
-
-depend: .depend
-
-${PROG}: ${DEPEND} ${OBJS}
- ${CC} ${LDFLAGS} -o $@ ${OBJS} ${LDADD}
+depend: config.h
+ for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
test:
cd $@; ${MAKE} $@; ./$@
-_embeddedinstall: ${DHCPCD_DEFS}
- ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
- ${INSTALL} -m ${CONFMODE} ${DHCPCD_DEFS} ${DESTDIR}${SCRIPTSDIR}
-
-_proginstall: ${PROG}
- ${INSTALL} -d ${DESTDIR}${SBINDIR}
- ${INSTALL} -m ${BINMODE} ${PROG} ${DESTDIR}${SBINDIR}
- ${INSTALL} -d ${DESTDIR}${DBDIR}
-
-_scriptsinstall: ${SCRIPTS}
- ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
- ${INSTALL} -m ${BINMODE} ${SCRIPTS} ${DESTDIR}${SCRIPTSDIR}
-
-proginstall: _proginstall _scriptsinstall ${EMBEDDEDINSTALL}
- for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
-
-_maninstall: ${MAN5} ${MAN8}
- ${INSTALL} -d ${DESTDIR}${MANDIR}/man5
- ${INSTALL} -m ${MANMODE} ${MAN5} ${DESTDIR}${MANDIR}/man5
- ${INSTALL} -d ${DESTDIR}${MANDIR}/man8
- ${INSTALL} -m ${MANMODE} ${MAN8} ${DESTDIR}${MANDIR}/man8
-
-_confinstall:
- ${INSTALL} -d ${DESTDIR}${SYSCONFDIR}
- # Install a new default config if not present
- test -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.conf || \
- ${INSTALL} -m ${CONFMODE} dhcpcd.conf ${DESTDIR}${SYSCONFDIR}
- # Attempt to move files from sysconfig to dbdir
- if [ ! -e ${DESTDIR}${DBDIR}/duid -a \
- -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.duid ]; \
- then \
- mv ${DESTDIR}${SYSCONFDIR}/dhcpcd.duid \
- ${DESTDIR}${DBDIR}/duid; \
- fi
- if [ ! -e ${DESTDIR}${DBDIR}/secret -a \
- -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.secret ]; \
- then \
- mv ${DESTDIR}${SYSCONFDIR}/dhcpcd.secret \
- ${DESTDIR}${DBDIR}/secret; \
- fi
- # Move leases to new location
- for lease in ${DESTDIR}${DBDIR}/../dhcpcd-*.lease*; do \
- [ -f "$$lease" ] || continue; \
- newlease=$$(basename "$$lease" | ${SED} -e "s/dhcpcd-//"); \
- mv "$$lease" ${DESTDIR}${DBDIR}/"$$newlease"; \
- done
- # Move RDM monotonic to new location
- if [ ! -e ${DESTDIR}${DBDIR}/rdm_monotonic -a \
- -e ${DESTDIR}${DBDIR}/../dhcpcd-rdm.monotonic ]; \
- then \
- mv ${DESTDIR}${DBDIR}/../dhcpcd-rdm.monotonic \
- ${DESTDIR}${DBDIR}/rdm_monotonic; \
- fi
-
hooks:
cd dhcpcd-hooks; ${MAKE}; cd ..; done
eginstall:
for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
-install: proginstall _maninstall _confinstall eginstall
+install:
+ for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
clean:
- rm -f ${OBJS} ${PROG} ${PROG}.core ${CLEANFILES}
for x in ${SUBDIRS} test; do cd $$x; ${MAKE} $@; cd ..; done
distclean: clean
- rm -f .depend config.h config.mk config.log \
+ rm -f config.h config.mk config.log \
${DISTFILE} ${DISTFILEGZ} ${DISTINFO} ${DISTINFOSIGN}
dist:
+++ /dev/null
-TOP?= ..
-include ${TOP}/GNUmakefile
FILES+= 29-lookup-hostname
FILES+= ${EGHOOKSCRIPTS}
+all: ${HOOKSCRIPTS} ${EGHOOKSCRIPTS}
+
50-ypbind: 50-ypbind.in
${SED} \
-e 's:@YPDOMAIN_DIR@:${YPDOMAIN_DIR}:g' \
-e 's:@YPDOMAIN_SUFFIX@:${YPDOMAIN_SUFFIX}:g' \
50-ypbind.in > $@
-all: ${HOOKSCRIPTS} ${EGHOOKSCRIPTS}
-
clean:
rm -f 50-ypbind
+depend:
+
proginstall: ${HOOKSCRIPTS}
${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
${INSTALL} -m ${NONBINMODE} ${SCRIPTS} ${DESTDIR}${SCRIPTSDIR}
# Luckily it does read GNUmakefile over Makefile so we can work around it
# Nasty hack so that make clean works without configure being run
-TOP?= .
+TOP?= ..
CONFIG_MK?= $(shell test -e ${TOP}/config.mk && \
echo config.mk || echo config-null.mk)
--- /dev/null
+# dhcpcd Makefile
+
+PROG= dhcpcd
+SRCS= common.c control.c dhcpcd.c duid.c eloop.c
+SRCS+= if.c if-options.c sa.c route.c
+SRCS+= dhcp-common.c script.c
+
+CFLAGS?= -O2
+MKDIRS=
+
+TOP?= ..
+include ${TOP}/iconfig.mk
+
+CSTD?= c99
+CFLAGS+= -std=${CSTD}
+CPPFLAGS+= -I${TOP} -I./crypt -I./
+
+SRCS+= ${DHCPCD_SRCS}
+DHCPCD_DEFS?= dhcpcd-definitions.conf
+
+OBJS+= ${SRCS:.c=.o} ${CRYPT_SRCS:.c=.o} ${COMPAT_SRCS:.c=.o}
+
+SCRIPT= ${LIBEXECDIR}/dhcpcd-run-hooks
+HOOKDIR= ${LIBEXECDIR}/dhcpcd-hooks
+
+MAN5= dhcpcd.conf.5
+MAN8= dhcpcd.8 dhcpcd-run-hooks.8
+CLEANFILES= dhcpcd.conf.5 dhcpcd.8 dhcpcd-run-hooks.8
+
+SCRIPTS= dhcpcd-run-hooks
+SCRIPTSDIR= ${LIBEXECDIR}
+CLEANFILES+= dhcpcd-run-hooks
+
+FILES= dhcpcd.conf
+FILESDIR= ${SYSCONFDIR}
+
+SUBDIRS= ${MKDIRS}
+
+SED_RUNDIR= -e 's:@RUNDIR@:${RUNDIR}:g'
+SED_DBDIR= -e 's:@DBDIR@:${DBDIR}:g'
+SED_LIBDIR= -e 's:@LIBDIR@:${LIBDIR}:g'
+SED_DATADIR= -e 's:@DATADIR@:${DATADIR}:g'
+SED_HOOKDIR= -e 's:@HOOKDIR@:${HOOKDIR}:g'
+SED_SERVICEEXISTS= -e 's:@SERVICEEXISTS@:${SERVICEEXISTS}:g'
+SED_SERVICECMD= -e 's:@SERVICECMD@:${SERVICECMD}:g'
+SED_SERVICESTATUS= -e 's:@SERVICESTATUS@:${SERVICESTATUS}:g'
+SED_STATUSARG= -e 's:@STATUSARG@:${STATUSARG}:g'
+SED_SCRIPT= -e 's:@SCRIPT@:${SCRIPT}:g'
+SED_SYS= -e 's:@SYSCONFDIR@:${SYSCONFDIR}:g'
+
+DEPEND!= test -e .depend && echo ".depend" || echo ""
+
+HOST_SH?= /bin/sh
+
+CLEANFILES+= *.tar.xz
+
+.PHONY: import import-bsd dev test
+
+.SUFFIXES: .in
+
+.in: Makefile ${TOP}/config.mk
+ ${SED} ${SED_RUNDIR} ${SED_DBDIR} ${SED_LIBDIR} ${SED_HOOKDIR} \
+ ${SED_SYS} ${SED_SCRIPT} ${SED_DATADIR} \
+ ${SED_SERVICEEXISTS} ${SED_SERVICECMD} ${SED_SERVICESTATUS} \
+ ${SED_STATUSARG} \
+ $< > $@
+
+all: ${TOP}/config.h ${PROG} ${SCRIPTS} ${MAN5} ${MAN8}
+ for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
+
+dev:
+ cd dev && ${MAKE}
+
+.c.o: Makefile ${TOP}/config.mk
+ ${CC} ${CFLAGS} ${CPPFLAGS} -c $< -o $@
+
+CLEANFILES+= dhcpcd-embedded.h dhcpcd-embedded.c
+
+dhcpcd-embedded.h: genembedh ${DHCPCD_DEFS} dhcpcd-embedded.h.in
+ ${HOST_SH} ${.ALLSRC} $^ > $@
+
+dhcpcd-embedded.c: genembedc ${DHCPCD_DEFS} dhcpcd-embedded.c.in
+ ${HOST_SH} ${.ALLSRC} $^ > $@
+
+if-options.c: dhcpcd-embedded.h
+
+.depend: ${SRCS} ${COMPAT_SRCS} ${CRYPT_SRCS}
+ ${CC} ${CPPFLAGS} -MM ${SRCS} ${COMPAT_SRCS} ${CRYPT_SRCS} > .depend
+
+depend: .depend
+
+${PROG}: ${DEPEND} ${OBJS}
+ ${CC} ${LDFLAGS} -o $@ ${OBJS} ${LDADD}
+
+_embeddedinstall: ${DHCPCD_DEFS}
+ ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
+ ${INSTALL} -m ${CONFMODE} ${DHCPCD_DEFS} ${DESTDIR}${SCRIPTSDIR}
+
+_proginstall: ${PROG}
+ ${INSTALL} -d ${DESTDIR}${SBINDIR}
+ ${INSTALL} -m ${BINMODE} ${PROG} ${DESTDIR}${SBINDIR}
+ ${INSTALL} -d ${DESTDIR}${DBDIR}
+
+_scriptsinstall: ${SCRIPTS}
+ ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR}
+ ${INSTALL} -m ${BINMODE} ${SCRIPTS} ${DESTDIR}${SCRIPTSDIR}
+
+proginstall: _proginstall _scriptsinstall ${EMBEDDEDINSTALL}
+ for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
+
+_maninstall: ${MAN5} ${MAN8}
+ ${INSTALL} -d ${DESTDIR}${MANDIR}/man5
+ ${INSTALL} -m ${MANMODE} ${MAN5} ${DESTDIR}${MANDIR}/man5
+ ${INSTALL} -d ${DESTDIR}${MANDIR}/man8
+ ${INSTALL} -m ${MANMODE} ${MAN8} ${DESTDIR}${MANDIR}/man8
+
+_confinstall:
+ ${INSTALL} -d ${DESTDIR}${SYSCONFDIR}
+ # Install a new default config if not present
+ test -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.conf || \
+ ${INSTALL} -m ${CONFMODE} dhcpcd.conf ${DESTDIR}${SYSCONFDIR}
+ # Attempt to move files from sysconfig to dbdir
+ if [ ! -e ${DESTDIR}${DBDIR}/duid -a \
+ -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.duid ]; \
+ then \
+ mv ${DESTDIR}${SYSCONFDIR}/dhcpcd.duid \
+ ${DESTDIR}${DBDIR}/duid; \
+ fi
+ if [ ! -e ${DESTDIR}${DBDIR}/secret -a \
+ -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.secret ]; \
+ then \
+ mv ${DESTDIR}${SYSCONFDIR}/dhcpcd.secret \
+ ${DESTDIR}${DBDIR}/secret; \
+ fi
+ # Move leases to new location
+ for lease in ${DESTDIR}${DBDIR}/../dhcpcd-*.lease*; do \
+ [ -f "$$lease" ] || continue; \
+ newlease=$$(basename "$$lease" | ${SED} -e "s/dhcpcd-//"); \
+ mv "$$lease" ${DESTDIR}${DBDIR}/"$$newlease"; \
+ done
+ # Move RDM monotonic to new location
+ if [ ! -e ${DESTDIR}${DBDIR}/rdm_monotonic -a \
+ -e ${DESTDIR}${DBDIR}/../dhcpcd-rdm.monotonic ]; \
+ then \
+ mv ${DESTDIR}${DBDIR}/../dhcpcd-rdm.monotonic \
+ ${DESTDIR}${DBDIR}/rdm_monotonic; \
+ fi
+
+hooks:
+ cd dhcpcd-hooks; ${MAKE}; cd ..; done
+
+eginstall:
+ for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
+
+install: proginstall _maninstall _confinstall eginstall
+
+clean:
+ rm -f ${OBJS} ${PROG} ${PROG}.core ${CLEANFILES}
+ for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@; cd ..; done
+
+distclean: clean
+ rm -f .depend
+
+include ${TOP}/Makefile.inc
-TOP?= ../
+TOP?= ../../
include ${TOP}/Makefile.inc
include ${TOP}/config.mk
CFLAGS?= -O2
CSTD?= c99
CFLAGS+= -std=${CSTD}
+CPPFLAGS+= -I${TOP} -I${TOP}/src
DEVDIR= ${LIBDIR}/dhcpcd/dev
DSRC= ${DEV_PLUGINS:=.c}
PROG= test
SRCS= test.c
-SRCS+= test_hmac_md5.c ../crypt/hmac_md5.c
+SRCS+= test_hmac_md5.c ${TOP}/src/crypt/hmac_md5.c
CFLAGS?= -O2
CSTD?= c99
CFLAGS+= -std=${CSTD}
-CPPFLAGS+= -I../crypt
+CPPFLAGS+= -I${TOP}/src/crypt
-T_COMPAT_SRCS= ${COMPAT_SRCS:compat/%=../compat/%}
-T_MD5_SRC= ${MD5_SRC:crypt/%=../crypt/%}
+T_COMPAT_SRCS= ${COMPAT_SRCS:compat/%=${TOP}/src/compat/%}
+T_MD5_SRC= ${MD5_SRC:crypt/%=${TOP}/src/crypt/%}
OBJS+= ${SRCS:.c=.o} ${T_COMPAT_SRCS:.c=.o} ${T_MD5_SRC:.c=.o}
.c.o: