diff options
author | Richard Levitte <levitte@openssl.org> | 2018-09-10 02:21:40 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2018-09-12 01:59:45 +0200 |
commit | bec2db1809df52f6e6548e7e883cdc7fec79964a (patch) | |
tree | 95d85b5ff53c06be60e16f77170e1692170bdfa3 /Configurations | |
parent | 609e4be88e63e489c32438b3b0872fd891829301 (diff) | |
download | openssl-bec2db1809df52f6e6548e7e883cdc7fec79964a.zip openssl-bec2db1809df52f6e6548e7e883cdc7fec79964a.tar.gz openssl-bec2db1809df52f6e6548e7e883cdc7fec79964a.tar.bz2 |
Configure: Name object files according to the product they are part of
This will allow to have different object files for different products,
even if they share the same source code, and possibly different builds
for those different object files.
For example, one can have something like this:
SOURCES[libfoo]=cookie.c
INCLUDES[libfoo]=include/foo
SOURCES[libbar]=cookie.c
INCLUDES[libbar]=include/bar
This would mean that the object files and libraries would be build
somewhat like this:
$(CC) -Iinclude/foo -o libfoo-lib-cookie.o cookie.c
$(AR) $(ARFLAGS) libfoo.a libfoo-lib-cookie.o
$(CC) -Iinclude/bar -o libbar-lib-cookie.o cookie.c
$(AR) $(ARFLAGS) libbar.a libbar-lib-cookie.o
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7159)
Diffstat (limited to 'Configurations')
-rw-r--r-- | Configurations/common.tmpl | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/Configurations/common.tmpl b/Configurations/common.tmpl index ad67591..246f18a 100644 --- a/Configurations/common.tmpl +++ b/Configurations/common.tmpl @@ -125,8 +125,7 @@ unless ($disabled{shared} || $lib =~ /\.a$/) { $OUT .= libobj2shlib(shlib => $unified_info{sharednames}->{$lib}, lib => $lib, - objs => [ @{$unified_info{shared_sources}->{$lib}}, - @{$unified_info{sources}->{$lib}} ], + objs => $unified_info{shared_sources}->{$lib}, deps => [ reducedepends(resolvedepends($lib)) ], installed => is_installed($lib)); foreach ((@{$unified_info{shared_sources}->{$lib}}, @@ -155,12 +154,10 @@ my $lib = shift; return "" if $cache{$lib}; $OUT .= obj2dso(lib => $lib, - objs => [ @{$unified_info{sources}->{$lib}}, - @{$unified_info{shared_sources}->{$lib}} ], + objs => $unified_info{shared_sources}->{$lib}, deps => [ resolvedepends($lib) ], installed => is_installed($lib)); - foreach ((@{$unified_info{sources}->{$lib}}, - @{$unified_info{shared_sources}->{$lib}})) { + foreach (@{$unified_info{shared_sources}->{$lib}}) { doobj($_, $lib, intent => "dso", installed => is_installed($lib)); } $cache{$lib} = 1; |