[PATCH resend] Makefile: Use computed header dependencies if the compiler supports it
- From
Fredrik Kuivinen <frekui@gmail.com>
- Date
- Aug 14, 2011, 18:45 UTC
- Message-ID
- <1313347512-7815-1-git-send-email-frekui@gmail.com>
Previously you had to manually define COMPUTE_HEADER_DEPENDENCIES to enable this feature. It seemed a bit sad that such a useful feature had to be enabled manually.
Signed-off-by: Fredrik Kuivinen <frekui@gmail.com> ---
This is a resend, it has been rebased on top of master but otherwise the same patch was sent 2011-06-11. Jonathan Nieder has been added to the Cc list as he implemented the computed header dependencies feature.
Makefile | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile index 8dd782f..c289074 100644 --- a/Makefile +++ b/Makefile @@ -250,10 +250,6 @@ all:: # DEFAULT_EDITOR='$GIT_FALLBACK_EDITOR', # DEFAULT_EDITOR='"C:\Program Files\Vim\gvim.exe" --nofork' # -# Define COMPUTE_HEADER_DEPENDENCIES if your compiler supports the -MMD option -# and you want to avoid rebuilding objects when an unrelated header file -# changes. -# # Define CHECK_HEADER_DEPENDENCIES to check for problems in the hard-coded # dependency rules. # @@ -1236,6 +1232,15 @@ endif ifdef CHECK_HEADER_DEPENDENCIES COMPUTE_HEADER_DEPENDENCIES = USE_COMPUTED_HEADER_DEPENDENCIES = +else +dep_check = $(shell sh -c \ + ': > ++empty.c; \ + $(CC) -c -MF /dev/null -MMD -MP ++empty.c -o /dev/null 2>&1; \ + echo $$?; \ + $(RM) ++empty.c') +ifeq ($(dep_check),0) +COMPUTE_HEADER_DEPENDENCIES=YesPlease +endif endif ifdef COMPUTE_HEADER_DEPENDENCIES
-- 1.7.5.3.368.g8b1b7.dirty