X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=util%2Fpl%2Funix.pl;h=72d3b441e142cd83ad490931c2a28ce8a9099de5;hp=b837fefe230b39fba414f57d13b5295b8fd58bff;hb=045b2809f8e904ef520b828198ab5c953ce70f60;hpb=188f6443aee5639096d0f86fb2cc0750bbcffe5c diff --git a/util/pl/unix.pl b/util/pl/unix.pl index b837fefe23..72d3b441e1 100644 --- a/util/pl/unix.pl +++ b/util/pl/unix.pl @@ -26,6 +26,7 @@ else { $cflags="-O"; } } $obj='.o'; +$asm_suffix='.s'; $ofile='-o '; # EXE linking stuff @@ -69,6 +70,7 @@ $bf_enc_src=""; 'rc4-x86_64' => 'crypto/rc4', 'rc4-md5-x86_64' => 'crypto/rc4', 'ghash-x86_64' => 'crypto/modes', + 'aesni-gcm-x86_64' => 'crypto/modes', ); # If I were feeling more clever, these could probably be extracted @@ -241,18 +243,19 @@ sub fixrules sub copy_scripts { - my ($src, @targets) = @_; + my ($sed, $src, @targets) = @_; my $s = ''; foreach my $t (@targets) { # Copy first so we get file modes... - $s .= "\$(TEST_D)/$t: \$(SRC_D)/$src/$t\n\tcp \$(SRC_D)/$src/$t \$(TEST_D)/$t\n\tsed -e 's/\\.\\.\\/apps/..\\/\$(OUT_D)/' -e 's/\\.\\.\\/util/..\\/\$(TEST_D)/' < \$(SRC_D)/$src/$t > \$(TEST_D)/$t\n\n"; + $s .= "\$(TEST_D)/$t: \$(SRC_D)/$src/$t\n\tcp \$(SRC_D)/$src/$t \$(TEST_D)/$t\n"; + $s .= "\tsed -e 's/\\.\\.\\/apps/..\\/\$(OUT_D)/' -e 's/\\.\\.\\/util/..\\/\$(TEST_D)/' < \$(SRC_D)/$src/$t > \$(TEST_D)/$t\n" if $sed; + $s .= "\n"; } return $s; } - sub get_tests { my ($makefile) = @_; @@ -261,6 +264,7 @@ sub get_tests my %targets; my %deps; my %tests; + my %alltests; while (my $line = ) { chomp $line; @@ -275,14 +279,15 @@ sub get_tests foreach my $t (@t) { $targets{$t} = ''; + $alltests{$t} = undef; } } - if (($line =~ /^(\S+):(.*)$/ && exists $targets{$1}) - || $line =~ /^(test_ss .*):(.*)/) + if (($line =~ /^(?\S+):(?.*)$/ && exists $targets{$1}) + || $line =~ /^(?test_(ss|gen) .*):(?.*)/) { - my $t = $1; - $deps{$t} = $2; + my $t = $+{t}; + $deps{$t} = $+{d}; $deps{$t} =~ s/#.*$//; for (;;) { @@ -301,10 +306,10 @@ sub get_tests } } - delete $targets{test_jpake} if $no_jpake; + delete $alltests{test_jpake} if $no_jpake; delete $targets{test_ige} if $no_ige; - delete $targets{test_md2} if $no_md2; - delete $targets{test_rc5} if $no_rc5; + delete $alltests{test_md2} if $no_md2; + delete $alltests{test_rc5} if $no_rc5; my $tests; foreach my $t (keys %tests) @@ -312,22 +317,11 @@ sub get_tests $tests .= "$t = $tests{$t}\n"; } - my $all = 'test:'; my $each; foreach my $t (keys %targets) { next if $t eq ''; - if ($t =~ /^test_ss/) - { - $t =~ s/\s+/ \$(TEST_D)\//g; - $all .= ' test_ss'; - } - else - { - $all .= " $t"; - } - my $d = $deps{$t}; $d =~ s/\.\.\/apps/\$(BIN_D)/g; $d =~ s/\.\.\/util/\$(TEST_D)/g; @@ -340,12 +334,15 @@ sub get_tests $r =~ s/\.\.\/(\S+)/\$(SRC_D)\/$1/g; $r = fixrules($r); - $each .= "$t: test_scripts $d\n$r\n"; + next if $r eq ''; + + $t =~ s/\s+/ \$(TEST_D)\//g; + + $each .= "$t: test_scripts $d\n\t\@echo '$t test started'\n$r\t\@echo '$t test done'\n\n"; } # FIXME: Might be a clever way to figure out what needs copying my @copies = ( 'bctest', - 'evptests.txt', 'testgen', 'cms-test.pl', 'tx509', @@ -369,21 +366,33 @@ sub get_tests 'v3-cert1.pem', 'v3-cert2.pem', 'testreq2.pem', + 'testp7.pem', + 'pkcs7-1.pem', + 'trsa', + 'testrsa.pem', + 'testsid.pem', + 'testss', ); - my $copies = copy_scripts('test', @copies); + my $copies = copy_scripts(1, 'test', @copies); + $copies .= copy_scripts(0, 'test', ('smcont.txt')); my @utils = ( 'shlib_wrap.sh', 'opensslwrap.sh', ); - $copies .= copy_scripts('util', @utils); + $copies .= copy_scripts(1, 'util', @utils); my @apps = ( 'CA.sh', 'openssl.cnf', ); - $copies .= copy_scripts('apps', @apps); + $copies .= copy_scripts(1, 'apps', @apps); - $scripts = "test_scripts: \$(TEST_D)/CA.sh \$(TEST_D)/opensslwrap.sh \$(TEST_D)/openssl.cnf ocsp\n"; + $copies .= copy_scripts(1, 'crypto/evp', ('evptests.txt')); + + $scripts = "test_scripts: \$(TEST_D)/CA.sh \$(TEST_D)/opensslwrap.sh \$(TEST_D)/openssl.cnf \$(TEST_D)/shlib_wrap.sh ocsp smime\n"; $scripts .= "\nocsp:\n\tcp -R test/ocsp-tests \$(TEST_D)\n"; + $scripts .= "\smime:\n\tcp -R test/smime-certs \$(TEST_D)\n"; + + my $all = 'test: ' . join(' ', keys %alltests); return "$scripts\n$copies\n$tests\n$all\n\n$each"; }