home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Acorn User 10
/
AU_CD10.iso
/
Updates
/
Perl
/
Non-RPC
/
!Perl
/
scripts
/
getSource
< prev
next >
Wrap
Text File
|
1998-09-12
|
1KB
|
45 lines
#! perl
die "$0 <UnixSourceDir> <RISCOSDestDir>\n" if( $#ARGV < 1 );
use RISCOS;
$sourcedir = $ARGV[0];
$destdir = $ARGV[1];
foreach( 'CC', 'cc', 'C', 'c', 'h', 'H', 's', 'S' )
{
$ext{ $_ } = $_; # Hash directory name by suffix
# (Currently dirname == suffix )
}
$ext{ 'cpp' } = 'cc';
$ext{ 'CPP' } = 'cc';
$ext{ 'HPP' } = 'h'; # Some people use this suffix for C++ headers
$ext{ 'hpp' } = 'h';
opendir( MYDIR, $sourcedir )
|| die "Couldn't open directory $sourcedirname\n";
foreach $file ( readdir( MYDIR ) )
{
if ($file =~ /makefile/i) {
print "$file -> $file\n";
RISCOS::File::copy "$sourcedir.$file", "$destdir.$file", 0x102 or print STDERR "$!\n";
} else {
( $base, $ext ) = ( $file =~ m#^([^/]*)/([^/]*)$#);
if( defined $ext{ $ext } ) # Clasic variable naming scheme 8-)
{
# We have but one extension, and it's in our list!
$destsubdir = "$destdir.$ext{$ext}";
# print "$destsubdir\n";
mkdir( $destsubdir, 511 ) unless -d $destsubdir;
$source = "$sourcedir.$file";
$dest = "$destsubdir.$base";
print "$file -> $ext.$base\n";
RISCOS::File::copy $source, $dest, 0x102 or print STDERR "$!\n";
# print "*copy $source $dest ~c\n";
}
}
}