summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Laurie <ben@links.org>2016-06-26 13:09:23 +0100
committerBen Laurie <ben@links.org>2016-07-02 13:57:07 +0100
commit27c40a93175d4dcb559325db9354910b3d16cd4e (patch)
tree5bec609aae4e17bf8186a4a58321ac4a67a38917
parentfe964f0c88f6780fd30b26e306484b981b0a8480 (diff)
Ensure that global dependencies are built first, even for parallell builds
Also, make sure that per-file deps are included in the build, even if previous builds have failed. Reviewed-by: Richard Levitte <levitte@openssl.org>
-rw-r--r--Configurations/unix-Makefile.tmpl27
1 files changed, 15 insertions, 12 deletions
diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl
index 6dbed436f2..34ba56a497 100644
--- a/Configurations/unix-Makefile.tmpl
+++ b/Configurations/unix-Makefile.tmpl
@@ -56,6 +56,13 @@
return $engine . $dsoext;
}
+ # This makes sure things get built in the order they need
+ # to. You're welcome.
+ sub dependmagic {
+ my $target = shift;
+
+ return "$target: build_generated\n\t\$(MAKE) depend && \$(MAKE) _$target\n_$target";
+ }
'';
-}
PLATFORM={- $config{target} -}
@@ -210,25 +217,21 @@ PROCESSOR= {- $config{processor} -}
# The main targets ###################################################
-all: build_generated \
- build_libs_nodep build_engines_nodep build_apps_nodep \
- depend link-utils
+{- dependmagic('all'); -}: build_libs_nodep build_engines_nodep build_apps_nodep link-utils
+{- dependmagic('build_libs'); -}: build_libs_nodep
+{- dependmagic('build_engines'); -}: build_engines_nodep
+{- dependmagic('build_apps'); -}: build_apps_nodep
+{- dependmagic('build_tests'); -}: build_tests_nodep
-build_libs: build_generated build_libs_nodep depend
+build_generated: $(GENERATED_MANDATORY)
build_libs_nodep: libcrypto.pc libssl.pc openssl.pc
-build_engines: build_generated build_engines_nodep depend
build_engines_nodep: $(ENGINES)
-build_apps: build_generated build_apps_nodep depend
build_apps_nodep: $(PROGRAMS) $(SCRIPTS)
-build_tests: build_generated build_tests_nodep depend
build_tests_nodep: $(TESTPROGS)
-build_generated: $(GENERATED_MANDATORY)
-
test: tests
-tests: build_generated \
- build_tests_nodep build_apps_nodep build_engines_nodep \
- depend link-utils
+{- dependmagic('tests'); -}: build_tests_nodep build_apps_nodep \
+ build_engines_nodep link-utils
@ : {- output_off() if $disabled{tests}; "" -}
( cd test; \
SRCTOP=../$(SRCDIR) \