build_host=buildhost.tld
web_host=webhost.tld
host_dir=dirname
SHELL=/bin/bash

######################################################
#### repo commands
####

package_xml: fix_deps
	@ echo '<?xml version="1.0" encoding="UTF-8"?>' > package.xml
	@ echo '<?xml-stylesheet type="text/xsl" href="html.xsl"?>' >> package.xml; echo >> package.xml
	@ echo '<REPOSITORYSUMMARY ARCHITECTURE="MSWin32-x86-multi-thread-5.8">' >> package.xml
	@ for i in *.ppd; do cat $$i >> package.xml; done
	@ echo '</REPOSITORYSUMMARY>' >> package.xml
	@ chmod 644 package.xml *.ppd *.gz

fix_deps: unfix_deps
	@ ./fix_ppds
	@ echo moving ppds to olds and fixes to ppd
	@-for i in *.fix; do b=`basename $$i .fix`; [ -f "$$b.fix" ] && mv $$b.ppd $$b.old && mv $$b.fix $$b.ppd; done

unfix_deps:
	@ echo moving olds to ppds and ppds to fixes
	@-for i in *.old; do b=`basename $$i .old`; [ -f "$$b.ppd" ] && mv $$b.ppd $$b.fix && mv $$b.old $$b.ppd; done

clean: unfix_deps
	rm -f *.xml *.fix



######################################################
#### intended for a devhost, not for use in the repo
####

reallyclean:
	rm -f *.xml *.fix *.ppd *.old *.gz

pull: reallyclean
	scp -p $(web_host):$(host_dir)/*.ppd .

README.txt: README.start ppdp fix_ppds
	echo > /tmp/blank; echo >> /tmp/blank
	cat README.start /tmp/blank ppdp /tmp/blank fix_ppds > README.txt

publish push: README.txt
	chmod 700 ppdp fix_ppds check_versions
	-scp -p ppdp $(build_host):bin/ 2>&1 | hi 'ranger.*not known' yellow
	scp -p fix_ppds check_versions $(web_host):$(host_dir)/
	chmod 644 README.txt Makefile
	scp -p README.txt Makefile $(web_host):$(host_dir)/
	ssh $(web_host) "(cd $(host_dir); perl -i -pe 's@$(build_host)@buildhost.tld@g; s@$(web_host)@webhost.tld@g; s@$(host_dir)@dirname@g; s@http://www.perl.com/CPAN/bug@http://www.perl.com/CPAN/bug@g;' README.txt Makefile)"
