/usr/local/CPAN/Test-AutoBuild/Makefile.PL
# $Id: Makefile.PL,v 1.33 2007/12/10 04:45:18 danpb Exp $
# -*- perl -*-
use strict;
use warnings;
use ExtUtils::MakeMaker;
WriteMakefile(
NAME => "Test-AutoBuild",
VERSION_FROM => 'lib/Test/AutoBuild.pm',
AUTHOR => "Daniel Berrange (dan[at]berrange[dot]com)",
EXE_FILES => ['bin/auto-build', 'bin/auto-build-make-root', 'bin/auto-build-clean-root'],
NO_META => 1,
PREREQ_PM => {
'BSD::Resource' => "1.10",
'Carp' => '0',
'Class::MethodMaker' => '0',
'Config' => '0',
'Cwd' => '0',
'Config::Record' => '1.1.0',
'Data::Dumper' => '0',
'Date::Manip' => '0',
'Digest::MD5' => '0',
'Fcntl' => '0',
'File::Copy' => '0',
'File::Find' => '0',
'File::Glob' => '0',
'File::Path' => '0',
'File::Spec' => '0',
'File::stat' => '0',
'IO::File' => '0',
'IO::Scalar' => '0',
'List::Util' => '0',
'Log::Log4perl' => "0",
'Net::SMTP' => "2.15",
'POSIX' => '0',
'Storable' => '0',
'Symbol' => '0',
'Sys::Hostname' => '0',
'Template' => '0',
'Test::More' => '0',
'XML::Simple' => '0',
},
dist =>
{
COMPRESS => 'gzip --force --best',
},
clean =>
{
FILES => '*.bak *~',
},
depend => {
Makefile => '$(VERSION_FROM)',
#'Test-AutoBuild.spec' => '$(VERSION_FROM)',
dist => 'Test-AutoBuild.spec META.yml',
},
realclean => {
FILES => 'Test-AutoBuild-*.tar.gz Test-AutoBuild.spec',
},
);
package MY;
sub libscan {
my ($self, $path) = @_;
($path =~ /\~$/ || $path =~ m,/CVS/,) ? undef : $path;
}
sub postamble {
'
WITH_SELINUX = 0
sysconfdir = $(PREFIX)/etc
bindir = $(PREFIX)/bin
pkgsysconfdir = $(sysconfdir)/auto-build.d
pkgdatadir = $(PREFIX)/share/$(DISTNAME)-$(VERSION)
selinuxdir = $(PREFIX)/share/selinux
selinuxpkgdir = $(selinuxdir)/packages
# NB do not use prefix here
selinuxdevdir = /usr/share/selinux/devel
pure_all ::
test -d $(selinuxdevdir) -a $(WITH_SELINUX) = 1 && make -C conf/selinux ||:
clean ::
test -d $(selinuxdevdir) -a $(WITH_SELINUX) = 1 && make -C conf/selinux clean ||:
install ::
install -d -m 0755 $(pkgsysconfdir)
for i in conf/*.conf ; do \
conf=`echo $$i | sed -e \'s/conf\///\'`; \
if [ -f $(pkgsysconfdir)/$$conf ]; then \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf-example; \
echo "Not overwriting existing config file $(pkgsysconfdir)/$$conf" ; \
else \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf; \
fi \
done
install -d -m 0755 $(pkgsysconfdir)/engine
for i in conf/engine/*.conf ; do \
conf=`echo $$i | sed -e \'s/conf\///\'`; \
if [ -f $(pkgsysconfdir)/$$conf ]; then \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf-example; \
echo "Not overwriting existing config file $(pkgsysconfdir)/$$conf" ; \
else \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf; \
fi \
done
install -d -m 0755 $(pkgsysconfdir)/cron
for i in conf/cron/*.conf ; do \
conf=`echo $$i | sed -e \'s/conf\///\'`; \
if [ -f $(pkgsysconfdir)/$$conf ]; then \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf-example; \
echo "Not overwriting existing config file $(pkgsysconfdir)/$$conf" ; \
else \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf; \
fi \
done
install -d -m 0755 $(pkgsysconfdir)/httpd
for i in conf/httpd/*.conf ; do \
conf=`echo $$i | sed -e \'s/conf\///\'`; \
if [ -f $(pkgsysconfdir)/$$conf ]; then \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf-example; \
echo "Not overwriting existing config file $(pkgsysconfdir)/$$conf" ; \
else \
install -c -m 0644 $$i $(pkgsysconfdir)/$$conf; \
fi \
done
install -d -m 0755 $(pkgsysconfdir)/templates
install -c -m 0644 templates/*.txt $(pkgsysconfdir)/templates/
install -c -m 0644 templates/*.html $(pkgsysconfdir)/templates/
install -c -m 0644 templates/*.tt $(pkgsysconfdir)/templates/
install -c -m 0644 templates/*.css $(pkgsysconfdir)/templates/
install -c -m 0644 templates/*.rss $(pkgsysconfdir)/templates/
install -c -m 0644 templates/*.png $(pkgsysconfdir)/templates/
if [ -d $(selinuxdevdir) -a $(WITH_SELINUX) = 1 ]; then \
install -d -m 0755 $(selinuxpkgdir)/auto-build/ ;\
install -c -m 0644 conf/selinux/auto-build.pp $(selinuxpkgdir)/auto-build/auto-build.pp ;\
install -c -m 0755 blib/script/auto-build $(bindir)/auto-build-secure ;\
fi
HTMLDIR = blib/html
HTMLURLPREFIX = /
HTMLPODS = $(MAN3PODS:lib/%.pm=$(HTMLDIR)/%.html)
MAN5EXT = 5
INST_MAN5DIR = blib/man5
$(INST_MAN5DIR)/.exists :: $(INST_MAN3DIR)/.exists
$(NOECHO) $(MKPATH) $(INST_MAN5DIR)
$(NOECHO) $(EQUALIZE_TIMESTAMP) $(INST_MAN3DIR)/.exists $(INST_MAN5DIR)/.exists
-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_MAN5DIR)
all:: manify5pods
manify5pods: $(INST_MAN5DIR)/.exists conf/auto-build.conf.pod
$(NOECHO) $(POD2MAN_EXE) --section=5 --perm_rw=$(PERM_RW)\
conf/auto-build.conf.pod $(INST_MAN5DIR)/auto-build.conf.$(MAN5EXT)
INSTALLMAN5DIR = $(PERLPREFIX)/share/man/man5
DESTINSTALLMAN5DIR = $(DESTDIR)$(INSTALLMAN5DIR)
INSTALLSITEMAN5DIR = $(SITEPREFIX)/share/man/man5
DESTINSTALLSITEMAN5DIR = $(DESTDIR)$(INSTALLSITEMAN5DIR)
INSTALLVENDORMAN5DIR = $(VENDORPREFIX)/share/man/man5
DESTINSTALLVENDORMAN5DIR = $(DESTDIR)$(INSTALLVENDORMAN5DIR)
pure_perl_install ::
install -d -m 0755 $(DESTINSTALLMAN5DIR)
install -c -m 644 $(INST_MAN5DIR)/* $(DESTINSTALLMAN5DIR)
pure_site_install ::
install -d -m 0755 $(DESTINSTALLSITEMAN5DIR)
install -c -m 644 $(INST_MAN5DIR)/* $(DESTINSTALLSITEMAN5DIR)
pure_vendor_install ::
install -d -m 0755 $(DESTINSTALLVENDORMAN5DIR)
install -c -m 644 $(INST_MAN5DIR)/* $(DESTINSTALLVENDORMAN5DIR)
htmlifypods: $(HTMLDIR) $(HTMLPODS)
$(HTMLDIR):
mkdir $@
$(HTMLDIR)/%.html: lib/%.pm
mkdir -p `dirname $@`
pod2html --htmlroot=$(HTMLURLPREFIX) --infile=$< --outfile=$@ --podpath=$(HTMLDIR)
';
}
sub test {
my $self = shift;
my $mm_test = $self->SUPER::test(@_);
return '
test :: META.yml
' . $mm_test;
}
__END__