#
# Config options:
#

# Where compiled programs go
BINDIR=/usr/local/bin
# Where perl programs go
SCRIPTBINDIR=/usr/local/bin
# Where perl library goes
LIBDIR=/usr/local/lib

# Where perl lives
PERL=/usr/bin/perl
# A find that supports -iname and -print0
FIND=/usr/bin/find
# An xargs that supports -0
XARGS=/usr/bin/xargs

# Ownership of all installed files
USER=root
GROUP=wheel

# Your compiler
CC=		cc
DEBUG_FLAGS=	-g -Wall
CFLAGS=		-O $(DEBUG_FLAGS) -DVERSION=\"$(VERSION)\"

#
# end of config (you shouldn't need to modify stuff after this line)
#


VERSION=0.10

DO_SUBST= sh ./do_subst.sh PERL="$(PERL)" BINDIR="$(BINDIR)" SCRIPTBINDIR="$(SCRIPTBINDIR)" LIBDIR="$(LIBDIR)" VERSION="$(VERSION)" FIND="$(FIND)" XARGS="$(XARGS)"

INFILES=	regdiff.pl.in regfilter.pl.in reghexprint.pl.in regsort.pl.in \
		regfilterLib.pl.in \
		IniFile.pm.in inicat.pl.in inidiff.pl.in iniedit.pl.in \
		inifilter.pl.in gen-app-changes.pl.in apply-app-changes.pl.in \
		fix-w9x-lnk.pl.in
# All geneated from .in files (removed by make clean)
SCRIPTS=	regdiff.pl regfilter.pl reghexprint.pl regsort.pl \
		inicat.pl inidiff.pl iniedit.pl inifilter.pl \
		gen-app-changes.pl apply-app-changes.pl fix-w9x-lnk.pl
# All geneated from .in files (removed by make clean)
MODULES=	regfilterLib.pl IniFile.pm
HFILES=		misc.h regformat.h registry.h
CFILES=		regedit.c registry.c misc.c
OFILES=		regedit.o registry.o misc.o
DISTFILES=	Makefile README INSTALL COPYING PROJECTS NEWS do_subst.sh \
		$(INFILES) regedit.pod $(CFILES) $(HFILES) mkhtmldoc.sh

all: regedit $(SCRIPTS) $(MODULES)

regedit: $(OFILES)
	$(CC) $(CFLAGS) -o $@ $(OFILES)

install: regedit $(SCRIPTS) $(MODULES)
	test -d $(BINDIR) || { umask 22; mkdir -p $(BINDIR); }
	test -d $(SCRIPTBINDIR) || { umask 22; mkdir -p $(SCRIPTBINDIR); }
	test -d $(LIBDIR) || { umask 22; mkdir -p $(LIBDIR); }
	install -m 755 -o $(USER) -g $(GROUP) -c regedit $(BINDIR)
	install -m 755 -o $(USER) -g $(GROUP) -c regdiff.pl $(SCRIPTBINDIR)/regdiff
	install -m 755 -o $(USER) -g $(GROUP) -c regfilter.pl $(SCRIPTBINDIR)/regfilter
	install -m 755 -o $(USER) -g $(GROUP) -c reghexprint.pl $(SCRIPTBINDIR)/reghexprint
	install -m 755 -o $(USER) -g $(GROUP) -c regsort.pl $(SCRIPTBINDIR)/regsort
	install -m 644 -o $(USER) -g $(GROUP) -c regfilterLib.pl $(LIBDIR)/
	install -m 755 -o $(USER) -g $(GROUP) -c inicat.pl $(SCRIPTBINDIR)/inicat
	install -m 755 -o $(USER) -g $(GROUP) -c inidiff.pl $(SCRIPTBINDIR)/inidiff
	install -m 755 -o $(USER) -g $(GROUP) -c iniedit.pl $(SCRIPTBINDIR)/iniedit
	install -m 644 -o $(USER) -g $(GROUP) -c IniFile.pm $(LIBDIR)/
	install -m 755 -o $(USER) -g $(GROUP) -c gen-app-changes.pl $(SCRIPTBINDIR)/gen-app-changes
	install -m 755 -o $(USER) -g $(GROUP) -c apply-app-changes.pl $(SCRIPTBINDIR)/apply-app-changes
	install -m 755 -o $(USER) -g $(GROUP) -c fix-w9x-lnk.pl $(SCRIPTBINDIR)/fix-w9x-lnk

clean:
	rm -f $(OFILES) regedit $(SCRIPTS) $(MODULES)

tags:	$(CFILES) $(HFILES)
	ctags -wt $(CFILES) $(HFILES)

dist:
	mkdir regutils-$(VERSION)
	cp $(DISTFILES) regutils-$(VERSION)
	sed -e '/#TOAST$$/d' -e 's/^#DIST //' < Makefile > regutils-$(VERSION)/Makefile
	chmod -R a+rX regutils-$(VERSION)
	-chown -R 0.0 regutils-$(VERSION)
	tar zcf regutils-$(VERSION).tar.gz regutils-$(VERSION)

regfilterLib.pl: regfilterLib.pl.in
	$(DO_SUBST) $? $@

regdiff.pl: regdiff.pl.in
	$(DO_SUBST) $? $@

regfilter.pl: regfilter.pl.in
	$(DO_SUBST) $? $@

reghexprint.pl: reghexprint.pl.in
	$(DO_SUBST) $? $@

regsort.pl: regsort.pl.in
	$(DO_SUBST) $? $@

IniFile.pm: IniFile.pm.in
	$(DO_SUBST) $? $@

inicat.pl: inicat.pl.in
	$(DO_SUBST) $? $@

inidiff.pl: inidiff.pl.in
	$(DO_SUBST) $? $@

iniedit.pl: iniedit.pl.in
	$(DO_SUBST) $? $@

inifilter.pl: inifilter.pl.in
	$(DO_SUBST) $? $@

gen-app-changes.pl: gen-app-changes.pl.in
	$(DO_SUBST) $? $@

apply-app-changes.pl: apply-app-changes.pl.in
	$(DO_SUBST) $? $@

fix-w9x-lnk.pl: fix-w9x-lnk.pl.in
	$(DO_SUBST) $? $@
