# otpcli - command-line interface for HOTP and TOTP
#
# Written in 2020 by Lucas
#
# To the extent possible under law, the author(s) have dedicated all
# copyright and related and neighboring rights to this software to the
# public domain worldwide. This software is distributed without any
# warranty.
#
# You should have received a copy of the CC0 Public Domain Dedication
# along with this software. If not, see
# <http://creativecommons.org/publicdomain/zero/1.0/>.
.POSIX:
.SUFFIXES:
.SUFFIXES: .c .o

P =	otpcli
V =	0.0

HDR =		err.h otp.h
OBJ =		cli.o err.o otp.o
SRC =		${OBJ:.o=.c}
DIST_FILES =	COPYING Makefile ${HDR} ${SRC}

all: otpcli

${OBJ}: ${HDR}

otpcli: ${OBJ}
	${CC} ${LDFLAGS} -o $@ ${OBJ} -lcrypto

clean:
	rm -f otpcli ${OBJ} ${P}-${V}.tgz

test: all run-tests.sh
	sh ./run-tests.sh

dist: clean
	pax -w -s '#^#${P}-${V}/#' ${DIST_FILES} | gzip >${P}-${V}.tgz

install: all
	mkdir -p ${PREFIX}/bin
	cp -f ${BIN} ${PREFIX}/bin
	cd ${PREFIX}/bin && chmod 555 ${BIN}

uninstall:
	cd ${PREFIX}/bin && rm -f ${BIN}