# Copyright (c) 2010-2011, Jan Friesse <honzaf@users.sourceforge.net>
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

CFLAGS += -Wall -Wshadow -Wp,-D_FORTIFY_SOURCE=2 -g
PREFIX ?= /usr/local
BINDIR ?= $(PREFIX)/bin
MANDIR ?= $(PREFIX)/share/man

INSTALL_PROGRAM ?= install
MAN_INSTALL_PROGRAM ?= install

PROGRAM_NAME = odhcploc

all: $(PROGRAM_NAME)

$(PROGRAM_NAME): odhcploc.o opt.o
	$(CC) $(CFLAGS) $(LDFLAGS) odhcploc.o opt.o -o $@

odhcploc.o: odhcploc.c odhcploc.h opt.h
	$(CC) -c $(CFLAGS) $< -o $@

opt.o: opt.c opt.h
	$(CC) -c $(CFLAGS) $< -o $@

clean:
	rm -f odhcploc *~ *.o

install: $(PROGRAM_NAME)
	test -z "$(DESTDIR)$(BINDIR)" || mkdir -p "$(DESTDIR)$(BINDIR)"
	$(INSTALL_PROGRAM) -c $< $(DESTDIR)$(BINDIR)
	test -z "$(DESTDIR)$(MANDIR)/man8" || mkdir -p "$(DESTDIR)$(MANDIR)/man8"
	$(MAN_INSTALL_PROGRAM) -c -m 0644 $<.8 $(DESTDIR)$(MANDIR)/man8

uninstall:
	rm -f $(DESTDIR)$(BINDIR)/$(PROGRAM_NAME)
	rm -f $(DESTDIR)$(MANDIR)/man8/$(PROGRAM_NAME).8

install-strip:
	$(MAKE) INSTALL_PROGRAM="$(INSTALL_PROGRAM) -s" install

TAGS:
	ctags *.[ch]

dist:
	git archive --format=tar --prefix="$(PROGRAM_NAME)-`git describe`/" "`git describe`" \
	    AUTHORS COPYING Makefile *.[ch] $(PROGRAM_NAME).8 | gzip -9 > $(PROGRAM_NAME)-`git describe`.tar.gz

installdirs:
	mkdir -p "$(DESTDIR)/bin"

git-tag:
	sed "s/^#define ODHCPLOC_VER.*/#define ODHCPLOC_VER	\"`date '+%Y%m%d'`\"/" -i odhcploc.h
	git commit -m "Change version to `date '+%Y%m%d'`" odhcploc.h
	git tag -a "`date '+%Y%m%d'`" -m "Tag version `date '+%Y%m%d'`"
