chdir $curdir;
# We don't want the files listed in .cvsignore in the source tree
-open(IGNORES,"../../source/.cvsignore");
+open(IGNORES,"../../source/.cvsignore") || die "Unable to open .cvsignore file\n";
while (<IGNORES>) {
chop;
$ignores{$_}++;
close IGNORES;
# get the names of all the binary files to be installed
-open(MAKEFILE,"Makefile");
+open(MAKEFILE,"Makefile") || die "Unable to open Makefile\n";
@makefile = <MAKEFILE>;
@sprogs = grep(/^SPROGS /,@makefile);
@progs1 = grep(/^PROGS1 /,@makefile);
# release
@allfiles = grep(!/^.*\.o$/ & !/^packaging\/SGI\/bins/ & !/^packaging\/SGI\/catman/ & !/^packaging\/SGI\/html/ & !/^packaging\/SGI\/codepage/, @allfiles);
-open(IDB,">samba.idb");
+open(IDB,">samba.idb") || die "Unable to open samba.idb for output\n";
print IDB "f 0644 root sys etc/config/samba packaging/SGI/samba.config samba.sw.base config(update)\n";
print IDB "f 0755 root sys etc/init.d/samba packaging/SGI/samba.rc samba.sw.base\n";
$OSver = $ARGV[0];
}
-open(MAKEIN,"../../source/Makefile");
-open(MAKEOUT,">Makefile");
+open(MAKEIN,"../../source/Makefile") || die "Unable to open source Makefile\n";
+open(MAKEOUT,">Makefile") || die "Unable to open Makefile for output\n";
while (<MAKEIN>) {
if (/^BASEDIR =/) {
print MAKEOUT "BASEDIR = /usr/samba\n";
#
echo Making manual pages
./mkman
+errstat=$?
+if [ $errstat -ne 0 ]; then
+ echo "Error $errstat making manual pages\n";
+ exit $errstat;
+fi
# build the sources
#
echo Making binaries
./makefile.pl $1 # create the Makefile for the specified OS ver
+errstat=$?
+if [ $errstat -ne 0 ]; then
+ echo "Error $errstat creating Makefile\n";
+ exit $errstat;
+fi
+
cd ../../source
# make -f ../packaging/SGI/Makefile clean
make -f ../packaging/SGI/Makefile all
+errstat=$?
+if [ $errstat -ne 0 ]; then
+ echo "Error $errstat building sources\n";
+ exit $errstat;
+fi
+
cd ../packaging/SGI
# generate the packages
#
echo Generating Inst Packages
./spec.pl # create the samba.spec file
+errstat=$?
+if [ $errstat -ne 0 ]; then
+ echo "Error $errstat creating samba.spec\n";
+ exit $errstat;
+fi
+
./idb.pl # create the samba.idb file
+errstat=$?
+if [ $errstat -ne 0 ]; then
+ echo "Error $errstat creating samba.idb\n";
+ exit $errstat;
+fi
+
if [ ! -d bins ]; then
mkdir bins
fi
# This perl script generates the samba.spec file based on the version
# information in the version.h file in the source tree
-open (VER,'../../source/version.h');
+open (VER,'../../source/version.h') || die "Unable to open version.h\n";
($_ = <VER>) =~ s/"//g;
close (VER);
@foo = split(' ');
$vernum = sprintf " version %02d%02d%02d%02d%02d\n",$v1,$v2,$v3,$v4,$v5;
# generate the samba.spec file
-open(SPEC,">samba.spec");
+open(SPEC,">samba.spec") || die "Unable to open samba.spec for output\n";
print SPEC "product samba\n";
print SPEC $vername;
print SPEC " image sw\n";
print SPEC " endsubsys\n";
print SPEC " endimage\n";
print SPEC "endproduct\n";
-close SPEC;
+close SPEC || die "Error on close of samba.spec\n";
print "\nsamba.spec file has been created\n\n";