summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/ccache/ccache.mk11
1 files changed, 11 insertions, 0 deletions
diff --git a/package/ccache/ccache.mk b/package/ccache/ccache.mk
index 915544108..393989f54 100644
--- a/package/ccache/ccache.mk
+++ b/package/ccache/ccache.mk
@@ -14,6 +14,17 @@ CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.bz2
HOST_CCACHE_CONF_ENV = \
CC="$(HOSTCC_NOCCACHE)"
+# Force ccache to use its internal zlib. The problem is that without
+# this, ccache would link against the zlib of the build system, but we
+# might build and install a different version of zlib in $(O)/host
+# afterwards, which ccache will pick up. This might break if there is
+# a version mismatch. A solution would be to add host-zlib has a
+# dependency of ccache, but it would require tuning the zlib .mk file
+# to use HOSTCC_NOCCACHE as the compiler. Instead, we take the easy
+# path: tell ccache to use its internal copy of zlib, so that ccache
+# has zero dependency besides the C library.
+HOST_CCACHE_CONF_OPT += ccache_cv_zlib_1_2_3=no
+
# We directly hardcode the cache location into the binary, as it is
# much easier to handle than passing an environment variable.
define HOST_CCACHE_FIX_CCACHE_DIR