#####################################################
# Compilation parameters
#####################################################

#Define your C compiler.
CC = gcc
#CC = cc

# Define your optimization flags.
OPTS = -O2
# Warnings
WFLAGS =
# WFLAGS = -Wall -Wextra -Wmissing-prototypes

# Define where you want programs to be installed.
PREFIX = /usr/local

#If you compile (with gcc?) under DOS, you want a .exe extension
#Otherwise, you don't.
#EXTENSION=.exe

#####################################################
# Nothing under this line should need to be changed.
#####################################################

VERSION = 2.3
DOSVER = 2_3
DISTNAME = zcode-patch-$(VERSION)
ZIPNAME = zpat-$(DOSVER).zip

BINA = zcdiff
BINB = zcpatch
BINAX = $(BINA)$(EXTENSION)
BINBX = $(BINB)$(EXTENSION)

BINS = $(BINA) $(BINB)

CFLAGS = $(OPTS) $(WFLAGS)

all: $(BINS)
.PHONY: all install uninstall clean distclean dist help

BINA: $(BINA).c
	$(CC) $(CFLAGS) -o $(BINAX) $(BINA).c 

BINB: $(BINB).c
	$(CC) $(CFLAGS) -o $(BINBX) $(BINB).c

install: $(BINS)
	mkdir -m 755 -p $(PREFIX)/bin
	mkdir -m 755 -p $(PREFIX)/share/doc/$(DISTNAME)
	install -c -m 755 $(BINAX) $(PREFIX)/bin
	install -c -m 755 $(BINBX) $(PREFIX)/bin
	install -c -m 644 ChangeLog $(PREFIX)/share/doc/$(DISTNAME)
	install -c -m 644 README.txt $(PREFIX)/share/doc/$(DISTNAME)

uninstall:
	rm -f $(PREFIX)/bin/$(BINAX)
	rm -f $(PREFIX)/bin/$(BINBX)
	rm -fr $(PREFIX)/share/doc/$(DISTNAME)

clean:
	rm -f $(BINAX)
	rm -f $(BINBX)

distclean: clean
	rm -f *~

dist: distclean
	cd .. ; rm -f $(ZIPNAME) ; zip -r $(ZIPNAME) $(DISTNAME)

help:
	@echo
	@echo "Targets:"
	@echo "    all"
	@echo "    clean"
	@echo "    install"
	@echo "    uninstall"
	@echo "    dist"
	@echo
