95 lines
2.7 KiB
Perl
Executable File
95 lines
2.7 KiB
Perl
Executable File
#! /usr/bin/perl
|
|
|
|
use DirHandle;
|
|
use FileHandle;
|
|
|
|
#
|
|
# We used to try and work out the default mail domain, but this made
|
|
# it difficult to build a package. Well configured MTAs should
|
|
# fully qualify all addresses anyway.
|
|
#
|
|
my $domain = "";
|
|
|
|
my $prefix = exists $ENV{"PREFIX"} ? $ENV{"PREFIX"} : "/usr/local";
|
|
my $localbase = exists $ENV{"LOCALBASE"} ? $ENV{"LOCALBASE"} : "/usr/local";
|
|
my $config = "
|
|
# Saved state from exmh.install
|
|
# Mon Mar 14 10:59:18 MST 2005
|
|
set wish $localbase/bin/wish8.4
|
|
set exmh(version) {version 2.7.2 01/07/2005}
|
|
set exmh(name) exmh
|
|
set exmh(maintainer) welch\@acm.org
|
|
set mh_path $localbase/bin
|
|
set exmh(slocal) $localbase/libexec/slocal
|
|
set mime(dir) $localbase/bin
|
|
set mailcap_default /etc/mailcap
|
|
set mimetypes_default $prefix/share/exmh/mime.types
|
|
set exmh(expect) $localbase/bin/expect
|
|
set exmh(expectk) $localbase/bin/expectk
|
|
set faces(dir) $localbase/faces/faces
|
|
set faces(set,user) {local users usenix misc}
|
|
set faces(set,unknown) {domains unknown}
|
|
set faces(set,news) news
|
|
set faces(defaultDomain) {$domain}
|
|
set faces(suffix) {xpm gif xbm}
|
|
set pgp(pgp,path) $localbase/bin
|
|
set pgp(pgp5,path) $localbase/bin
|
|
set pgp(gpg,path) $localbase/bin
|
|
set pgp(pgp6,path) $localbase/bin
|
|
set glimpse(path) $localbase/bin
|
|
set sound(cmd) /usr/bin/aucat
|
|
set exmh(library) $prefix/share/exmh
|
|
set install(dir,bin) $prefix/bin
|
|
set install(dir,man) $prefix/man/man1
|
|
set install(dir,lib) $prefix/share/exmh
|
|
";
|
|
|
|
exists $ENV{"WRKSRC"} or die ("WRKSRC: missing from environment\n");
|
|
exists $ENV{"WRKBUILD"} or die ("WRKBUILD: missing from environment\n");
|
|
|
|
my $srcdir = $ENV{"WRKSRC"};
|
|
my $dstdir = $ENV{"WRKBUILD"};
|
|
my $dir = new DirHandle ($srcdir) or die ("$srcdir: $!\n");
|
|
while (my $name = $dir->read ()){
|
|
$name =~ m/^([^.].*)\.MASTER$/ or next;
|
|
$src = "$srcdir/$name";
|
|
$dst = "$dstdir/$1";
|
|
|
|
my $in = new FileHandle ($src, "r") or die ("$src: $!\n");
|
|
my $out = new FileHandle ($dst, "w") or die ("$dst: $!\n");
|
|
|
|
if (my $line = $in->getline ()){
|
|
$line =~ s|^#!expect|#!$localbase/bin/expect|;
|
|
$line =~ s|^#!tclsh|#!$localbase/bin/tclsh8.4|;
|
|
$line =~ s|^#!wish|#!$localbase/bin/wish8.4|;
|
|
$out->print ($line) or die ("$dst: $!\n");
|
|
|
|
while ($line = $in->getline ()){
|
|
if ($line =~ m/^#CONFIGURATION$/){
|
|
$out->print ($line) or die ("$dst: $!\n");
|
|
$out->print ($config) or die ("$dst: $!\n");
|
|
while ($line = $in->getline ()){
|
|
if ($line =~ m/^#END CONFIGURATION$/){
|
|
$out->print ($line) or die (
|
|
"$dst: $!\n");
|
|
last;
|
|
}
|
|
}
|
|
$in->eof () and die ("$src: "
|
|
. "missing 'END CONFIGURATION'\n");
|
|
}
|
|
else {
|
|
$out->print ($line) or die ("$dst: $!\n");
|
|
}
|
|
}
|
|
}
|
|
$in->eof () or die ("$src: $!\n");
|
|
|
|
$in->close () or die ("$src: $!\n");
|
|
$out->close () or die ("$dst: $!\n");
|
|
}
|
|
$dir->close () or die ("$srcdir: $!\n");
|
|
|
|
exit (0);
|
|
|