#
# General Makefile for PMake. Handles distribution, packaging, etc.
#
# No makemake
#
LOCALS		= Distfile Makefile README common.mk makefile patchlevel.h
SUBDIRS		= doc lib unix src
SUBDIRS		+= customs
NO_DIST_FILES	= pmake doc/pmake.1 \
		  customs/pmake customs/reginfo customs/customs \
		  customs/cctrl customs/importquota customs/logd customs/host \
		  customs/version customs/dependencies.mk snake
NO_DIST_PATTERN	= -name \*.o -o -name \*.a -o -name \*.ln -o -name \*.bak \
		  -o -name RCS -o -name LOCK.make -o -name core -o -name FTPLOG

VERSION		!= awk -f version.awk patchlevel.h

DIRNAME		= /tmp/dirname
EXCLUDE		= /tmp/exclude
ARCHIVE		= /usr/local/ftp/stolcke/pmake-$(VERSION).tar.Z

ERROR		::
	: Please specify something to make...

dist		: $(ARCHIVE)

check-dist	:	.NOEXPORT
	uncompress < $(ARCHIVE) | tar tvf - 

$(DIRNAME)	:	.NOEXPORT
	basename `pwd` > $@

$(EXCLUDE)	: $(DIRNAME) Makefile	.NOEXPORT
	(cd ..; find `cat $(DIRNAME)` \
		\( $(NO_DIST_PATTERN) \) -print ) \
		> $(EXCLUDE)
	for f in $(NO_DIST_FILES); do \
		echo `cat $(DIRNAME)`/$$f >> $(EXCLUDE) ; \
	done
	echo `cat $(DIRNAME)`/src/Makefile >> $(EXCLUDE)
	echo `cat $(DIRNAME)`/$(ARCHIVE) >> $(EXCLUDE)

$(ARCHIVE)	: $(DIRNAME) $(EXCLUDE)	patchlevel.h .NOEXPORT
	(cd ..; tar cofX - $(EXCLUDE) `cat $(DIRNAME)`) | compress > $@

clean		:	.NOEXPORT
	/bin/rm -f $(EXCLUDE) $(DIRNAME)

