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