1PREFIX = /usr/local 2BINDIR = $(PREFIX)/sbin 3BUILDDIR = $(SRC) 4DESTDIR = 5CFLAGS = -g -std=gnu99 -D_GNU_SOURCE -Wall -Wextra -pedantic $(EXT_CFLAGS) 6LDFLAGS = $(EXT_LDFLAGS) 7LIBS = -Wl,--as-needed -lresolv 8 9INSTALL = install 10SRC = src 11 12top ?= $(CURDIR) 13 14CFLAGS += $(if $(EXT_PREFIX_CLASS),-DEXT_PREFIX_CLASS=$(EXT_PREFIX_CLASS),) 15CFLAGS += $(if $(EXT_CER_ID),-DEXT_CER_ID=$(EXT_CER_ID),) 16 17OBJS := odhcp6c.o dhcpv6.o ra.o script.o md5.o stubs.o 18HDRS := odhcp6c.h ra.h md5.h stubs.h 19 20all: $(BUILDDIR) dummy 21 @cd $(BUILDDIR) && $(MAKE) top="$(top)" -f $(top)/Makefile odhcp6c 22 23clean: 24 rm -f $(BUILDDIR)/*.o $(BUILDDIR)/odhcp6c 25 26install: all install-common 27 28install-common : 29 $(INSTALL) -d $(DESTDIR)$(BINDIR) 30 $(INSTALL) -m 755 $(BUILDDIR)/odhcp6c $(DESTDIR)$(BINDIR) 31 32$(BUILDDIR): 33 mkdir -p $(BUILDDIR) 34 35$(OBJS:.o=.c) $(HDRS): 36 ln -s $(SRC)/$@ . 37 38.c.o: 39 $(CC) $(CFLAGS) -c $< 40 41odhcp6c: $(HDRS) $(OBJS) 42 $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) 43 44.PHONY : all clean install install-common dummy 45