VMS: turning off CALL_DEBUG isn't possible on Alpha

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2962)
This commit is contained in:
Richard Levitte 2017-03-15 17:10:48 +01:00
parent d1da335c55
commit a2880aec73
2 changed files with 22 additions and 7 deletions

View file

@ -661,7 +661,7 @@ EOF
$x =~ s|(\.OLB)|$1/LIB|; $x =~ s|(\.OLB)|$1/LIB|;
"WRITE OPT_FILE \"$x\"" } @deps) "WRITE OPT_FILE \"$x\"" } @deps)
|| "\@ !"; || "\@ !";
return <<"EOF"; return <<"EOF"
$shlib.EXE : $lib.OLB $deps $ordinalsfile $shlib.EXE : $lib.OLB $deps $ordinalsfile
\$(PERL) $mkdef_pl "$mkdef_key" "VMS" > $shlib.SYMVEC-tmp \$(PERL) $mkdef_pl "$mkdef_key" "VMS" > $shlib.SYMVEC-tmp
\$(PERL) $translatesyms_pl \$(BLDDIR)CXX\$DEMANGLER_DB. < $shlib.SYMVEC-tmp > $shlib.SYMVEC \$(PERL) $translatesyms_pl \$(BLDDIR)CXX\$DEMANGLER_DB. < $shlib.SYMVEC-tmp > $shlib.SYMVEC
@ -673,10 +673,13 @@ $shlib.EXE : $lib.OLB $deps $ordinalsfile
$write_opt $write_opt
CLOSE OPT_FILE CLOSE OPT_FILE
LINK \$(LDFLAGS)/SHARE=\$\@ $shlib.OPT/OPT \$(EX_LIBS) LINK \$(LDFLAGS)/SHARE=\$\@ $shlib.OPT/OPT \$(EX_LIBS)
SET IMAGE/FLAGS=(NOCALL_DEBUG) \$\@
DELETE $shlib.SYMVEC;* DELETE $shlib.SYMVEC;*
PURGE $shlib.EXE,$shlib.OPT,$shlib.MAP PURGE $shlib.EXE,$shlib.OPT,$shlib.MAP
EOF EOF
. ($config{target} =~ m|alpha| ? "" : <<"EOF"
SET IMAGE/FLAGS=(NOCALL_DEBUG) \$\@
EOF
);
} }
sub obj2dso { sub obj2dso {
my %args = @_; my %args = @_;
@ -705,7 +708,7 @@ EOF
$x =~ s|(\.OLB)|$1/LIB|; $x =~ s|(\.OLB)|$1/LIB|;
"WRITE OPT_FILE \"$x\"" } @deps) "WRITE OPT_FILE \"$x\"" } @deps)
|| "\@ !"; || "\@ !";
return <<"EOF"; return <<"EOF"
$lib.EXE : $deps $lib.EXE : $deps
OPEN/WRITE/SHARE=READ OPT_FILE $lib.OPT OPEN/WRITE/SHARE=READ OPT_FILE $lib.OPT
TYPE $engine_opt /OUTPUT=OPT_FILE: TYPE $engine_opt /OUTPUT=OPT_FILE:
@ -713,9 +716,12 @@ $lib.EXE : $deps
$write_opt2 $write_opt2
CLOSE OPT_FILE CLOSE OPT_FILE
LINK \$(LDFLAGS)/SHARE=\$\@ $lib.OPT/OPT \$(EX_LIBS) LINK \$(LDFLAGS)/SHARE=\$\@ $lib.OPT/OPT \$(EX_LIBS)
SET IMAGE/FLAGS=(NOCALL_DEBUG) \$\@
- PURGE $lib.EXE,$lib.OPT,$lib.MAP - PURGE $lib.EXE,$lib.OPT,$lib.MAP
EOF EOF
. ($config{target} =~ m|alpha| ? "" : <<"EOF"
SET IMAGE/FLAGS=(NOCALL_DEBUG) \$\@
EOF
);
} }
sub obj2lib { sub obj2lib {
my %args = @_; my %args = @_;
@ -770,7 +776,7 @@ EOF
# by default), and so someone building doesn't have to worry where it # by default), and so someone building doesn't have to worry where it
# isn't necessary. If there are other warnings, however, we show them # isn't necessary. If there are other warnings, however, we show them
# and let it break the build. # and let it break the build.
return <<"EOF"; return <<"EOF"
$bin.EXE : $deps $bin.EXE : $deps
OPEN/WRITE/SHARE=READ OPT_FILE $bin.OPT OPEN/WRITE/SHARE=READ OPT_FILE $bin.OPT
$write_opt1 $write_opt1
@ -795,9 +801,12 @@ $bin.EXE : $deps
-@ IF .NOT. link_severity THEN TYPE $bin.LINKLOG -@ IF .NOT. link_severity THEN TYPE $bin.LINKLOG
-@ DELETE $bin.LINKLOG;* -@ DELETE $bin.LINKLOG;*
@ IF .NOT. link_severity THEN SPAWN/WAIT/NOLOG EXIT 'link_status' @ IF .NOT. link_severity THEN SPAWN/WAIT/NOLOG EXIT 'link_status'
SET IMAGE/FLAGS=(NOCALL_DEBUG) $bin.EXE
- PURGE $bin.EXE,$bin.OPT - PURGE $bin.EXE,$bin.OPT
EOF EOF
. ($config{target} =~ m|alpha| ? "" : <<"EOF"
SET IMAGE/FLAGS=(NOCALL_DEBUG) \$\@
EOF
);
} }
sub in2script { sub in2script {
my %args = @_; my %args = @_;

View file

@ -64,13 +64,19 @@
prompt. Unfortunately, this disrupts all other uses, such as running prompt. Unfortunately, this disrupts all other uses, such as running
test programs in the test framework. test programs in the test framework.
Generally speaking, if you build for debugging, only use the programs
directly for debugging. Do not try to use them from a script, such
as running the test suite.
*The following is not available on Alpha*
As a compromise, we're turning off the flag that makes the debugger As a compromise, we're turning off the flag that makes the debugger
start automatically. If there is a program that you need to debug, start automatically. If there is a program that you need to debug,
you need to turn that flag back on first, for example: you need to turn that flag back on first, for example:
$ set image /flag=call_debug [.test]evp_test.exe $ set image /flag=call_debug [.test]evp_test.exe
Then just run it and you will find yourself in a debuggin session. Then just run it and you will find yourself in a debugging session.
When done, we recomment that you turn that flag back off: When done, we recomment that you turn that flag back off:
$ set image /flag=nocall_debug [.test]evp_test.exe $ set image /flag=nocall_debug [.test]evp_test.exe