From bec2db1809df52f6e6548e7e883cdc7fec79964a Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Mon, 10 Sep 2018 02:21:40 +0200 Subject: 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 Reviewed-by: Tim Hudson (Merged from https://github.com/openssl/openssl/pull/7159) --- Configurations/common.tmpl | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'Configurations') diff --git a/Configurations/common.tmpl b/Configurations/common.tmpl index ad67591e9d..246f18a4c1 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; -- cgit v1.2.3