use suckless style makefile - sdhcp - simple dhcp client
 (HTM) git clone git://git.codemadness.org/sdhcp
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) LICENSE
       ---
 (DIR) commit 61b1942be50463eb03c55c055df4b8f62a4549e2
 (DIR) parent 0d4e3b57668dbabd501b83f2228d18b0a53598d0
 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
       Date:   Fri, 25 Apr 2014 20:52:34 +0200
       
       use suckless style makefile
       
       - add config.mk,
       - use -ansi and -D_BSD_SOURCE (needed for IFF_*) for CFLAGS.
       
       Signed-off-by: Hiltjo Posthuma <hiltjo@codemadness.org>
       
       Diffstat:
         M Makefile                            |      69 ++++++++++++++++++++++++++-----
         A config.mk                           |      13 +++++++++++++
       
       2 files changed, 71 insertions(+), 11 deletions(-)
       ---
 (DIR) diff --git a/Makefile b/Makefile
       @@ -1,17 +1,64 @@
       -DESTDIR=
       -MANDIR = /usr/share/man
       +include config.mk
        
       -sdhcp: sdhcp.c
       -        $(CC) -O2 -o $@ sdhcp.c -static -Wall -ansi
       +.POSIX:
       +.SUFFIXES: .c .o
        
       -debug: sdhcp.c debug.c
       -        $(CC) -DDEBUG -o sdhcp sdhcp.c -static -O0 -g -Wall -ansi
       +HDR = util.h
       +LIB = \
       +          util/strlcpy.o
        
       -all: sdhcp
       +SRC = sdhcp.c
       +
       +OBJ = $(SRC:.c=.o) $(LIB)
       +BIN = $(SRC:.c=)
       +MAN = $(SRC:.c=.8)
       +
       +all: options binlib
       +
       +options:
       +        @echo sdhcp build options:
       +        @echo "CFLAGS   = ${CFLAGS}"
       +        @echo "LDFLAGS  = ${LDFLAGS}"
       +        @echo "CC       = ${CC}"
       +
       +binlib: util.a
       +        $(MAKE) bin
       +
       +bin: $(BIN)
       +
       +$(OBJ): $(HDR) config.mk
       +
       +.o:
       +        @echo LD $@
       +        @$(LD) -o $@ $< util.a $(LDFLAGS)
       +
       +.c.o:
       +        @echo CC $<
       +        @$(CC) -c -o $@ $< $(CFLAGS)
       +
       +util.a: $(LIB)
       +        @echo AR $@
       +        @$(AR) -r -c $@ $(LIB)
       +        @ranlib $@
        
        install: all
       -        install -s sdhcp $(DESTDIR)/sbin
       -        gzip -c sdhcp.8 > $(DESTDIR)$(MANDIR)/man8/sdhcp.8.gz
       -        
       +        @echo installing executables to $(DESTDIR)$(PREFIX)/sbin
       +        @mkdir -p $(DESTDIR)$(PREFIX)/sbin
       +        @cp -f $(BIN) $(DESTDIR)$(PREFIX)/sbin
       +        @cd $(DESTDIR)$(PREFIX)/sbin && chmod 755 $(BIN)
       +        @echo installing manual pages to $(DESTDIR)$(MANPREFIX)/man8
       +        @mkdir -p $(DESTDIR)$(MANPREFIX)/man8
       +        @for m in $(MAN); do sed "s/VERSION/$(VERSION)/g" < "$$m" > $(DESTDIR)$(MANPREFIX)/man8/"$$m"; done
       +        @cd $(DESTDIR)$(MANPREFIX)/man8 && chmod 644 $(MAN)
       +
       +uninstall:
       +        @echo removing executables from $(DESTDIR)$(PREFIX)/bin
       +        @cd $(DESTDIR)$(PREFIX)/bin && rm -f $(BIN)
       +        @echo removing manual pages from $(DESTDIR)$(MANPREFIX)/man8
       +        @cd $(DESTDIR)$(MANPREFIX)/man8 && rm -f $(MAN)
       +
        clean:
       -        rm -f sdhcp ?*~
       +        @echo cleaning
       +        @rm -f $(BIN) $(OBJ)
       +
       +.PHONY: all options clean install uninstall
 (DIR) diff --git a/config.mk b/config.mk
       @@ -0,0 +1,13 @@
       +# sdhcp version
       +VERSION   = 0.1
       +
       +PREFIX    = /usr/local
       +DESTDIR   =
       +MANPREFIX = $(PREFIX)/share/man
       +
       +#CC       = gcc
       +#CC       = musl-gcc
       +LD        = $(CC)
       +CPPFLAGS  = -D_BSD_SOURCE
       +CFLAGS    = -g -Wall -ansi $(CPPFLAGS)
       +LDFLAGS   = -g