#
# Makefile for baresmtp
#
# Bob Eager   May 2016
#
CC?=		clang
#
PRODUCT=	baresmtp
#
SRC=		client.c log.c md5.c md5c.c netio.c smtp.c
HDR=		auth.h log.h md5.h netio.h smtp.h typedefs.h
OBJ =		$(SRC:.c=.o)
#
MAN=		baresmtp.1
#
MISC=		distname
OLD=		old/*
PORTEDITS=	's,/usr/local,%%PREFIX%%,g'
#
DISTNAME!=	./distname $(PRODUCT)
ARCH=		$(DISTNAME)-arch.zip
#
# Compiler flags
#
COMFLAGS	= -Wall
.ifdef DEBUG
CFLAGS+=	-DDEBUG $(COMFLAGS)
.else
CFLAGS+=	-O2 $(COMFLAGS)
.endif
#
#-----------------------------------------------------------------------------
#
all:		$(PRODUCT)
#
$(PRODUCT):	$(OBJ)
.ifdef	PROD
		$(CC) -o $(PRODUCT) $(OBJ) 
		@strip $(PRODUCT)
.else
		$(CC) -o $(PRODUCT) $(OBJ)
.endif
#
depend:
		mkdep $(CFLAGS) $(SRC)
#
distfile:
		@mkdir -p $(DISTNAME)
		@cp -a $(SRC) $(HDR) $(DISTNAME)
		@cp -a $(MAN) Makefile $(DISTNAME)
		@cp -a $(MISC) $(DISTNAME)
		@rm -f $(DISTNAME).zip
		zip -9 -r $(DISTNAME).zip $(DISTNAME)
		@rm -rf $(DISTNAME)
#
clean:
		@rm -f $(OBJ) core
#
clean-all:
		@rm -f $(OBJ) core $(PRODUCT)
#
arch:		$(PRODUCT) $(MISC) $(SRC) $(HDR) $(MISC) Makefile $(OLD)
		@rm -f $(ARCH)
		zip -9 -r $(ARCH) $?
#
# End of makefile for baresmtp
#
