1#!/usr/local/bin/perl -w 2# 3# Run the test suite and generate a report 4# 5 6if (! -f "Configure") { 7 print "Please run perl util/selftest.pl in the OpenSSL directory.\n"; 8 exit 1; --- 5 unchanged lines hidden (view full) --- 14my $platform0="??"; 15my $platform="??"; 16my $options="??"; 17my $last="??"; 18my $ok=0; 19my $cc="cc"; 20my $cversion="??"; 21my $sep="-----------------------------------------------------------------------------\n"; |
22my $not_our_fault="\nPlease ask your system administrator/vendor for more information.\n[Problems with your operating system setup should not be reported\nto the OpenSSL project.]\n"; |
23 24open(OUT,">$report") or die; 25 26print OUT "OpenSSL self-test report:\n\n"; 27 28$uname=`uname -a`; 29$uname="??\n" if $uname eq ""; 30 --- 41 unchanged lines hidden (view full) --- 72print OUT "OS (config): $os\n"; 73print OUT "Target (default): $platform0\n"; 74print OUT "Target: $platform\n"; 75print OUT "Compiler: $cversion\n"; 76print OUT "\n"; 77 78print "Checking compiler...\n"; 79if (open(TEST,">cctest.c")) { |
80 print TEST "#include <stdio.h>\n#include <errno.h>\nmain(){printf(\"Hello world\\n\");}\n"; |
81 close(TEST); 82 system("$cc -o cctest cctest.c"); 83 if (`./cctest` !~ /Hello world/) { 84 print OUT "Compiler doesn't work.\n"; |
85 print OUT $not_our_fault; |
86 goto err; 87 } 88 system("ar r cctest.a /dev/null"); 89 if (not -f "cctest.a") { 90 print OUT "Check your archive tool (ar).\n"; |
91 print OUT $not_our_fault; |
92 goto err; 93 } 94} else { 95 print OUT "Can't create cctest.c\n"; 96} 97if (open(TEST,">cctest.c")) { 98 print TEST "#include <openssl/opensslv.h>\nmain(){printf(OPENSSL_VERSION_TEXT);}\n"; 99 close(TEST); 100 system("$cc -o cctest -Iinclude cctest.c"); 101 $cctest = `./cctest`; 102 if ($cctest !~ /OpenSSL $version/) { 103 if ($cctest =~ /OpenSSL/) { 104 print OUT "#include uses headers from different OpenSSL version!\n"; 105 } else { 106 print OUT "Can't compile test program!\n"; 107 } |
108 print OUT $not_our_fault; |
109 goto err; 110 } 111} else { 112 print OUT "Can't create cctest.c\n"; 113} 114 115print "Running make...\n"; 116if (system("make 2>&1 | tee make.log") > 255) { --- 15 unchanged lines hidden (view full) --- 132$_=$options; 133s/no-asm//; 134if (/no-/) 135{ 136 print OUT "Test skipped.\n"; 137 goto err; 138} 139 |
140if (`echo 4+1 | bc` != 5) 141{ 142 print OUT "Can't run bc! Test skipped.\n"; 143 print OUT $not_our_fault; 144 goto err; 145} 146 |
147print "Running make test...\n"; 148if (system("make test 2>&1 | tee maketest.log") > 255) 149 { 150 print OUT "make test failed!\n"; 151} else { 152 $ok=1; 153} 154 --- 45 unchanged lines hidden --- |