# DO NOT EDIT MAKEFILE; EDIT MAKEFILE.IN INSTEAD
# Makefile.in for mimedefang

# Needed for autoconf to behave properly...
datarootdir=${prefix}/share
srcdir=.
top_srcdir=.

prefix=/usr/local
exec_prefix=${prefix}
sysconfdir=/etc
CONFSUBDIR=/mail
CONFDIR=${sysconfdir}${CONFSUBDIR}
DEFANGUSER=defang
MANDIR=${datarootdir}/man

MINCLUDE=
HAVE_SPAM_ASSASSIN=yes
DEFS=-D_POSIX_PTHREAD_SEMANTICS \
	-DEMBED_PERL -DSAFE_EMBED_PERL \
	 \
	 -DPERL_PATH=\"/usr/bin/perl\" \
	-DMIMEDEFANG_PL=\"$(prefix)/bin/mimedefang.pl\" \
	-DRM=\"/usr/bin/rm\" \
	-DVERSION=\"3.1\" \
	-DSPOOLDIR=\"/var/spool/MIMEDefang\" \
	-DQDIR=\"/var/spool/MD-Quarantine\" \
	-DCONFDIR=\"${CONFDIR}\"

CC=gcc
PERL=/usr/bin/perl
INSTALL=/usr/bin/install -c

CFLAGS=-g -O2 -fPIC -Wall -Wstrict-prototypes
EMBPERLCFLAGS= -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib64/perl5/CORE 
PTHREAD_FLAG=-pthread
EMBPERLOBJS=embperl.o xs_init.o
EMBPERLLDFLAGS=-Wl,--enable-new-dtags -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1  -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib64/perl5/CORE -lperl -lpthread -lresolv -ldl -lm -lcrypt -lutil -lc
EMBPERLLIBS=-lperl
LIBS_WITHOUT_PTHREAD=
LIBS=-lpthread 
PERLINSTALLSITELIB=/usr/local/share/perl5/5.34
PERLINSTALLPRIVLIB=/usr/share/perl5
PERLVENDORPREFIX=/usr
PERLVENDORLIB=/usr/share/perl5/vendor_perl
LDFLAGS=
IP_HEADER=no
SPOOLDIR=/var/spool/MIMEDefang
QDIR=/var/spool/MD-Quarantine
VERSION=3.1

INSTALL_STRIP_FLAG=-s

## NO MORE ./configure substitutions beyond this point!

all: mimedefang mimedefang-multiplexor md-mx-ctrl pod2man

mimedefang-multiplexor: mimedefang-multiplexor.o event.o event_tcp.o drop_privs_nothread.o notifier.o syslog-fac.o utils.o $(EMBPERLOBJS)
	$(CC) $(CFLAGS) -o mimedefang-multiplexor mimedefang-multiplexor.o event.o event_tcp.o drop_privs_nothread.o syslog-fac.o notifier.o utils.o $(EMBPERLOBJS) $(LIBS_WITHOUT_PTHREAD) $(EMBPERLLDFLAGS) $(EMBPERLLIBS)

