use 5.006;
use ExtUtils::MakeMaker;
use File::Spec;
use Config;
eval {
require XML::Edifact::Config;
$URL = $XML::Edifact::Config::URL;
$DIR = $XML::Edifact::Config::DIR;
};
print <<'!1!';
I know I should check for those 99 possible places, but I prefer to ask :-)
XML::Edifact will produce XML files that need a place for their document
type definitions. The default points to my site, and store its files
to a temporary directory. If you change them, part of the regession test
will fail, so at best just press return.
Anyway, do not provide a trailing slash, File::Spec will do that!
!1!
$URL="http://www.xml-edifact.org" unless $URL;
$DIR=File::Spec->catfile(File::Spec->tmpdir(),"xml-edifact") unless $DIR;
$URL = prompt "URL for public documents",$URL;
$DIR = prompt "Directory on this system",$DIR;
if (! -d $DIR) {
mkdir "$DIR",0777 or die "mkdir: $DIR".$!;
}
$XMLEDI=File::Spec->catdir("XML","Edifact");
mkdir $XMLEDI,0777 unless -d $XMLEDI;
$DAT=File::Spec->catdir($Config{'installsitelib'},"XML","Edifact","d96b");
$TST=File::Spec->catdir("blib","lib","XML","Edifact","d96b");
open OUTFILE,">".File::Spec->catdir("XML","Edifact","Config.pm");
print OUTFILE 'package XML::Edifact::Config;'."\n";
print OUTFILE 'use strict;'."\n";
print OUTFILE 'use vars qw($URL $DIR $DAT $TST);'."\n";
printf OUTFILE '$'."URL='%s';\n", $URL;
printf OUTFILE '$'."DIR='%s';\n", $DIR;
printf OUTFILE '$'."DAT='%s';\n", $DAT;
printf OUTFILE '$'."TST='%s';\n", $TST;
print OUTFILE '1;'."\n";
close OUTFILE;
print "\n";
WriteMakefile(
'NAME' => 'XML::Edifact',
'AUTHOR' => 'kraehe@copyleft.de',
'ABSTRACT' => 'an aproach towards XML/EDI as a prototype in perl',
'VERSION_FROM' => 'XML/Edifact.pm',
'PM' => { 'XML/Edifact.pm' => '$(INST_LIBDIR)/Edifact.pm',
'XML/Edifact/Config.pm' => '$(INST_LIBDIR)/Edifact/Config.pm',
},
'PL_FILES' => { 'Bootstrap.PL' => '$(INST_LIBDIR)/Edifact/d96b/.exists',
'bin/xml2edi.PL' => 'bin/xml2edi',
'bin/edi2xml.PL' => 'bin/edi2xml'
},
'EXE_FILES' => [ 'bin/edi2xml', 'bin/xml2edi' ],
'MAN3PODS' => { 'XML/Edifact.pm' => '$(INST_MAN3DIR)/XML::Edifact.3' },
'dist' => { 'COMPRESS' => 'gzip -v -f -9', 'SUFFIX' => 'gz' },
'PREREQ_PM' => { 'XML::Parser' => 2.27,
'Digest::MD5' => 2.09
},
);
sub MY::postamble {
return('install:: '.$main::DIR."/.exists\n".
$main::DIR."/.exists : html/.exists\n".
"\t".'$(MOD_INSTALL) html '.$main::DIR."\n".
"\t".'touch '.$main::DIR."/.exists\n");
}