# Makefile for looptest
#
# @(#)$Id: ba95fe48c06717f4ef8ae72f9526fd6d491dbc61 $
#

#
# Choose where to install the looptest binary and manual page.
#
DESTDIR?=
PREFIX?=	/usr/local
BINDIR?=	$(PREFIX)/bin
MANDIR?=	$(PREFIX)/man/man1
BINMODE=	-m 0555
MANMODE=	-m 0444

INSTALL?=	/usr/bin/install

BIN=		looptest
MAN=		$(BIN).1.out
OBJ=		$(BIN).o
SRC=		$(BIN).c

#CPPFLAGS=
#CFLAGS+=	-g
CFLAGS+=	-std=c99 -pedantic -Wall -Wextra
#LDFLAGS+=	-static

LT_DATE=	January 15, 2018
LT_VERSION=	$(BIN)-current

SEDSUB=	-e 's|@LT_DATE@|$(LT_DATE)|' -e 's|@LT_VERSION@|$(LT_VERSION)|'

BINDEF=	-DLT_VERSION='"$(LT_VERSION)"'

.SUFFIXES: .1 .1.out .c .o

.1.1.out:
	sed $(SEDSUB) <$< >$@

.c.o:
	$(CC) -c $(CFLAGS) $(CPPFLAGS) $(BINDEF) $<

all: $(BIN) $(MAN)

$(BIN): $(OBJ)
	$(CC) $(LDFLAGS) -o $(BIN) $(OBJ) $(LIBS)

$(OBJ): $(SRC)

DESTBINDIR=	$(DESTDIR)$(BINDIR)
DESTMANDIR=	$(DESTDIR)$(MANDIR)
install: all
	test -d $(DESTBINDIR) || { umask 0022 ; mkdir -p $(DESTBINDIR) ; }
	test -d $(DESTMANDIR) || { umask 0022 ; mkdir -p $(DESTMANDIR) ; }
	$(INSTALL) -c -s $(BINMODE) $(BIN) $(DESTBINDIR)
	$(INSTALL) -c    $(MANMODE) $(MAN) $(DESTMANDIR)/$(BIN).1

clean-obj:
	rm -f $(OBJ)

clean: clean-obj
	rm -f $(BIN) $(MAN)
