فهرست منبع

add ccache wrapper

SVN-Revision: 32075
John Crispin 13 سال پیش
والد
کامیت
a53b084e49
4فایلهای تغییر یافته به همراه20 افزوده شده و 2 حذف شده
  1. 6 2
      rules.mk
  2. 10 0
      tools/ccache/Makefile
  3. 2 0
      tools/ccache/files/ccache_cc
  4. 2 0
      tools/ccache/files/ccache_cxx

+ 6 - 2
rules.mk

@@ -188,8 +188,12 @@ INSTALL_DATA:=install -m0644
 INSTALL_CONF:=install -m0600
 
 ifneq ($(CONFIG_CCACHE),)
-  TARGET_CC:= ccache $(TARGET_CC)
-  TARGET_CXX:= ccache $(TARGET_CXX)
+  TARGET_CC_NOCACHE:=$(TARGET_CC)
+  TARGET_CXX_NOCACHE:=$(TARGET_CXX)
+  export TARGET_CC_NOCACHE
+  export TARGET_CXX_NOCACHE
+  TARGET_CC:= ccache_cc
+  TARGET_CXX:= ccache_cxx
   HOSTCC:= ccache $(HOSTCC)
 endif
 

+ 10 - 0
tools/ccache/Makefile

@@ -17,6 +17,11 @@ PKG_CAT:=zcat
 
 include $(INCLUDE_DIR)/host-build.mk
 
+define Host/Install/ccache
+	$(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
+	$(CP) ./files/* $(STAGING_DIR_HOST)/bin/
+endef
+
 ifneq ($(strip $(shell which ccache >/dev/null && echo found)),found)
   define Host/Compile
 	$(MAKE) CC="$(HOSTCC_NOCACHE)" -C $(HOST_BUILD_DIR)
@@ -26,6 +31,10 @@ ifneq ($(strip $(shell which ccache >/dev/null && echo found)),found)
 	-$(MAKE) -C $(HOST_BUILD_DIR) uninstall
 	$(call Host/Clean/Default)
   endef
+  define Host/Install
+	$(call Host/Install/Default)
+	$(call Host/Install/ccache)
+  endef
 else
   define Host/Prepare
   endef
@@ -34,6 +43,7 @@ else
   define Host/Compile
   endef
   define Host/Install
+	$(call Host/Install/ccache)
   endef
   define Host/Clean
   endef

+ 2 - 0
tools/ccache/files/ccache_cc

@@ -0,0 +1,2 @@
+#!/bin/sh
+exec ccache "${TARGET_CC_NOCACHE}" "$@"

+ 2 - 0
tools/ccache/files/ccache_cxx

@@ -0,0 +1,2 @@
+#!/bin/sh
+exec ccache "${TARGET_CXX_NOCACHE}" "$@"