| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- use IO;
- # input specification
- my ($version, $platform) = @ARGV;
- my @list = (qw(
- lib/*.a
- lib/*.so*
- lib/sysliblist
- lib
- lib32/*.a
- lib32/*.so*
- lib32/sysliblist
- lib32
- rdbms/
- !rdbms/jlib/
- network/mesg/
- network
- ocommon/
- !ocommon/nls/lbuilder/jlib/
- bin/sqlplus
- bin
- sqlplus/
- oracore/zoneinfo/
- oracore
- network/admin/
- network/admin/samples/
- ));
- # determine effective file list
- my @files = ();
- foreach my $file (@list) {
- my $not = 0;
- if ($file =~ m|^!(.+)$|) {
- $not = 1;
- $file = $1;
- }
- my @paths = ();
- if ($file =~ m|.+/$|) {
- foreach my $p (`find $file -depth -print`) {
- $p =~ s|\r?\n$||s;
- push(@paths, $p);
- }
- }
- else {
- push(@paths, glob($file));
- }
- if ($not) {
- my @files2 = grep {
- my $x = $_;
- not grep(/^\Q$x\E$/, @paths);
- } @files;
- @files = @files2;
- }
- else {
- push(@files, @paths);
- }
- }
- # roll CPIO archives
- my $io = new IO::File
- "| cpio -o 2>/dev/null" .
- "| bzip2 -9 >oracle-barebone-$version.$platform.cpio.bz2";
- $io->print(join("\n", @files)."\n");
- $io->close();
|