From 7e01266fa69db90533e53a37cc83d0df99b1c08f Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Tue, 23 Oct 2018 10:35:48 +0200 Subject: [PATCH] Windows build: build foo.d after foo.obj We made the build of foo.obj depend on foo.d, meaning the latter gets built first. Unfortunately, the way the compiler works, we are forced to redirect all output to foo.d, meaning that if the source contains an error, the build fails without showing those errors. We therefore remove the dependency and force the build of foo.d to always happen after build of foo.obj. Reviewed-by: Tim Hudson (Merged from https://github.com/openssl/openssl/pull/7469) (cherry picked from commit ecc347f5f53a9f2edc2805d50cba07db64267e8a) --- Configurations/windows-makefile.tmpl | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/Configurations/windows-makefile.tmpl b/Configurations/windows-makefile.tmpl index 13368fc160..c270549c00 100644 --- a/Configurations/windows-makefile.tmpl +++ b/Configurations/windows-makefile.tmpl @@ -594,16 +594,14 @@ $obj$objext: $deps \$(CC) /EP /D__ASSEMBLER__ $cflags $srcs > \$@.asm && \$(AS) $asflags \$(ASOUTFLAG)\$\@ \$@.asm EOF } - return <<"EOF" if (!$disabled{makedepend}); -$obj$depext: $deps - \$(CC) $cflags /Zs /showIncludes $srcs 2>&1 > $obj$depext -$obj$objext: $obj$depext - \$(CC) $cflags -c \$(COUTFLAG)\$\@ $srcs -EOF - return <<"EOF" if ($disabled{makedepend}); + my $recipe = <<"EOF"; $obj$objext: $deps \$(CC) $cflags -c \$(COUTFLAG)\$\@ $srcs EOF + $recipe .= <<"EOF" unless $disabled{makedepend}; + \$(CC) $cflags /Zs /showIncludes $srcs 2>&1 > $obj$depext +EOF + return $recipe; } # We *know* this routine is only called when we've configure 'shared'. -- 2.25.1