From f113712ed586e22bc577e69fa4a170cea825dcd2 Mon Sep 17 00:00:00 2001
From: bdrewery <bdrewery@FreeBSD.org>
Date: Fri, 3 Feb 2017 21:58:42 +0000
Subject: - Fix regression from last commit with -Wp

Obtained from:	https://github.com/ccache/ccache/commit/3ba2ca78f9bad5b432b3ebe7095bd8bffbdf8a30
MFH:		2017Q1
---
 devel/ccache/Makefile                             |  2 +-
 devel/ccache/files/patch-CCACHE_CPP2_Wp_MT-fix-Wp | 23 +++++++++++++++++++++++
 2 files changed, 24 insertions(+), 1 deletion(-)
 create mode 100644 devel/ccache/files/patch-CCACHE_CPP2_Wp_MT-fix-Wp

(limited to 'devel')

diff --git a/devel/ccache/Makefile b/devel/ccache/Makefile
index fbed6b4401b5..dd30e6a9d692 100644
--- a/devel/ccache/Makefile
+++ b/devel/ccache/Makefile
@@ -3,7 +3,7 @@
 
 PORTNAME=	ccache
 PORTVERSION=	3.2.5
-PORTREVISION=	3
+PORTREVISION=	4
 CATEGORIES=	devel
 MASTER_SITES=	http://www.samba.org/ftp/ccache/ \
 		LOCAL/bdrewery
diff --git a/devel/ccache/files/patch-CCACHE_CPP2_Wp_MT-fix-Wp b/devel/ccache/files/patch-CCACHE_CPP2_Wp_MT-fix-Wp
new file mode 100644
index 000000000000..96038da238fb
--- /dev/null
+++ b/devel/ccache/files/patch-CCACHE_CPP2_Wp_MT-fix-Wp
@@ -0,0 +1,23 @@
+diff --git a/ccache.c b/ccache.c
+index 5635cc1..ddbc822 100644
+--- ccache.c
++++ ccache.c
+@@ -2249,9 +2249,15 @@ cc_process_args(struct args *args, struct args **preprocessor_args,
+ 				output_dep = make_relative_path(x_strdup(argv[i] + 9));
+ 				args_add(dep_args, argv[i]);
+ 				continue;
+-			} else if (str_startswith(argv[i], "-Wp,-M")) {
+-				/* -MF, -MP, -MQ, -MT, etc. TODO: Make argument to MF/MQ/MT
+-				 * relative. */
++			} else if (str_eq(argv[i], "-Wp,-MP")
++			           || (strlen(argv[i]) > 8
++			               && str_startswith(argv[i], "-Wp,-M")
++			               && argv[i][7] == ','
++			               && (argv[i][6] == 'F'
++			                   || argv[i][6] == 'Q'
++			                   || argv[i][6] == 'T')
++			               && !strchr(argv[i] + 8, ','))) {
++				/* TODO: Make argument to MF/MQ/MT relative. */
+ 				args_add(dep_args, argv[i]);
+ 				continue;
+ 			} else if (conf->direct_mode) {
-- 
cgit