]> git.ipfire.org Git - thirdparty/ccache.git/commitdiff
hash also Clang plugins
authorLubos Lunak <l.lunak@suse.cz>
Thu, 26 Jul 2012 12:45:16 +0000 (14:45 +0200)
committerJoel Rosdahl <joel@rosdahl.net>
Mon, 30 Jul 2012 20:13:08 +0000 (22:13 +0200)
ccache.c

index 50b426041d0c8cbb220b67f62a3e896ccb74d069..738c022f3638acdb838d0904f61dc91d45e92bc1 100644 (file)
--- a/ccache.c
+++ b/ccache.c
@@ -972,6 +972,16 @@ calculate_object_hash(struct args *args, struct mdfour *hash, int direct_mode)
                        continue;
                }
 
+               if (str_eq(args->argv[i], "-Xclang")
+                   && i + 3 < args->argc
+                   && str_eq(args->argv[i+1], "-load")
+                   && str_eq(args->argv[i+2], "-Xclang")
+                   && stat(args->argv[i+3], &st) == 0) {
+                       hash_delimiter(hash, "plugin");
+                       hash_compiler(hash, &st, args->argv[i+3], false);
+                       continue;
+               }
+
                /* All other arguments are included in the hash. */
                hash_delimiter(hash, "arg");
                hash_string(hash, args->argv[i]);