use strict; use warnings; use ExtUtils::MakeMaker; # See lib/ExtUtils/MakeMaker.pm for details of how to influence # the contents of the Makefile that is written. # Configuration variables: Change them if you change machine # Values in nereida # Directory where to publish file. my $PUBLIC_PLACE = "/home/$ENV{USER}/public_html/perlexamples/"; my $PUBLIC_DOC = "/home/$ENV{USER}/public_html/Remote_Use/"; # Run 'make test' in those machines via SSH my $MACHINES = 'orion beowulf'; # Where the remote.pl program is: my $REMOTETEST = 'remotetest.pl'; # To print: see goal pdf my @FILES = ( 'TODO', 'lib/Remote/Use.pm', # 'lib/Remote/Which.pm', 'script/pminstalled.pl', qw{ t/03reqprime.t t/04confighaspm.t t/05usinganexecutable.t t/06usevsrequire.t t/07lwput1.t t/08reqprimenopackage.t t/09configtutuhaspm.t t/lwpmirrorconfig t/rsyncconfig t/t_rsyncconfig t/wgetconfigpm.pm t/wgetwithbinconfig t/tutu/wgetconfigpm.pm t/.orion.via.web }, #t/.orion.installed.modules #'examples/hello.pl' #'examples/lwpmirrorconfig' #'examples/lwput1.pl' #'examples/lwput2.pl' #'examples/main.pm' #'examples/prime2.pl', #'examples/prime3.pl' #'examples/primeex.pl' #'examples/prime.pl' #'examples/reqprime.pl' #'examples/requirelwput1.pl' #'examples/requirersyncsynopsis2.pl' #'examples/requireut1config.pl' #'examples/rsyncconfig', #'examples/rsyncconfig2' #'examples/rsyncconfig3' #'examples/rsyncconfigadded' #'examples/rsyncsynopsis2.pl' #'examples/rsyncsynopsis.pl' #'examples/rsyncut1.pl' #'examples/rsyncut2.pl' #'examples/salida' #'examples/synopsis2.pl' #'examples/synopsis.pl' #'examples/t1.pl' #'examples/t2.pl' #'examples/t3.pl' #'examples/temp.pl' #'examples/ut1config.pl' #'examples/ut1.pl' #'examples/ut1rsync.pl' #'examples/ut1wget.pl' #'examples/ut2.pl' #'examples/ut3.pl' #'examples/ut4.pl' #'examples/ut5.pl' #'examples/wgetconfig', ); # END configuration variables WriteMakefile( NAME => 'Remote::Use', VERSION_FROM => 'lib/Remote/Use.pm', # finds $VERSION PREREQ_PM => { 'File::Find' => '0', 'File::Path' => '0', 'File::Spec' => '0', 'File::Basename' => '0', 'Getopt::Long' => '0', }, EXE_FILES => [ 'script/pminstalled.pl' ], ($] >= 5.005 ? ## Add these new keywords supported since 5.005 (ABSTRACT_FROM => 'lib/Remote/Use.pod', # retrieve abstract from module AUTHOR => 'Casiano Rodriguez Leon 2 ') : ()), ); sub MY::postamble { # To check tests in remote machines. See goal remotetest my @machines = qw{orion beowulf}; $_ = targets(); s/<>/$PUBLIC_PLACE/ge; s/<>/$MACHINES/ge; s/<>/$PUBLIC_DOC/ge; my $files = "@FILES"; s/<>/$files/ge; return $_; } sub targets { return <<'EOT'; doc:tt2/Use.tt2 cd tt2; tpage Use.tt2 > ../lib/Remote/Use.pod cd tt2; tpage Tutorial.tt2 > ../lib/Remote/Use/Tutorial.pod cd tt2; tpage pminstalled.tt2 > ../script/pminstalled.pod pdf: <> atopdf <> -o /tmp/remoteuse.pdf publicdist: publish rmdist dist chmod a+r Remote-Use-*.tar.gz cp Remote-Use-*.tar.gz <>Remote-Use.tar.gz cp Remote-Use-*.tar.gz /tmp/ chmod a+r /tmp/Remote-Use-*.tar.gz rmdist: rm -fR Remote-Use-*.tar.gz rm -fR /tmp/Remote-Use-*.tar.gz xdvi: doc pod2latex -full -prefile preamblegen.tex lib/Remote/Use.pod latex Use latex Use makeindex Use; latex Use.tex pod2latex -full -prefile preamblegen.tex lib/Remote/Use/Tutorial.pod latex Tutorial latex Tutorial makeindex Tutorial; latex Tutorial.tex pod2latex -full -prefile preamblegen.tex script/pminstalled.pod latex pminstalled latex pminstalled makeindex pminstalled; latex pminstalled html: doc mpod2html -nowarnings -noverbose -nonavigation -nobanner -noidx -notoc lib/Remote/Use.pod mpod2html -nowarnings -noverbose -nonavigation -nobanner -noidx -notoc lib/Remote/Use/Tutorial.pod mpod2html -nowarnings -noverbose -nonavigation -nobanner -noidx -notoc script/pminstalled.pod publish: doc html xdvi cp *.html <> cp *.dvi <> cleancache: t/erase devtest: cleancache test remotetest: scripts/remotetest.pl \${DISTVNAME}.tar.gz @machines coverage: cover -delete make HARNESS_PERL_SWITCHES=-MDevel::Cover test cover limpia: clean rm -f *.aux *.dvi *.idx *.ilg *.ind *.log *.tex *.toc EOT }