[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master a1b50b22 5/6: Use ccache for lmi code
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master a1b50b22 5/6: Use ccache for lmi code |
Date: |
Tue, 21 Feb 2023 13:13:19 -0500 (EST) |
branch: master
commit a1b50b22daafeed093812e42b0dd6cfaa8333d0e
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>
Use ccache for lmi code
The initial "ccache " is removed from commands that would necessarily
be cache misses:
- testing gcc version; and
- generating a dependencies file for an msw "resource" file with '-MM',
an option that 'ccache' deliberately does not support.
---
compiler_clang_version.make | 4 ++--
compiler_gcc_version.make | 12 ++++++------
workhorse.make | 3 ++-
3 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/compiler_clang_version.make b/compiler_clang_version.make
index c06a76e9..153345ca 100644
--- a/compiler_clang_version.make
+++ b/compiler_clang_version.make
@@ -26,9 +26,9 @@ $(srcdir)/compiler_clang_version.make:: ;
# Aliases for tools used in targets elsewhere.
AR := ar
-CC := clang
+CC := ccache clang
#CPP # Not used.
-CXX := clang++
+CXX := ccache clang++
LD := clang++
# For GNU/Linux, $(RC) is never invoked.
RC := windres
diff --git a/compiler_gcc_version.make b/compiler_gcc_version.make
index 33526259..efcbe307 100644
--- a/compiler_gcc_version.make
+++ b/compiler_gcc_version.make
@@ -26,9 +26,9 @@ $(srcdir)/compiler_gcc_version.make:: ;
# Aliases for tools used in targets elsewhere.
AR := $(gcc_proclitic)ar
-CC := $(gcc_proclitic)gcc
-CPP := $(gcc_proclitic)cpp
-CXX := $(gcc_proclitic)g++
+CC := ccache $(gcc_proclitic)gcc
+CPP := ccache $(gcc_proclitic)cpp
+CXX := ccache $(gcc_proclitic)g++
LD := $(gcc_proclitic)g++
# For GNU/Linux, $(RC) is never invoked.
RC := $(gcc_proclitic)windres
@@ -51,13 +51,13 @@ GNU_CXX := $(CXX)
# version 7.x.0 as "7.x-win32".
ifeq (gcc,$(LMI_COMPILER))
- gcc_version := $(subst -win32,.0,$(shell $(CXX) -dumpversion))
+ gcc_version := $(subst -win32,.0,$(shell $(subst ccache ,,$(CXX))
-dumpversion))
endif
# These are defined even for toolchains other than gcc.
-gnu_cpp_version := $(subst -win32,.0,$(shell $(GNU_CPP) -dumpversion))
-gnu_cxx_version := $(subst -win32,.0,$(shell $(GNU_CXX) -dumpversion))
+gnu_cpp_version := $(subst -win32,.0,$(shell $(subst ccache ,,$(GNU_CPP))
-dumpversion))
+gnu_cxx_version := $(subst -win32,.0,$(shell $(subst ccache ,,$(GNU_CXX))
-dumpversion))
ifeq (10,$(gnu_cpp_version))
else ifeq (10.0,$(gnu_cpp_version))
diff --git a/workhorse.make b/workhorse.make
index 2bcb3a05..5196ea21 100644
--- a/workhorse.make
+++ b/workhorse.make
@@ -410,9 +410,10 @@ physical_closure_files := \
$(CXX) $(MAKEDEPEND_FLAGS) -c $(ALL_CPPFLAGS) $(ALL_CXXFLAGS) $< -o$@
$($(MAKEDEPEND_COMMAND))
+# ccache doesn't support '-MM'
%.o: %.rc
$(RC) -o $@ $(ALL_RCFLAGS) -i $<
- $(MAKEDEPEND_NON_GCC_COMMAND)
+ $(subst ccache ,,$(MAKEDEPEND_NON_GCC_COMMAND))
%$(EXEEXT):
$(LD) -o $@ $^ $(ALL_LDFLAGS)
- [lmi-commits] [lmi] master updated (89b7e1eb -> 3f177433), Greg Chicares, 2023/02/21
- [lmi-commits] [lmi] master 613f9fcf 3/6: Make ccache ignore date and time macros, Greg Chicares, 2023/02/21
- [lmi-commits] [lmi] master f68f6e4d 4/6: Filter out ccache commands, Greg Chicares, 2023/02/21
- [lmi-commits] [lmi] master 3f177433 6/6: Assert a precondition, Greg Chicares, 2023/02/21
- [lmi-commits] [lmi] master a1b50b22 5/6: Use ccache for lmi code,
Greg Chicares <=
- [lmi-commits] [lmi] master 7c0e38bd 1/6: Establish a shared ccache directory, Greg Chicares, 2023/02/21
- [lmi-commits] [lmi] master a59de2bf 2/6: Forestall a ccache issue, Greg Chicares, 2023/02/21