inputs = $(wildcard zones/*)
dbfiles = $(foreach db, $(inputs), db.$(notdir $(db)))
includes = common.inc local.inc

all: mararc $(dbfiles)

clean:
	rm -f zones.txt zones.inc

scrub: clean
	rm -f mararc $(dbfiles)

mararc: mararc.m4 zones.inc
	rm -f $@
	m4 $< > $@
	chmod -w $@

db.%: zones/% serial common.inc local.inc
	m4 $(includes) $< > $@

serial: $(inputs) $(includes)
	[ -f serial ] || echo 0 > serial
	awk '{ print $$0 + 1; }' serial > serial.new
	mv serial.new serial

local.inc:
	touch $@

.INTERMEDIATE: zones.txt
zones.txt: $(dbfiles)
	(for i in $(dbfiles); do echo $$i; done) > $@

zones.inc: zones.txt
	awk -F '\.' '{ print("csv1[\"" $$2 "." $$3 ".\"] = \"" $$0 "\""); }' $< > $@
