summaryrefslogtreecommitdiff
path: root/dev-util/ccache/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-05-17 10:09:17 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-05-17 10:09:17 +0100
commitcef073efdce758fc34155284a2f489d79cdcafa9 (patch)
tree4c027ea9ce1cc79a4548cb82320ea904ab4858b1 /dev-util/ccache/files
parent43f85394ba834267589a4e6478ef419d40e22503 (diff)
gentoo auto-resync : 17:05:2023 - 10:09:17
Diffstat (limited to 'dev-util/ccache/files')
-rw-r--r--dev-util/ccache/files/ccache-4.8-avoid-run-user.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/dev-util/ccache/files/ccache-4.8-avoid-run-user.patch b/dev-util/ccache/files/ccache-4.8-avoid-run-user.patch
new file mode 100644
index 000000000000..51371464509c
--- /dev/null
+++ b/dev-util/ccache/files/ccache-4.8-avoid-run-user.patch
@@ -0,0 +1,34 @@
+Gentoo's sandbox does not whitelist this path by default yet.
+
+(4.1 update:
+https://github.com/ccache/ccache/issues/984
+https://github.com/ccache/ccache/issues/1044
+https://github.com/ccache/ccache/commit/a0edd4294f6a5a2d3f0c7b01273736f975f250e1
+https://github.com/ccache/ccache/commit/ef2e922f9642f943199138447b29ec53fa63ea68
+... gets us closer, but not there yet.)
+
+And see https://github.com/ccache/ccache/discussions/1086#discussioncomment-3327565.
+
+https://bugs.gentoo.org/837362 for 4.6 issue.
+https://bugs.gentoo.org/883799 and https://bugs.gentoo.org/887019 fo 4.8 issue.
+--- a/src/Config.cpp
++++ b/src/Config.cpp
+@@ -1147,17 +1147,5 @@ Config::check_key_tables_consistency()
+ std::string
+ Config::default_temporary_dir() const
+ {
+- static const std::string run_user_tmp_dir = [] {
+-#ifndef _WIN32
+- const char* const xdg_runtime_dir = getenv("XDG_RUNTIME_DIR");
+- if (xdg_runtime_dir && Stat::stat(xdg_runtime_dir).is_directory()) {
+- auto dir = FMT("{}/ccache-tmp", xdg_runtime_dir);
+- if (Util::create_dir(dir) && access(dir.c_str(), W_OK) == 0) {
+- return dir;
+- }
+- }
+-#endif
+- return std::string();
+- }();
+- return !run_user_tmp_dir.empty() ? run_user_tmp_dir : m_cache_dir + "/tmp";
++ return m_cache_dir + "/tmp";
+ }