#!/bin/sh if ! ./scripts/checkperl.sh then exit 1 fi perl -e ' use strict; $|=1; sub check_gcc { my $f = shift; my $s = shift; my $r = 0; print "Checking for GNU G++ $f.$s\n"; if ( `g++ -v 2> g++.version && tail -n 1 g++.version` =~ / $f\.$s/ ) { `echo $f.$s >> g++.version`; `echo g++ >> g++.version`; $r = 1; } else { if (`g++$f$s -v 2> g++.version && tail -n 1 g++.version` =~ / $f\.$s/) { `echo $f.$s >> g++.version`; `echo g++$f$s >> g++.version`; $r = 1; } } print "No " if $r == 0; print "GNU G++ $f.$s found!\n"; return $r; } sub check_make { print "Checking for GNU make\n"; my $err = "No GNU make found.\nPlease install a version of GNU make!\n"; my $make; if (`which gmake`) { $make = "gmake"; } elsif ( `which make` ) { $make = "make"; } else { print $err; exit(1); } `sh -c "$make -v > make.version 2>/dev/null"`; if ( `cat make.version` =~ /GNU Make/ ) { `echo $make >> make.version`; } else { print $err; exit(1); } } &check_make; print "Checking compiler version\n"; my $r = 0; for (my $i = 4; $i > 0 && $r == 0; --$i ) { $r = &check_gcc(3,$i); } if ($r == 0) { print "No suitable g++ compiler found!\n"; print "Please install a right version of GNU G++!\n"; exit(1); } system("perl \"scripts/config.pl\""); chdir("src"); system("./configure ".join(" ", @ARGV)); chdir(".."); exit(0); ' `echo "$*" | sed "s/-//g"` if test -f err then rm -f err else echo You are ready to type gmake now! fi