Commit ccce3e1d authored by Richard Levitte's avatar Richard Levitte
Browse files

Configure: Recognise .rc and .def / .map / .opt as source files



This makes it possible to add build.info statements for using resource
files as well as linker scripts (.def for Windows, .map for Unix, and
.opt for VMS) is if they were source files.  This requires changes in
the build file templates.

Reviewed-by: default avatarAndy Polyakov <appro@openssl.org>
Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/4840)
parent 793077d0
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -1875,14 +1875,27 @@ EOF
                if (! -f $s) {
                    $s = cleanfile($buildd, $_, $blddir);
                }
                # We recognise C++, C and asm files

                if ($s =~ /\.(cc|cpp|c|s|S)$/) {
                    # We recognise C++, C and asm files
                    my $o = $_;
                    $o =~ s/\.[csS]$/.o/; # C and assembler
                    $o =~ s/\.(cc|cpp)$/_cc.o/; # C++
                    $o = cleanfile($buildd, $o, $blddir);
                    $unified_info{shared_sources}->{$ddest}->{$o} = 1;
                    $unified_info{sources}->{$o}->{$s} = 1;
                } elsif ($s =~ /\.rc$/) {
                    # We also recognise resource files
                    my $o = $_;
                    $o =~ s/\.rc$/.res/; # Resource configuration
                    my $o = cleanfile($buildd, $o, $blddir);
                    $unified_info{shared_sources}->{$ddest}->{$o} = 1;
                    $unified_info{sources}->{$o}->{$s} = 1;
                } elsif ($s =~ /\.(def|map|opt)$/) {
                    # We also recognise .def / .map / .opt files
                    # We know they are generated files
                    my $def = cleanfile($buildd, $s, $blddir);
                    $unified_info{shared_sources}->{$ddest}->{$def} = 1;
                } else {
                    die "unrecognised source file type for shared library: $s\n";
                }