embperl.o: embperl.c
	$(CC) $(CFLAGS) $(EMBPERLCFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o embperl.o $(srcdir)/embperl.c

xs_init.o: xs_init.c
	$(CC) $(CFLAGS) $(EMBPERLCFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o xs_init.o $(srcdir)/xs_init.c

xs_init.c: embperl.c
	$(PERL) -MExtUtils::Embed -e xsinit -- -o $(srcdir)/xs_init.c

test-embed-perl.o: test-embed-perl.c
	$(CC) $(CFLAGS) $(EMBPERLCFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o test-embed-perl.o $(srcdir)/test-embed-perl.c

te: test-embed-perl.o
	$(CC) $(CFLAGS) -o te test-embed-perl.o $(LIBS_WITHOUT_PTHREAD) $(EMBPERLLDFLAGS) $(EMBPERLLIBS)
rm_r.o: rm_r.c
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o rm_r.o $(srcdir)/rm_r.c

syslog-fac.o: syslog-fac.c
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o syslog-fac.o $(srcdir)/syslog-fac.c

md-mx-ctrl: md-mx-ctrl.o
	$(CC) $(CFLAGS) -o md-mx-ctrl md-mx-ctrl.o $(LIBS_WITHOUT_PTHREAD)

md-mx-ctrl.o: md-mx-ctrl.c
	$(CC) $(CFLAGS) $(DEFS) $(MINCLUDE) -c -o md-mx-ctrl.o $(srcdir)/md-mx-ctrl.c

event_tcp.o: event_tcp.c
	$(CC) $(CFLAGS) $(DEFS) $(MINCLUDE) -c -o event_tcp.o $(srcdir)/event_tcp.c

notifier.o: notifier.c
	$(CC) $(CFLAGS) $(DEFS) $(MINCLUDE) -c -o notifier.o $(srcdir)/notifier.c

drop_privs_nothread.o: drop_privs.c
	$(CC) $(CFLAGS) $(DEFS) $(MINCLUDE) -c -o drop_privs_nothread.o $(srcdir)/drop_privs.c

drop_privs_threaded.o: drop_privs.c
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o drop_privs_threaded.o $(srcdir)/drop_privs.c

event.o: event.c
	$(CC) $(CFLAGS) $(DEFS) $(MINCLUDE) -c -o event.o $(srcdir)/event.c

mimedefang-multiplexor.o: mimedefang-multiplexor.c
	$(CC) $(CFLAGS) $(DEFS) $(MINCLUDE) -c -o mimedefang-multiplexor.o $(srcdir)/mimedefang-multiplexor.c

mimedefang: mimedefang.o drop_privs_threaded.o utils.o rm_r.o syslog-fac.o dynbuf.o milter_cap.o gen_id.o
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) -o mimedefang mimedefang.o drop_privs_threaded.o utils.o rm_r.o syslog-fac.o dynbuf.o milter_cap.o gen_id.o $(LDFLAGS) -lmilter $(LIBS)

mimedefang.o: mimedefang.c mimedefang.h
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o mimedefang.o $(srcdir)/mimedefang.c

utils.o: utils.c mimedefang.h
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o utils.o $(srcdir)/utils.c

milter_cap.o: milter_cap.c mimedefang.h
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o milter_cap.o $(srcdir)/milter_cap.c

dynbuf.o: dynbuf.c dynbuf.h
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o dynbuf.o $(srcdir)/dynbuf.c

gen_id.o: gen_id.c mimedefang.h
	$(CC) $(CFLAGS) $(PTHREAD_FLAG) $(DEFS) $(MINCLUDE) -c -o gen_id.o $(srcdir)/gen_id.c

clean:: FORCE
	rm -f *~ *.o mimedefang mimedefang-multiplexor md-mx-ctrl xs_init.c

pod2man:: script/mimedefang-util.1 lib/manpages


script/mimedefang-util.1: script/mimedefang-util
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=1 --perm_rw=644 \
		--center="MIMEDefang Documentation" \
		--release=$(VERSION) \
		script/mimedefang-util script/mimedefang-util.1

lib/manpages:
	mkdir -p modules/man
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang Documentation" \
		--name="Mail::MIMEDefang" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang.pm modules/man/Mail::MIMEDefang.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Actions Documentation" \
		--name="Mail::MIMEDefang::Actions" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Actions.pm modules/man/Mail::MIMEDefang::Actions.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Antispam Documentation" \
		--name="Mail::MIMEDefang::Antispam" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Antispam.pm modules/man/Mail::MIMEDefang::Antispam.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Antivirus Documentation" \
		--name="Mail::MIMEDefang::Antivirus" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Antivirus.pm modules/man/Mail::MIMEDefang::Antivirus.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::DKIM Documentation" \
		--name="Mail::MIMEDefang::DKIM" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/DKIM.pm modules/man/Mail::MIMEDefang::DKIM.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::DKIM::ARC Documentation" \
		--name="Mail::MIMEDefang::DKIM::ARC" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/DKIM/ARC.pm modules/man/Mail::MIMEDefang::DKIM::ARC.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Authres Documentation" \
		--name="Mail::MIMEDefang::Authres" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Authres.pm modules/man/Mail::MIMEDefang::Authres.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Mail Documentation" \
		--name="Mail::MIMEDefang::Mail" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Mail.pm modules/man/Mail::MIMEDefang::Mail.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::MIME Documentation" \
		--name="Mail::MIMEDefang::MIME" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/MIME.pm modules/man/Mail::MIMEDefang::MIME.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Net Documentation" \
		--name="Mail::MIMEDefang::Net" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Net.pm modules/man/Mail::MIMEDefang::Net.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::RFC2822 Documentation" \
		--name="Mail::MIMEDefang::RFC2822" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/RFC2822.pm modules/man/Mail::MIMEDefang::RFC2822.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Unit Documentation" \
		--name="Mail::MIMEDefang::Unit" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Unit.pm modules/man/Mail::MIMEDefang::Unit.3
	$(PERL) "-MExtUtils::Command::MM" -e pod2man "--" --section=3 --perm_rw=644 \
		--center="Mail::MIMEDefang::Utils Documentation" \
		--name="Mail::MIMEDefang::Utils" \
		--release=$(VERSION) \
		modules/lib/Mail/MIMEDefang/Utils.pm modules/man/Mail::MIMEDefang::Utils.3

distclean:: clean
	rm -f config.log config.status Makefile config.cache config.h mimedefang.pl \
	examples/init-script \
	script/mimedefang-util \
	mimedefang-filter.5 mimedefang-multiplexor.8 mimedefang-protocol.7 \
	mimedefang-notify.7 \
	mimedefang.8 mimedefang.pl.8 md-mx-ctrl.8 watch-mimedefang \
	redhat/mimedefang-init redhat/mimedefang-spec redhat/mimedefang-sysconfig \
	script/mimedefang-util.1 modules/man/*.3

install-redhat: install
	$(INSTALL) -m 755 -d $(DESTDIR)${sysconfdir}/rc.d/init.d
	$(INSTALL) -m 755 -d $(DESTDIR)${sysconfdir}/sysconfig
	$(INSTALL) -m 755 -d $(DESTDIR)${sysconfdir}/logrotate.d
	$(INSTALL) -m 0644 examples/redhat-logrotate-file $(DESTDIR)${sysconfdir}/logrotate.d/mimedefang

	# We install SpamAssassin config file unconditionally for Red Hat...
	$(INSTALL) -m 755 -d $(DESTDIR)${CONFDIR}
	if test -f $(DESTDIR)${CONFDIR}/sa-mimedefang.cf ; then \
		$(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${CONFDIR}/sa-mimedefang.cf.example || exit 1; \
	else \
		$(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${CONFDIR}/sa-mimedefang.cf || exit 1; \
	fi

	$(INSTALL) -m 755 redhat/mimedefang-init $(DESTDIR)${sysconfdir}/rc.d/init.d/mimedefang
	$(INSTALL) -m 644 redhat/mimedefang-sysconfig $(DESTDIR)${sysconfdir}/sysconfig/mimedefang
	$(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${CONFDIR}/mimedefang-filter

install: all
	$(INSTALL) -m 755 -d $(DESTDIR)${CONFDIR}
	-if test "$(IP_HEADER)" = "yes" -a ! -f "$(DESTDIR)${CONFDIR}/mimedefang-ip-key" ; then \
		$(PERL) ./gen-ip-validator.pl > $(DESTDIR)${CONFDIR}/mimedefang-ip-key ;\
		-chmod 600 $(DESTDIR)${CONFDIR}/mimedefang-ip-key > /dev/null 2>&1 ; \
	fi

	if test "$(DEFANGUSER)" != "" ; then \
		if id "$(DEFANGUSER)" > /dev/null 2>&1 ; then \
			chown "$(DEFANGUSER)" $(DESTDIR)${CONFDIR}/mimedefang-ip-key > /dev/null 2>&1 || true; \
			test ! -d $(DESTDIR)$(SPOOLDIR) && $(INSTALL) -m 750 -o $(DEFANGUSER) -d $(DESTDIR)$(SPOOLDIR) > /dev/null 2>&1 || true; \
			test ! -d $(DESTDIR)$(QDIR) && $(INSTALL) -m 750 -o $(DEFANGUSER) -d $(DESTDIR)$(QDIR) > /dev/null 2>&1 || true; \
                fi \
	else \
		echo ""; \
		echo "Please create the spool directory, '$(SPOOLDIR)',"; \
		echo "if it does not exist.  Give it mode 700 or 750, and make"; \
		echo "it owned by the user and group you intend to run MIMEDefang as."; \
		if test "$(QDIR)" != "$(SPOOLDIR)" ; then \
			echo "Please do the same with the quarantine directory, '$(QDIR)'."; \
		fi; \
	fi

	$(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/bin
	$(INSTALL) -m 755 -d $(DESTDIR)$(MANDIR)/man1
	$(INSTALL) -m 755 -d $(DESTDIR)$(MANDIR)/man3
	$(INSTALL) -m 755 -d $(DESTDIR)$(MANDIR)/man5
	$(INSTALL) -m 755 -d $(DESTDIR)$(MANDIR)/man7
	$(INSTALL) -m 755 -d $(DESTDIR)$(MANDIR)/man8
	-test ! -d $(DESTDIR)$(SPOOLDIR) && mkdir -p $(DESTDIR)$(SPOOLDIR) && chmod 750 $(DESTDIR)$(SPOOLDIR) || true
	-test ! -d $(DESTDIR)$(QDIR) && mkdir -p $(DESTDIR)$(QDIR) && chmod 750 $(DESTDIR)$(QDIR) || true

	if test -f $(DESTDIR)${CONFDIR}/mimedefang-filter ; then \
		$(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${CONFDIR}/mimedefang-filter.example || exit 1; \
	else \
		$(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${CONFDIR}/mimedefang-filter || exit 1; \
	fi

	$(INSTALL) -m 755 $(INSTALL_STRIP_FLAG) mimedefang-multiplexor   $(DESTDIR)$(prefix)/bin/mimedefang-multiplexor
	$(INSTALL) -m 755 $(INSTALL_STRIP_FLAG) md-mx-ctrl               $(DESTDIR)$(prefix)/bin/md-mx-ctrl
	$(INSTALL) -m 755 $(INSTALL_STRIP_FLAG) mimedefang               $(DESTDIR)$(prefix)/bin/mimedefang

	# Install .pm files
	if test -d $(DESTDIR)$(PERLINSTALLSITELIB) ; then \
	  $(INSTALL) -m 755 -d $(DESTDIR)$(PERLINSTALLSITELIB)/Mail ; \
	  $(INSTALL) -m 755 -d $(DESTDIR)$(PERLINSTALLSITELIB)/Mail/MIMEDefang ; \
	  $(INSTALL) -m 755 -d $(DESTDIR)$(PERLINSTALLSITELIB)/Mail/MIMEDefang/DKIM ; \
	  $(INSTALL) -m 644 modules/lib/Mail/MIMEDefang.pm $(DESTDIR)$(PERLINSTALLSITELIB)/Mail/MIMEDefang.pm ; \
	  $(INSTALL) -m 644 modules/lib/Mail/MIMEDefang/*.pm $(DESTDIR)$(PERLINSTALLSITELIB)/Mail/MIMEDefang/ ; \
	  $(INSTALL) -m 644 modules/lib/Mail/MIMEDefang/DKIM/*.pm $(DESTDIR)$(PERLINSTALLSITELIB)/Mail/MIMEDefang/DKIM/ ; \
        else \
	  $(INSTALL) -m 755 -d $(DESTDIR)$(PERLVENDORLIB)/Mail ; \
	  $(INSTALL) -m 755 -d $(DESTDIR)$(PERLVENDORLIB)/Mail/MIMEDefang ; \
	  $(INSTALL) -m 755 -d $(DESTDIR)$(PERLVENDORLIB)/Mail/MIMEDefang/DKIM ; \
	  $(INSTALL) -m 644 modules/lib/Mail/MIMEDefang.pm $(DESTDIR)$(PERLVENDORLIB)/Mail/MIMEDefang.pm ; \
	  $(INSTALL) -m 644 modules/lib/Mail/MIMEDefang/*.pm $(DESTDIR)$(PERLVENDORLIB)/Mail/MIMEDefang/ ; \
	  $(INSTALL) -m 644 modules/lib/Mail/MIMEDefang/DKIM/*.pm $(DESTDIR)$(PERLVENDORLIB)/Mail/MIMEDefang/DKIM/ ; \
        fi

	$(INSTALL) -m 755 watch-mimedefang         $(DESTDIR)$(prefix)/bin/watch-mimedefang
	$(INSTALL) -m 755 watch-multiple-mimedefangs.tcl $(DESTDIR)$(prefix)/bin/watch-multiple-mimedefangs.tcl
	$(INSTALL) -m 755 mimedefang.pl            $(DESTDIR)$(prefix)/bin/mimedefang.pl
	$(INSTALL) -m 755 script/mimedefang-util   $(DESTDIR)$(prefix)/bin/mimedefang-util
	$(INSTALL) -m 644 script/mimedefang-util.1 $(DESTDIR)$(MANDIR)/man1/mimedefang-util.1
	$(INSTALL) -m 644 modules/man/Mail::MIMEDefang*.3 $(DESTDIR)$(MANDIR)/man3/
	$(INSTALL) -m 644 mimedefang.8             $(DESTDIR)$(MANDIR)/man8/mimedefang.8
	$(INSTALL) -m 644 watch-mimedefang.8       $(DESTDIR)$(MANDIR)/man8/watch-mimedefang.8
	$(INSTALL) -m 644 watch-multiple-mimedefangs.8 $(DESTDIR)$(MANDIR)/man8/watch-multiple-mimedefangs.8
	$(INSTALL) -m 644 mimedefang.pl.8          $(DESTDIR)$(MANDIR)/man8/mimedefang.pl.8
	$(INSTALL) -m 644 mimedefang-multiplexor.8 $(DESTDIR)$(MANDIR)/man8/mimedefang-multiplexor.8
	$(INSTALL) -m 644 md-mx-ctrl.8             $(DESTDIR)$(MANDIR)/man8/md-mx-ctrl.8
	$(INSTALL) -m 644 mimedefang-filter.5      $(DESTDIR)$(MANDIR)/man5/mimedefang-filter.5
	$(INSTALL) -m 644 mimedefang-protocol.7    $(DESTDIR)$(MANDIR)/man7/mimedefang-protocol.7
	$(INSTALL) -m 644 mimedefang-notify.7      $(DESTDIR)$(MANDIR)/man7/mimedefang-notify.7
	if test "$(HAVE_SPAM_ASSASSIN)" = "yes" ; then \
		if test -f $(DESTDIR)${CONFDIR}/sa-mimedefang.cf ; then \
			$(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${CONFDIR}/sa-mimedefang.cf.example || exit 1; \
		else \
			$(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${CONFDIR}/sa-mimedefang.cf || exit 1; \
		fi \
	fi

distro: FORCE
	mkdir mimedefang-$(VERSION)
	tar -c -T MANIFEST -f - | (cd mimedefang-$(VERSION); tar xf -)
	$(PERL) -p -e 's/#VERSION#/$(VERSION)/;s/#RELEASE#/1/;s/#BETA#//g' < redhat/mimedefang-spec.in > mimedefang-$(VERSION)/redhat/mimedefang.spec
	tar cvf mimedefang-$(VERSION).tar mimedefang-$(VERSION)
	gzip -v -f -9 mimedefang-$(VERSION).tar
	rm -rf mimedefang-$(VERSION)
	gpg --detach-sign mimedefang-$(VERSION).tar.gz

distro-beta: beta-check
	mkdir mimedefang-$(VERSION)-BETA-$(BETA)
	tar -c -T MANIFEST -f - | (cd mimedefang-$(VERSION)-BETA-$(BETA); tar xf -)
	$(PERL) -p -e 's/#VERSION#/$(VERSION)/;s/#RELEASE#/0.b$(BETA)/;s/#BETA#/-BETA-$(BETA)/g' < redhat/mimedefang-spec.in > mimedefang-$(VERSION)-BETA-$(BETA)/redhat/mimedefang.spec
	tar cvf mimedefang-$(VERSION)-BETA-$(BETA).tar mimedefang-$(VERSION)-BETA-$(BETA)
	gzip -v -f -9 mimedefang-$(VERSION)-BETA-$(BETA).tar
	rm -rf mimedefang-$(VERSION)-BETA-$(BETA)
	gpg --detach-sign mimedefang-$(VERSION)-BETA-$(BETA).tar.gz

beta-check:
	@if test "$(BETA)" = "" ; then \
		echo "Usage: make distro-beta BETA=<x>"; \
		exit 1; \
	fi

distro-rc: rc-check
	mkdir mimedefang-$(VERSION)-rc$(RC)
	tar -c -T MANIFEST -f - | (cd mimedefang-$(VERSION)-rc$(RC); tar xf -)
	$(PERL) -p -e 's/#VERSION#/$(VERSION)/;s/#RELEASE#/0.rc$(RC)/;s/#RC#/-rc$(RC)/g' < redhat/mimedefang-spec.in > mimedefang-$(VERSION)-rc$(RC)/redhat/mimedefang.spec
	tar cvf mimedefang-$(VERSION)-rc$(RC).tar mimedefang-$(VERSION)-rc$(RC)
	gzip -v -f -9 mimedefang-$(VERSION)-rc$(RC).tar
	rm -rf mimedefang-$(VERSION)-rc$(RC)
	gpg --detach-sign mimedefang-$(VERSION)-rc$(RC).tar.gz

rc-check:
	@if test "$(RC)" = "" ; then \
		echo "Usage: make distro-rc RC=<x>"; \
		exit 1; \
	fi

test:
	prove -It/lib --recurse t

manifest:
	$(PERL) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest

FORCE:

.PHONY: FORCE test manifest
