lmi-commits
[Top][All Lists]
Advanced

[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)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]