1#!/bin/sh
2##
3##  PORTING.test -- check if current platform passes the the test suite
4##
5
6echon () {
7	echo "$*" | awk '{ printf("%s", $0); }'
8}
9
10TMPFILE=/tmp/eperl.$$.tmp
11rm -f $TMPFILE
12touch $TMPFILE
13c=0
14for dir in `echo $PATH | sed -e 's/:/ /g'` /tmp; do
15    for perl in perl5 perl miniperl; do
16         if test -f "$dir/$perl"; then
17             if test -x "$dir/$perl"; then
18                 perl="$dir/$perl"
19                 version=`$perl -v | grep version | sed -e 's/.* version //' -e 's/ built.*//' -e 's/ with.*//'`
20                 versionnum="`echo $version | sed -e 's/\.//g' -e 's/_//g'`"
21                 versionnum=`expr $versionnum - $c`
22                 echo "$versionnum $version $perl" >>$TMPFILE
23             fi
24         fi
25    done
26    c=`expr $c + 1`
27done
28perlvers="`cat $TMPFILE | sort -u | tail -1 | cut '-d ' -f2`"
29perlprog="`cat $TMPFILE | sort -u | tail -1 | cut '-d ' -f3`"
30rm -f $TMPFILE
31echon "Perl Interpreter (v$perlvers) [$perlprog]: "
32read rc
33case $rc in
34    "" ) perl=$perlprog ;;
35    *  ) perl=$rc       ;;
36esac
37
38ccprog="`$perlprog -e 'use Config; print $Config{cc}'`";
39case $ccprog in
40   *gcc* ) ccvers=`gcc -v 2>&1 | grep "version" | awk '{ print $3; }'` ;;
41   *     ) ccvers="??" ;;
42esac
43echon "ANSI C Compiler (v$ccvers) [$ccprog]: "
44read rc
45case $rc in
46    "" ) cc=$ccprog ;;
47    *  ) cc=$rc     ;;
48esac
49
50echo ""
51echo "PART 1: PORTING-TEST OF STAND-ALONE SYSTEM"
52echo ""
53
54echo "$ CC=$cc ./configure --with-perl=$perl"
55CC=$cc ./configure --with-perl=$perl
56echo "$ make"
57make
58echo "$ make test"
59make test
60echo "$ make distclean"
61make distclean
62
63echo ""
64echo "PART 2: PORTING-TEST OF PERL 5 INTEGRATED MODULE SYSTEM"
65echo ""
66
67echo "$ $perl Makefile.PL CC=$cc"
68$perl Makefile.PL CC=$cc
69echo "$ make"
70make
71echo "$ make test"
72make test
73echo "$ make distclean"
74make distclean
75
76
77##EOF##
78