diff options
author | Richard Levitte <levitte@openssl.org> | 2022-10-05 12:47:32 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2022-10-06 16:06:44 +0200 |
commit | 1ec0acf264652bd981e95842723e5414d634cd93 (patch) | |
tree | d731a1f647871b48d7e638ef796737e7c5b956a5 /Configurations/descrip.mms.tmpl | |
parent | 5139dec255d0e2f991083cba9d9c62dbe6637046 (diff) |
VMS: For executables, process the use of /INCLUDE=main a bit differently
The way it was implemented didn't play well with perl's join(), so it's
reimplemented a bit differently.
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/19347)
Diffstat (limited to 'Configurations/descrip.mms.tmpl')
-rw-r--r-- | Configurations/descrip.mms.tmpl | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index 2de2d6d633..c777bc636e 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -1352,14 +1352,15 @@ EOF (map { my $x = $_ =~ /\[/ ? $_ : "[]".$_; "\@ WRITE OPT_FILE \"$x" } @objs), (map { my $x = ($_->{lib} =~ /\[/) ? $_->{lib} : "[]".$_->{lib}; - # Special hack to include the MAIN object - # module explicitly. This will only be done - # if there isn't a 'main' in the program's - # object modules already. - my $main = $_->{attrs}->{has_main} - ? '/INCLUDE=main' : ''; - ( "\@ IF nomain THEN WRITE OPT_FILE \"$x/LIB$main", - "\@ IF .NOT. nomain THEN WRITE OPT_FILE \"$x/LIB" ) } + # Special hack to include the MAIN object module + # explicitly, if it's known that there is one. + # |incmain| is defined in the rule generation further + # down, with the necessary /INCLUDE=main option unless + # the program has been determined to have a main function + # already. + $_->{attrs}->{has_main} + ? "\@ WRITE OPT_FILE \"$x/LIB''incmain'" + : "\@ WRITE OPT_FILE \"$x/LIB" } grep { $_->{lib} =~ m|\.OLB$| } @deps)) ."\""; @@ -1391,6 +1392,8 @@ EOF return <<"EOF" $bin : $deps $analyse_objs + @ incmain = "/INCLUDE=main" + @ IF .NOT. nomain THEN incmain = "" @ OPEN/WRITE/SHARE=READ OPT_FILE $binname.OPT $write_opt1 $write_opt2 |