head	1.96;
access;
symbols
	pkgsrc-2026Q1:1.92.0.2
	pkgsrc-2026Q1-base:1.92
	pkgsrc-2025Q4:1.91.0.2
	pkgsrc-2025Q4-base:1.91
	pkgsrc-2025Q3:1.88.0.2
	pkgsrc-2025Q3-base:1.88
	pkgsrc-2025Q2:1.87.0.2
	pkgsrc-2025Q2-base:1.87
	pkgsrc-2025Q1:1.85.0.2
	pkgsrc-2025Q1-base:1.85
	pkgsrc-2024Q4:1.84.0.4
	pkgsrc-2024Q4-base:1.84
	pkgsrc-2024Q3:1.84.0.2
	pkgsrc-2024Q3-base:1.84
	pkgsrc-2024Q2:1.80.0.2
	pkgsrc-2024Q2-base:1.80
	pkgsrc-2024Q1:1.79.0.2
	pkgsrc-2024Q1-base:1.79
	pkgsrc-2023Q4:1.77.0.4
	pkgsrc-2023Q4-base:1.77
	pkgsrc-2023Q3:1.77.0.2
	pkgsrc-2023Q3-base:1.77
	pkgsrc-2023Q2:1.75.0.2
	pkgsrc-2023Q2-base:1.75
	pkgsrc-2023Q1:1.71.0.2
	pkgsrc-2023Q1-base:1.71
	pkgsrc-2022Q4:1.67.0.2
	pkgsrc-2022Q4-base:1.67
	pkgsrc-2022Q3:1.63.0.2
	pkgsrc-2022Q3-base:1.63
	pkgsrc-2022Q2:1.62.0.10
	pkgsrc-2022Q2-base:1.62
	pkgsrc-2022Q1:1.62.0.8
	pkgsrc-2022Q1-base:1.62
	pkgsrc-2021Q4:1.62.0.6
	pkgsrc-2021Q4-base:1.62
	pkgsrc-2021Q3:1.62.0.4
	pkgsrc-2021Q3-base:1.62
	pkgsrc-2021Q2:1.62.0.2
	pkgsrc-2021Q2-base:1.62
	pkgsrc-2021Q1:1.61.0.4
	pkgsrc-2021Q1-base:1.61
	pkgsrc-2020Q4:1.61.0.2
	pkgsrc-2020Q4-base:1.61
	pkgsrc-2020Q3:1.60.0.2
	pkgsrc-2020Q3-base:1.60
	pkgsrc-2020Q2:1.57.0.2
	pkgsrc-2020Q2-base:1.57
	pkgsrc-2020Q1:1.56.0.2
	pkgsrc-2020Q1-base:1.56
	pkgsrc-2019Q4:1.54.0.4
	pkgsrc-2019Q4-base:1.54
	pkgsrc-2019Q3:1.52.0.2
	pkgsrc-2019Q3-base:1.52
	pkgsrc-2019Q2:1.48.0.2
	pkgsrc-2019Q2-base:1.48
	pkgsrc-2019Q1:1.46.0.2
	pkgsrc-2019Q1-base:1.46
	pkgsrc-2018Q4:1.44.0.2
	pkgsrc-2018Q4-base:1.44
	pkgsrc-2018Q3:1.43.0.2
	pkgsrc-2018Q3-base:1.43
	pkgsrc-2018Q2:1.42.0.2
	pkgsrc-2018Q2-base:1.42
	pkgsrc-2018Q1:1.41.0.2
	pkgsrc-2018Q1-base:1.41
	pkgsrc-2017Q4:1.38.0.10
	pkgsrc-2017Q4-base:1.38
	pkgsrc-2017Q3:1.38.0.8
	pkgsrc-2017Q3-base:1.38
	pkgsrc-2017Q2:1.38.0.4
	pkgsrc-2017Q2-base:1.38
	pkgsrc-2017Q1:1.38.0.2
	pkgsrc-2017Q1-base:1.38
	pkgsrc-2016Q4:1.37.0.2
	pkgsrc-2016Q4-base:1.37
	pkgsrc-2016Q3:1.35.0.2
	pkgsrc-2016Q3-base:1.35
	pkgsrc-2016Q2:1.32.0.2
	pkgsrc-2016Q2-base:1.32
	pkgsrc-2016Q1:1.31.0.4
	pkgsrc-2016Q1-base:1.31
	pkgsrc-2015Q4:1.31.0.2
	pkgsrc-2015Q4-base:1.31
	pkgsrc-2015Q3:1.30.0.2
	pkgsrc-2015Q3-base:1.30
	pkgsrc-2015Q2:1.29.0.2
	pkgsrc-2015Q2-base:1.29
	pkgsrc-2015Q1:1.28.0.2
	pkgsrc-2015Q1-base:1.28
	pkgsrc-2014Q4:1.25.0.2
	pkgsrc-2014Q4-base:1.25
	pkgsrc-2014Q3:1.21.0.14
	pkgsrc-2014Q3-base:1.21
	pkgsrc-2014Q2:1.21.0.12
	pkgsrc-2014Q2-base:1.21
	pkgsrc-2014Q1:1.21.0.10
	pkgsrc-2014Q1-base:1.21
	pkgsrc-2013Q4:1.21.0.8
	pkgsrc-2013Q4-base:1.21
	pkgsrc-2013Q3:1.21.0.6
	pkgsrc-2013Q3-base:1.21
	pkgsrc-2013Q2:1.21.0.4
	pkgsrc-2013Q2-base:1.21
	pkgsrc-2013Q1:1.21.0.2
	pkgsrc-2013Q1-base:1.21
	pkgsrc-2012Q4:1.20.0.2
	pkgsrc-2012Q4-base:1.20
	pkgsrc-2012Q3:1.19.0.2
	pkgsrc-2012Q3-base:1.19
	pkgsrc-2012Q2:1.18.0.4
	pkgsrc-2012Q2-base:1.18
	pkgsrc-2012Q1:1.18.0.2
	pkgsrc-2012Q1-base:1.18
	pkgsrc-2011Q4:1.17.0.2
	pkgsrc-2011Q4-base:1.17
	pkgsrc-2011Q3:1.16.0.6
	pkgsrc-2011Q3-base:1.16
	pkgsrc-2011Q2:1.16.0.4
	pkgsrc-2011Q2-base:1.16
	pkgsrc-2011Q1:1.16.0.2
	pkgsrc-2011Q1-base:1.16
	pkgsrc-2010Q4:1.15.0.26
	pkgsrc-2010Q4-base:1.15
	pkgsrc-2010Q3:1.15.0.24
	pkgsrc-2010Q3-base:1.15
	pkgsrc-2010Q2:1.15.0.22
	pkgsrc-2010Q2-base:1.15
	pkgsrc-2010Q1:1.15.0.20
	pkgsrc-2010Q1-base:1.15
	pkgsrc-2009Q4:1.15.0.18
	pkgsrc-2009Q4-base:1.15
	pkgsrc-2009Q3:1.15.0.16
	pkgsrc-2009Q3-base:1.15
	pkgsrc-2009Q2:1.15.0.14
	pkgsrc-2009Q2-base:1.15
	pkgsrc-2009Q1:1.15.0.12
	pkgsrc-2009Q1-base:1.15
	pkgsrc-2008Q4:1.15.0.10
	pkgsrc-2008Q4-base:1.15
	pkgsrc-2008Q3:1.15.0.8
	pkgsrc-2008Q3-base:1.15
	cube-native-xorg:1.15.0.6
	cube-native-xorg-base:1.15
	pkgsrc-2008Q2:1.15.0.4
	pkgsrc-2008Q2-base:1.15
	cwrapper:1.15.0.2
	pkgsrc-2008Q1:1.14.0.2
	pkgsrc-2008Q1-base:1.14
	pkgsrc-2007Q4:1.13.0.2
	pkgsrc-2007Q4-base:1.13
	pkgsrc-2007Q3:1.12.0.2
	pkgsrc-2007Q3-base:1.12
	pkgsrc-2007Q2:1.11.0.6
	pkgsrc-2007Q2-base:1.11
	pkgsrc-2007Q1:1.11.0.4
	pkgsrc-2007Q1-base:1.11
	pkgsrc-2006Q4:1.11.0.2
	pkgsrc-2006Q4-base:1.11
	pkgsrc-2006Q3:1.10.0.12
	pkgsrc-2006Q3-base:1.10
	pkgsrc-2006Q2:1.10.0.10
	pkgsrc-2006Q2-base:1.10
	pkgsrc-2006Q1:1.10.0.8
	pkgsrc-2006Q1-base:1.10
	pkgsrc-2005Q4:1.10.0.6
	pkgsrc-2005Q4-base:1.10
	pkgsrc-2005Q3:1.10.0.4
	pkgsrc-2005Q3-base:1.10
	pkgsrc-2005Q2:1.10.0.2
	pkgsrc-2005Q2-base:1.10
	pkgsrc-2005Q1:1.9.0.4
	pkgsrc-2005Q1-base:1.9
	pkgsrc-2004Q4:1.9.0.2
	pkgsrc-2004Q4-base:1.9
	pkgsrc-2004Q3:1.8.0.6
	pkgsrc-2004Q3-base:1.8
	pkgsrc-2004Q2:1.8.0.4
	pkgsrc-2004Q2-base:1.8
	pkgsrc-2004Q1:1.8.0.2
	pkgsrc-2004Q1-base:1.8
	pkgsrc-2003Q4:1.5.0.2
	pkgsrc-2003Q4-base:1.5
	netbsd-1-6-1:1.3.0.6
	netbsd-1-6-1-base:1.3
	netbsd-1-6:1.3.0.8
	netbsd-1-6-RELEASE-base:1.3
	pkgviews:1.3.0.4
	pkgviews-base:1.3
	buildlink2:1.3.0.2
	buildlink2-base:1.3
	netbsd-1-5-PATCH003:1.2;
locks; strict;
comment	@# @;


1.96
date	2026.05.05.04.20.19;	author adam;	state Exp;
branches;
next	1.95;
commitid	jTtkksH0gnNhZzEG;

1.95
date	2026.04.20.13.05.22;	author adam;	state Exp;
branches;
next	1.94;
commitid	Xtx0Lsi7YVCknHCG;

1.94
date	2026.04.13.09.01.42;	author adam;	state Exp;
branches;
next	1.93;
commitid	KyVWrP2eQT3EfMBG;

1.93
date	2026.03.26.08.59.02;	author adam;	state Exp;
branches;
next	1.92;
commitid	GFBsanW1SSfCOszG;

1.92
date	2026.02.07.18.24.26;	author adam;	state Exp;
branches;
next	1.91;
commitid	Bl99DSQIOqNesttG;

1.91
date	2025.11.27.09.50.18;	author adam;	state Exp;
branches;
next	1.90;
commitid	y5eXJ4DERyMkVakG;

1.90
date	2025.10.02.11.23.14;	author adam;	state Exp;
branches;
next	1.89;
commitid	bkZJgPe9UpzPeZcG;

1.89
date	2025.09.21.18.15.05;	author wiz;	state Exp;
branches;
next	1.88;
commitid	tn5f7O3DThG7SBbG;

1.88
date	2025.09.15.14.41.21;	author adam;	state Exp;
branches;
next	1.87;
commitid	U17J9FyUYaYtSOaG;

1.87
date	2025.05.04.08.53.05;	author adam;	state Exp;
branches;
next	1.86;
commitid	nymwV4CefBvhgzTF;

1.86
date	2025.03.30.08.54.23;	author adam;	state Exp;
branches;
next	1.85;
commitid	2RGsJYrL7uBro4PF;

1.85
date	2025.03.11.13.56.28;	author adam;	state Exp;
branches;
next	1.84;
commitid	33v0LbwQ1vIPFEMF;

1.84
date	2024.08.25.06.18.32;	author wiz;	state Exp;
branches;
next	1.83;
commitid	BcrSL94SO85mvanF;

1.83
date	2024.07.22.17.48.58;	author adam;	state Exp;
branches;
next	1.82;
commitid	Ld6eiYjSB7v4qRiF;

1.82
date	2024.07.16.10.02.01;	author prlw1;	state Exp;
branches;
next	1.81;
commitid	MBUpXRw92xfN13iF;

1.81
date	2024.07.02.08.59.44;	author adam;	state Exp;
branches;
next	1.80;
commitid	d5B271iwMcIh8fgF;

1.80
date	2024.05.30.06.28.20;	author adam;	state Exp;
branches;
next	1.79;
commitid	134DeIOPBkyYlZbF;

1.79
date	2024.02.16.20.14.59;	author adam;	state Exp;
branches;
next	1.78;
commitid	blrR0gC7vuN3hHYE;

1.78
date	2024.01.02.11.59.02;	author adam;	state Exp;
branches;
next	1.77;
commitid	cihmLF9jAYsmYRSE;

1.77
date	2023.08.30.13.01.12;	author adam;	state Exp;
branches;
next	1.76;
commitid	B5gqnZhxGnEWkOCE;

1.76
date	2023.07.18.14.11.14;	author nia;	state Exp;
branches;
next	1.75;
commitid	fR53LOgFr7LO6ixE;

1.75
date	2023.06.26.08.32.42;	author jperkin;	state Exp;
branches;
next	1.74;
commitid	bfRn1TqyKGFyWquE;

1.74
date	2023.06.14.06.54.16;	author adam;	state Exp;
branches;
next	1.73;
commitid	XQJsVVD8wB1AMSsE;

1.73
date	2023.05.22.08.04.59;	author adam;	state Exp;
branches;
next	1.72;
commitid	u3i61FoMW7JCUVpE;

1.72
date	2023.04.25.13.51.49;	author jperkin;	state Exp;
branches;
next	1.71;
commitid	trWrwpi6ic7zHumE;

1.71
date	2023.03.16.07.53.35;	author adam;	state Exp;
branches;
next	1.70;
commitid	x6Hf02Zz2x3r0khE;

1.70
date	2023.03.14.06.30.23;	author adam;	state Exp;
branches;
next	1.69;
commitid	RdOyN5yRzMitB3hE;

1.69
date	2023.01.19.15.41.40;	author gdt;	state Exp;
branches;
next	1.68;
commitid	BjyfAGZZd1hwoaaE;

1.68
date	2023.01.04.02.26.47;	author gutteridge;	state Exp;
branches;
next	1.67;
commitid	mmTCoLCBacX9ta8E;

1.67
date	2022.12.09.16.14.12;	author wiz;	state Exp;
branches
	1.67.2.1;
next	1.66;
commitid	qacpijYbdJPnTT4E;

1.66
date	2022.12.09.11.56.47;	author gdt;	state Exp;
branches;
next	1.65;
commitid	15POQmmkKB4wsS4E;

1.65
date	2022.12.06.16.14.50;	author adam;	state Exp;
branches;
next	1.64;
commitid	gfvpU6SyDwoGZv4E;

1.64
date	2022.12.05.08.29.44;	author adam;	state Exp;
branches;
next	1.63;
commitid	MIN0eF89v0v9rl4E;

1.63
date	2022.06.28.11.31.40;	author wiz;	state Exp;
branches;
next	1.62;
commitid	D2UoJrTHpoHEANJD;

1.62
date	2021.05.24.19.49.54;	author wiz;	state Exp;
branches;
next	1.61;
commitid	qokaiStTApGMcrUC;

1.61
date	2020.10.02.08.08.07;	author adam;	state Exp;
branches;
next	1.60;
commitid	QmwA79aaTghXQiqC;

1.60
date	2020.08.31.18.07.17;	author wiz;	state Exp;
branches;
next	1.59;
commitid	7zxRbfOkDOoxbfmC;

1.59
date	2020.07.27.16.04.38;	author adam;	state Exp;
branches;
next	1.58;
commitid	hmTvhCRCoZrWDJhC;

1.58
date	2020.06.29.13.40.53;	author adam;	state Exp;
branches;
next	1.57;
commitid	kOTni0KxZu1sK7eC;

1.57
date	2020.03.31.16.15.34;	author adam;	state Exp;
branches;
next	1.56;
commitid	TpnTYtpmJIwQuz2C;

1.56
date	2020.03.17.14.49.31;	author adam;	state Exp;
branches;
next	1.55;
commitid	PWUqbPVexiuftL0C;

1.55
date	2020.01.06.16.57.07;	author adam;	state Exp;
branches;
next	1.54;
commitid	VMiqi128O82ssERB;

1.54
date	2019.11.20.09.38.42;	author adam;	state Exp;
branches;
next	1.53;
commitid	irVj8K5JLSTNxzLB;

1.53
date	2019.10.31.10.58.58;	author adam;	state Exp;
branches;
next	1.52;
commitid	vwh6uVOjdpcbD0JB;

1.52
date	2019.09.13.08.07.29;	author adam;	state Exp;
branches;
next	1.51;
commitid	qEhiZGobyPg1ePCB;

1.51
date	2019.08.19.10.13.46;	author adam;	state Exp;
branches;
next	1.50;
commitid	7JpR6OswzxP4JCzB;

1.50
date	2019.08.11.13.18.39;	author wiz;	state Exp;
branches;
next	1.49;
commitid	Ifet9Pg6Qt99ZByB;

1.49
date	2019.07.27.13.40.36;	author nia;	state Exp;
branches;
next	1.48;
commitid	fsA7itVpfuOPBGwB;

1.48
date	2019.05.06.15.06.04;	author adam;	state Exp;
branches;
next	1.47;
commitid	HQFiK4KI09lFI9mB;

1.47
date	2019.04.29.17.13.15;	author adam;	state Exp;
branches;
next	1.46;
commitid	EoPojsrF0PEgEglB;

1.46
date	2019.01.15.09.04.17;	author adam;	state Exp;
branches;
next	1.45;
commitid	RaMPMRE1EYqOhR7B;

1.45
date	2019.01.04.23.43.23;	author adam;	state Exp;
branches;
next	1.44;
commitid	iTIS7mBvaa1gvw6B;

1.44
date	2018.10.30.12.03.52;	author adam;	state Exp;
branches;
next	1.43;
commitid	AJ4Yb8KSo5QPKYXA;

1.43
date	2018.09.05.13.22.21;	author adam;	state Exp;
branches;
next	1.42;
commitid	d4Xs1BQdYzggXUQA;

1.42
date	2018.04.06.08.04.53;	author adam;	state Exp;
branches;
next	1.41;
commitid	a3wbxEE4qywm5mxA;

1.41
date	2018.02.12.08.32.11;	author adam;	state Exp;
branches;
next	1.40;
commitid	T3zP41qcCTsdWxqA;

1.40
date	2018.01.30.05.43.19;	author adam;	state Exp;
branches;
next	1.39;
commitid	Fy9HgWMu3chlqRoA;

1.39
date	2018.01.15.08.07.02;	author adam;	state Exp;
branches;
next	1.38;
commitid	uU6ZBJNP1QRqHWmA;

1.38
date	2017.02.26.10.17.00;	author adam;	state Exp;
branches;
next	1.37;
commitid	K8ZsYYJhOYUNNrHz;

1.37
date	2016.10.31.10.54.30;	author adam;	state Exp;
branches;
next	1.36;
commitid	LturcO5SHdcUNhsz;

1.36
date	2016.10.25.12.12.43;	author adam;	state Exp;
branches;
next	1.35;
commitid	ykE4haIUmrKFqwrz;

1.35
date	2016.09.20.12.36.20;	author adam;	state Exp;
branches;
next	1.34;
commitid	2TVFlLaj9DQvG1nz;

1.34
date	2016.08.28.13.44.18;	author mef;	state Exp;
branches;
next	1.33;
commitid	yRfQCauSOTutN4kz;

1.33
date	2016.08.09.13.14.17;	author mef;	state Exp;
branches;
next	1.32;
commitid	iaCJMLRNFbWWeDhz;

1.32
date	2016.04.25.10.24.48;	author adam;	state Exp;
branches;
next	1.31;
commitid	IJ9cpZlmp3AhIZ3z;

1.31
date	2015.10.09.12.02.20;	author adam;	state Exp;
branches;
next	1.30;
commitid	u0TSqeY27TVoEqEy;

1.30
date	2015.09.13.07.59.45;	author adam;	state Exp;
branches;
next	1.29;
commitid	CxZl10hT8TxV84By;

1.29
date	2015.05.18.10.33.55;	author adam;	state Exp;
branches;
next	1.28;
commitid	h1An5q26P0MVMUly;

1.28
date	2015.03.19.23.01.15;	author tnn;	state Exp;
branches;
next	1.27;
commitid	e4UqXeDgbb0rQgey;

1.27
date	2015.03.19.18.33.43;	author tnn;	state Exp;
branches;
next	1.26;
commitid	8ibd1WqeYPR7nfey;

1.26
date	2015.03.19.18.09.17;	author tnn;	state Exp;
branches;
next	1.25;
commitid	LWrNPimPmjtPefey;

1.25
date	2014.12.15.05.33.26;	author mef;	state Exp;
branches;
next	1.24;
commitid	19xHubYXPe1N462y;

1.24
date	2014.11.20.15.20.40;	author adam;	state Exp;
branches;
next	1.23;
commitid	qUG0lzfxdLKY7WYx;

1.23
date	2014.10.19.20.25.39;	author adam;	state Exp;
branches;
next	1.22;
commitid	jFSSN8Q28bHlQQUx;

1.22
date	2014.10.09.14.06.08;	author wiz;	state Exp;
branches;
next	1.21;
commitid	fBDATFVmQ3454xTx;

1.21
date	2013.01.21.13.52.36;	author wiz;	state Exp;
branches;
next	1.20;

1.20
date	2012.10.31.11.16.44;	author asau;	state Exp;
branches;
next	1.19;

1.19
date	2012.08.27.22.21.44;	author wiz;	state Exp;
branches;
next	1.18;

1.18
date	2012.01.28.15.01.00;	author wiz;	state Exp;
branches;
next	1.17;

1.17
date	2011.11.26.04.39.35;	author sbd;	state Exp;
branches;
next	1.16;

1.16
date	2011.03.02.06.40.51;	author wiz;	state Exp;
branches;
next	1.15;

1.15
date	2008.05.22.14.20.08;	author tnn;	state Exp;
branches;
next	1.14;

1.14
date	2008.03.08.13.49.10;	author joerg;	state Exp;
branches;
next	1.13;

1.13
date	2007.11.18.10.39.56;	author wiz;	state Exp;
branches;
next	1.12;

1.12
date	2007.09.19.06.46.51;	author tron;	state Exp;
branches;
next	1.11;

1.11
date	2006.10.14.08.24.31;	author rillig;	state Exp;
branches;
next	1.10;

1.10
date	2005.04.11.21.45.18;	author tv;	state Exp;
branches;
next	1.9;

1.9
date	2004.10.14.02.39.19;	author xtraeme;	state Exp;
branches;
next	1.8;

1.8
date	2004.03.10.22.41.30;	author minskim;	state Exp;
branches;
next	1.7;

1.7
date	2004.02.12.07.11.43;	author jlam;	state Exp;
branches;
next	1.6;

1.6
date	2004.01.31.21.36.54;	author jlam;	state Exp;
branches;
next	1.5;

1.5
date	2003.07.17.21.29.48;	author grant;	state Exp;
branches;
next	1.4;

1.4
date	2003.07.05.22.06.36;	author chris;	state Exp;
branches;
next	1.3;

1.3
date	2002.05.07.05.22.50;	author tron;	state Exp;
branches;
next	1.2;

1.2
date	2002.04.08.17.39.38;	author wiz;	state Exp;
branches;
next	1.1;

1.1
date	2002.04.08.17.07.53;	author kent;	state Exp;
branches;
next	;

1.67.2.1
date	2023.01.04.12.26.08;	author bsiegert;	state Exp;
branches;
next	;
commitid	YjZXQodpfhMqNd8E;


desc
@@


1.96
log
@ccache: updated to 4.13.6

Ccache 4.13.6

Bug fixes and improvements

Fixed a potential manifest/result cache key collision in MSVC depend mode when compiling a source file with no included files.

Improved robustness when parsing cache entry data structures.

Test improvements

Changed the remote_helper test suite to skip gracefully when the storage test helper is unavailable, avoiding failures when testing a system-installed ccache.
@
text
@# $NetBSD: Makefile,v 1.95 2026/04/20 13:05:22 adam Exp $

DISTNAME=	ccache-4.13.6
CATEGORIES=	devel
MASTER_SITES=	${MASTER_SITE_GITHUB:=ccache/}
GITHUB_RELEASE=	v${PKGVERSION_NOREV}
# We choose gzip to minimize dependencies; some platforms do not have
# xz builtin.

MAINTAINER=	pkgsrc-users@@NetBSD.org
HOMEPAGE=	https://ccache.dev/
COMMENT=	Cache for C/C++ compilers
LICENSE=	gnu-gpl-v3 AND modified-bsd AND public-domain AND zlib

USE_CXX_FEATURES=	c++17 filesystem
USE_LANGUAGES=		c c++
USE_TOOLS+=		perl:build pkg-config
CMAKE_CONFIGURE_ARGS+=	-DENABLE_TESTING=OFF
TEST_TARGET=		test

REPLACE_SH+=		doc/scripts/generate-html
REPLACE_SH+=		doc/scripts/generate-manpage
REPLACE_SH+=		doc/scripts/generate-markdown

LDFLAGS.SunOS+=	-lsocket

.include "../../lang/ruby/rubyversion.mk"
TOOL_DEPENDS+=	${RUBY_PKGPREFIX}-asciidoctor>=2.0.0:../../textproc/ruby-asciidoctor

SUBST_CLASSES+=		rubyver
SUBST_SED.rubyver+=	-e "s/asciidoctor/asciidoctor${RUBY_SUFFIX}/"
SUBST_FILES.rubyver+=	doc/CMakeLists.txt
SUBST_STAGE.rubyver=	pre-configure
SUBST_MESSAGE.rubyver=	Fixing asciidoctor executable name.

.include "../../archivers/zstd/buildlink3.mk"
.include "../../databases/hiredis/buildlink3.mk"
.include "../../devel/cmake/build.mk"
.include "../../devel/xxhash/buildlink3.mk"
.include "../../textproc/fmtlib/buildlink3.mk"
.include "../../mk/atomic64.mk"
.include "../../mk/bsd.pkg.mk"
@


1.95
log
@ccache: updated to 4.13.4

Ccache 4.13.4

New deliverables
- Added musl static binary release for Linux riscv64.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.94 2026/04/13 09:01:42 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.13.4
@


1.94
log
@ccache: updated to 4.13.3

4.13.3

New deliverables

Added glibc binary release for Linux riscv64.

Bug fixes and improvements

Fixed handling of empty responses from remote storage backends: a response with an empty body is now treated as a storage error rather than a cache miss.
Fixed PCH invalidation when the MSVC toolset is updated.
Fixed base_dir path rewriting when using MSVC’s /Yc option: paths are no longer rewritten to relative when creating a precompiled header, since MSVC then does not like relative paths for the /Yc and /FI arguments.
Fixed handling of a directory-less path to the MSVC /FI option.
Added support for -fsanitize-ignorelist (which replaced -fsanitize-blacklist in Clang 13).
Fixed detection of type for compiler with . in the name (e.g. hppa2.0-unknown-linux-gnu-gcc).
Fixed install.sh to correctly use sysconfdir and other configuration variables from the Makefile.

Build improvements

Changed cmake/FindCppHttplib.cmake to use settings from the system’s CMake config if available, supporting systems where cpp-httplib is not provided as a header-only library.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.93 2026/03/26 08:59:02 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.13.3
@


1.93
log
@ccache: updated to 4.13.2

Ccache 4.13.2

New deliverables

Added tar.gz archives for Linux binary releases.
Added installation script for Linux binary releases.

Bug fixes and improvements

Fixed LTO handling when -fno-lto follows -flto: LTO is now properly disabled in this case.
Fixed crash when using MSVC /Yc without /Fp.
Fixed rewriting of MSVC /FI argument to a relative path when base_dir is set.
Improved robustness when parsing broken cache entry files.
Fixed atime/mtime restoration when recompressing a file.

Test improvements

Fixed test failures for remote_helper tests when $PWD is long.
Improved robustness of remote_helper tests on slow systems.
Relaxed util::exec_to_string unit test for portability.
Removed unnecessary, compiler-specific checks in -flto tests.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.92 2026/02/07 18:24:26 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.13.2
@


1.92
log
@ccache: updated to 4.12.3

Ccache 4.12.3

Bug fixes

Fixed hashing of CWD parts of -march=native expansion for Clang.
Fixed lookup of -march=native expansion line for GCC on Windows.
Fixed rewriting of “inlined from” messages when absolute_paths_in_stderr is enabled.
Added support for NVCC long option alternatives to -M/-MD/-MF/-MM/-MMD/-MT.
Fixed setting of UNCACHED_ERR_FD environment variable so that it is only set when executing the compiler.
Fixed leaking of inode cache file descriptor to executed programs.
Fixed errno check for some system calls.

Documentation improvements

Fixed links to installation guide in README.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.91 2025/11/27 09:50:18 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.12.3
d21 4
@


1.91
log
@ccache: updated to 4.12.2

Ccache 4.12.2

Bug fixes

Improved robustness against filesystem path encoding problems on Windows.
Fixed removal of mismatching manifest file.

Build fixes

Fixed build of BLAKE3 for little-endian aarch64 with CMake 3.18/3.19.
Added linking with libsocket on SunOS/Illumos.

Test improvements

Fixed profiling_clang test.

Documentation improvements

Reconciled max-size suffixes in documentation.
Improved documentation on statistics counters and --zero-stats.
Added note that sloppiness values can be whitespace-separated.
Updated URLs in manual and news.

Other

Fixed default sysconf dir in Linux binary releases.
Fixed typo in CcacheVersion.cmake.
Updated C++ standard in .clang-format.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.90 2025/10/02 11:23:14 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.12.2
@


1.90
log
@ccache: updated to 4.12.1

Ccache 4.12.1

Bug fixes

Fixed handling of -Xarch_host/-Xarch_device options.
Fixed saving of current position in fallocate fallback code.
Fixed handling of ENOENT when trying to break a lockfile lock.

Build fixes

Added missing return in copy_file_impl fallback code, fixing a compilation error with tl::expected ≥ 1.2.0 on non-Apple platforms where sendfile(2) is unavailable.

Other

Added missing documentation files to Linux/macOS binary releases.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.89 2025/09/21 18:15:05 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-4.12.1
@


1.89
log
@*: recursive bump for fmtlib 12
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.88 2025/09/15 14:41:21 adam Exp $
d3 1
a3 2
DISTNAME=	ccache-4.12
PKGREVISION=	1
@


1.88
log
@ccache: updated to 4.12

Ccache 4.12

Upgrade notes

CMake version 3.18 or higher is now needed to build ccache.

New deliverables

Added binary releases for Linux aarch64 and Windows aarch64.

New features and improvements

Enabled awareness of long paths and wide characters on Windows by embedding an application manifest in ccache.exe.
Added support for multiple directories in base_dir/CCACHE_BASEDIR.
Added support for Clang compiling CUDA code.
Added support -x cu and -x cuda in Clang CUDA mode.
Added support for Clang’s --config= option.
Added logging of process exit.
Added logging of mtime for files removed from the internal temporary directory.
Added logging of URLs requested by the http storage backend.
Improved logging of manifest lookup.
Improved logging of executed processes.

Removed features

Removed support for avoiding the second preprocessor call (run_second_cpp=false/CCACHE_NOCPP2). This feature added complexity while offering little practical value, as it was rarely used and modern compilers have increasingly poor support for compiling preprocessed source code. The maintenance cost therefore outweighed the benefit of keeping it.

Bug fixes

Fixed handling of compiler arguments so that ccache now preserves their original order, resolving issues where order-sensitive options such as -Werror could be reordered.
Implemented expansion of system-dependent -m{arch,cpu,tune}=native options to prevent false cache hits when compiling on different hardware.
Fixed rewriting of absolute paths to relative (with base_dir in effect) so that paths with dereferenced symlinks are no longer considered as candidates.
Fixed compiler detection to check Clang before GCC for cc/c++ hard links.
Fixed hashing of GCC specs file. Previously specs files located in system directories could not be found.
Added MSVC variables INCLUDE and EXTERNAL_INCLUDE to the input hash since they affect compilation.
Fixed bad conversion from UTF-16 when reading files on Windows.
Removed misleading logging of failure to remove output file in hard link mode.

Build improvements

Made ccache link statically with libatomic when STATIC_LINK is set.
Made ccache buildable with tl-expected 1.2.0.
The bundled copy of libfmt is now used as documented if DEPS=DOWNLOAD.
Switched to use FetchContent_MakeAvailable instead of FetchContent_Populate to avoid warnings with newer CMake versions.
Set variables to avoid a warning from downloaded zstd’s CMake scripts.
Added CMake toolchain file for (cross) compilation to aarch64-w64-mingw32.
Disabled use of BLAKE3 NEON code on big-endian aarch64 since only little-endian is supported.

Test improvements

Added test for tricky preprocessed cache hit case.
Fixed calculation of root directory to avoid crashes on some Windows systems.

Documentation improvements

Documented that the direct mode has now (since ccache 4.10) less risk to read headers from incorrect locations.
Documented that pragma once can be problematic with precompiler headers (PCH).
Added missing documentation of "Unsupported source encoding" statistics counter.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.87 2025/05/04 08:53:05 adam Exp $
d4 1
@


1.87
log
@ccache: updated to 4.11.3

Ccache 4.11.3

Bug fixes

Fixed handling of Apple Clang -Xpreprocessor -fopenmp options (regression in ccache 4.10).

Build improvements

Adapted unit test code to compile with doctest 2.4.12.

Test improvements

Silenced benign compiler warning in the profiling_gcc_10+ suite.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.86 2025/03/30 08:54:23 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.11.3
@


1.86
log
@ccache: updated to 4.11.2

4.11.2

Bug fixes

Reset signal mask and signal defaults when executing compiler. This fixes a problem where interrupting the compilation (e.g. with Ctrl+C) wouldn’t kill the compiler (regression in ccache 4.11).


4.11.1

Bug fixes

Fixed erroneous log file locking on Windows (regression in ccache 4.11).
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.85 2025/03/11 13:56:28 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.11.2
@


1.85
log
@ccache: updated to 4.11

4.11

New features and improvements

Added ability to send arbitrary HTTP headers to HTTP storage.
Added support for MSVC’s /TC and /TP options.
Made the absolute_paths_in_stderr feature also handle MSVC diagnostics messages.
Absolute paths in MSVC diagnostics messages are now rewritten to relative if base_dir is in effect.
Added support for NVCC’s --compile option.
posix_spawn is now used instead execv to execute the compiler on POSIX systems.
Added support for GCC’s -fprofile-prefix-path option.
Added response_file_format config option to control response file format.
Added support for Clang -frandomize-layout-seed-file option.
Improved absolute_paths_in_stderr to recognize more paths patterns.
Added support for the clang-cl option /showIncludes:user.
Added support for Intel’s LLVM-based compilers icx and icx-cl.
A stat call for ~/.ccache is now avoided if CCACHE_DIR is set.
Added Support for .bat and .cmd scripts as the compiler on Windows.
Added support for Clang’s -f{debug,file}-compilation-dir options.
Added knowledge about Clang’s --offload-compress option. This will avoid errors when ccache runs the compiler in preprocessor mode.
Added knowledge about Clang options -fmodules-cache-path, -fmodule-map-file and -fbuild-session-file.

Bug fixes

Improved handling of paths internally, thereby fixing some issues (such as using non-ASCII paths) on Windows.
Fixed interpretation of non-ASCII paths in environment variables on Windows.
Made sure that remote storage keep-alive can be overridden as expected.
Fixed detection of compiler type for hard-linked generic compiler name.
Fixed problems with matching a path with base_dir if either ends with a slash.
The -fprofile-abs-path option is now correctly passed through to GCC.
Writes to the log file are now synchronized.
Command line config options ending with "/ccache" are now handled properly.
Made --trim-method mtime actually use mtime instead of atime.
Fixed a bug where ccache failed to rename raw files correctly for large caches that have more than two cache levels.

Build improvements

Instructed MSVC to accept UTF-8 characters.
Fixed binary patching of sysconfdir for the prebuilt Linux binary.
Added an HTTP_STORAGE_BACKEND build option to make it possible to turn off the http storage backend.
Fixed call to sha256sum on macOS.

Test improvements

Made tests pass in year 2038.
Refreshed some Dockerfiles.

Documentation improvements

Added documentation saying that absolute_paths_in_stderr also applies to stdout.
Fixed description of default cache_dir on non-macOS POSIX systems.
Clarified how ccache’s LRU cleanup works.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.84 2024/08/25 06:18:32 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-4.11
@


1.84
log
@*: replace CMAKE_ARGS with CMAKE_CONFIGURE_ARGS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.83 2024/07/22 17:48:58 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.10.2
d15 3
a17 2
USE_LANGUAGES=	c c++
USE_TOOLS+=	perl:build pkg-config
d19 1
a19 3
TEST_TARGET=	test

USE_CXX_FEATURES+=	filesystem
@


1.83
log
@ccache: updated to 4.10.2

Ccache 4.10.2

Build improvements

* Fixed detection of Fmt version 11 and newer.

Test improvements

* Made the “-fprofile-update=atomic” test only run when that option is supported by the compiler.
* Made the color diagnostics tests work when the user running the tests has a non-POSIX login shell.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.82 2024/07/16 10:02:01 prlw1 Exp $
d17 1
a17 1
CMAKE_ARGS+=	-DENABLE_TESTING=OFF
@


1.82
log
@Revbump for fmtlib 11.0.1
Pointed out by David Gutteridge on pkgsrc-changes
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.81 2024/07/02 08:59:44 adam Exp $
d3 1
a3 2
DISTNAME=	ccache-4.10.1
PKGREVISION=	1
@


1.81
log
@ccache: updated to 4.10.1

Ccache 4.10.1

Bug fixes

- Fixed prefix command lookup from `PATH`.

Build improvements

- Fixed detection and usage of system blake3.
- Find CppHttplib named libhttplib.so as well.
- Removed Xcode assembly workaround for zstd.
- Added bundled subset of Fmt again for convenience.
- Removed no longer needed workaround when building downloaded Zstd.

Documentation improvements

- Clarified that `--set`-config writes to the configuration file.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.80 2024/05/30 06:28:20 adam Exp $
d4 1
@


1.80
log
@ccache: updated to 4.10

Ccache 4.10

New features and improvements

Added support for GCC option -fcallgraph-info.

Added support for GCC option -fprofile-update.

Added support for GCC option -fdump-ipa-clones.

Added support for the MSVC /Yc option (precompiled header).

Added support for the MSVC /Tc<path> and /Tp<path> options (specifying source code type).

Added an experimental inode cache implementation for Windows. This speeds up ccache a lot when many headers are included, both for cache hits and cache misses.

This feature is currently disabled by default, but interested Windows users are encouraged to try it out by setting inode_cache = true.

Added knowledge of Xcode option -ivfsstatcache.

Added support for Apple Clang option -Xpreprocessor -fopenmp in direct mode.

Added knowledge of Emscripten option --em-config.

Reduced the risk of false positive direct mode hits.

Clear direct mode manifest on recache.

Optimized file reading on Windows.

Optimized file copying performed when hard linking or file cloning is enabled.

Use posix_spawn(3) for executing compiler check commands.

The prefix_command and prefix_command_cpp configuration options now allow any prefix, not only programs that exist in PATH. This means that prefix_command now can be a program with arguments.

Added a new incbin sloppiness value for ignoring presence of .incbin directives in the source code.

Added a --print-log-stats option that prints a machine-parsable variant of --show-log-stats.

Added a --format option for selecting JSON or tab format for --print-stats and --print-log-stats.

Added a --print-version option for printing ccache version in machine-parsable format.

The --inspect option now retains access time (atime) of the inspected file if possible.

Bug fixes

Fixed reading of files larger than 231 bytes on some systems where this was a problem.

Improved handling of large files on 32-bit systems.

Nonexistent include files are allowed in preprocessor mode again, fixing regression in ccache 4.9.1.

The Clang -fdiagnostics-color option is now handled again, fixing regression in ccache 4.6.2.

Fixed assertion failure on Windows mapped network drives.

Fixed handling of MSVC options /Fp and /Yu.

Fixed lock file implementation on MSYS2.

The “apparent real path” of the object file is now added to the input hash when using -fprofile-arcs to avoid false positive hits in some scenarios.

When generating profiling information, run_second_cpp is now forced to true so that the coverage report won’t refer to a temporary preprocessed file.

Build improvements

Improved handling of ccache dependencies. A new DEPS CMake variable selects how software library dependencies should be located or retrieved, replacing the old HIREDIS_FROM_INTERNET, ZSTD_FROM_INTERNET and OFFLINE variables. Options are AUTO (the default) for automatically downloading missing dependencies, DOWNLOAD for always downloading and LOCAL for never downloading. See Software library dependencies for details.

Added support for using a local installation of BLAKE3, cpp-httplib, nonstd-span and tl-expected instead of linking to bundled copies.

Removed bundled copies of doctest, fmt, getopt_long and xxhash.

Changed to use the Windows BLAKE3 implementation when building on MSYS2.

Documentation improvements

Improved documentation of “gcno_cwd sloppiness”.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.79 2024/02/16 20:14:59 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.10
@


1.79
log
@ccache: updated to 4.9.1

Ccache 4.9.1

Bug fixes

Improved detection of bad remote storage URLs gracefully. This also fixes crashes seen in ccache’s own test suite.
Made caching completely disabled when modification of a source or include file is detected during ccache invocation. Previously this was only done for the direct mode.
Fixed an MSVC crash when using /Zi with many concurrent compilations.
Fixed a crash when -arch is the last compiler option.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.78 2024/01/02 11:59:02 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.9.1
d17 1
d36 2
@


1.78
log
@ccache: updated to 4.9

Ccache 4.9

New features and improvements

Made ignore_options/CCACHE_IGNOREOPTIONS also skip the option from special processing, similar to how --ccache-skip works.
Added support for expanding environment variables references in all configuration options.
MSVC options /Fd, /FS and /MP are no longer included in the input hash.
Made ccache terminate an ongoing compiler subprocess when terminated on all platforms, not only on Unix.
Added support for multiple -Xarch_* arguments matching -arch.
Added a debug_level/CCACHE_DEBUGLEVEL configuration option, making it possible to tell ccache to only write a log file for each compilation, not other debug files.
Added max_cache_size_kibibyte and max_files_in_cache fields in output from ccache --print-stats.
Paths after -Xclang -include are now rewritten to relative paths if base_dir/CCACHE_BASEDIR is in effect.
Added support for clang --analyze.
Improved processing of input file arguments.
Added support for st_Xtimensec fields in struct stat, thus improving behavior on some BSDs when using newly created include files.
Added support for the undocumented GCC/Clang option --include.

Bug fixes

Ccache now exits more gracefully on invalid sharded remote storage URLs.
Made ccache bail out on too hard options -fmodules-ts, -fmodule-header, -wrapper and -Xclang -ast-dump.
Stopped relying on the st_blocks field in struct stat since it cannot be trusted for filesystems such as ZFS that do transparent compression or deduplication and adjust st_blocks some time in the future.
Fixed crash on Windows for paths with only a drive letter.
Made handling of Clang config options (such as --config-system-dir) more robust.
Fixed compiler type detection when compiler is a symlink called “clang-cl”.
Made sure to use MSVC logic for clang-cl when handling a precompiled header.
Generalized expansion of remote storage URLs with sharding, for instance making it possible to shard on port number.

Build improvements

Upgraded to xxHash 0.8.2, thereby fixing an error when compiling ccache with -Og.
Fixed sign-compare warning in src/InodeCache.cpp on FreeBSD.
Fixed the CMake option STATIC_LINK on Linux/macOS.
Added the CMake option OFFLINE, defaulting to the value of the standard variable FETCHCONTENT_FULLY_DISCONNECTED (which is OFF by default), to disable downloading anything from the internet.
Fixed warnings about unused functions on new MSVC versions.
Made sure to set both C and C++ CMake compiler launcher variables if either is set.

Documentation improvements

The manual now mentions that system_headers sloppiness is not supported for MSVC.

Test improvements

Fixed regex in direct.bash.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.77 2023/08/30 13:01:12 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.9
@


1.77
log
@ccache: updated to 4.8.3

Ccache 4.8.3

Bug fixes

Fixed various problems with parsing of MSVC response file (.rsp).

Fixed handling of NVCC -Xcompiler and --Werror options.

Fixed bookkeeping of files when hard linking or file cloning is enabled. In ccache 4.8–4.8.2 this could result in incorrect size/count statistics after automatic or explicit cleanup.

Build improvements

Made a workaround for GCC 12.3 bug 109241 where GCC fails to compile ccache.

Upgraded to xxHash 0.8.2, which fixes compilation of ccache with GCC 12 and -Og.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.76 2023/07/18 14:11:14 nia Exp $
d3 1
a3 1
DISTNAME=	ccache-4.8.3
@


1.76
log
@devel: Adapt packages to use USE_(CC|CXX)_FEATURES
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.75 2023/06/26 08:32:42 jperkin Exp $
d3 1
a3 1
DISTNAME=	ccache-4.8.2
@


1.75
log
@ccache: SunOS needs libsocket.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.74 2023/06/14 06:54:16 adam Exp $
d15 1
a15 1
USE_LANGUAGES=	c99 c++17
d19 1
a19 1
GCC_REQD+=	8 # std::filesystem
@


1.74
log
@ccache: updated to 4.8.2

Ccache 4.8.2

Bug fixes
Fixed parsing of Windows drive letter in file URLs for remote storage.

Fixed a bug affecting depend mode with MSVC.

Ccache no longer passes -v to the preprocessor. This improves preprocessor mode hit rate when -v is on the compiler command line.

Made --trim-max-size accept 0 for no limit.

Build improvements
Made various fixes for Windows 64-bit MSBuild builds.

Silenced CMake warning for extracted timestamps.

Worked around problem with building ZStandard with Xcode.

Fixed undefined behavior (only triggered by unit tests) in util::read_file_part for zero count, making the build fail with _GLIBCXX_ASSERTIONS.

Documentation improvements
Clarified --evict-older-than semantics.

Test improvements
Fixed typo in “Directory is not hashed if using -gz” test.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.73 2023/05/22 08:04:59 adam Exp $
d21 2
@


1.73
log
@ccache: updated to 4.8.1

Ccache 4.8.1

Bug fixes
Fixed an issue with the depend mode in combination with -- on the command line for Clang-based compilers.
Improved knowledge about MSVC debug flags so that non-debug /Z* options are once again supported.
Ccache no longer treats /Zi as unsupported for clang-cl.
Made the output format of ccache -k max_size parsable by ccache itself.

Build/CI improvements
Corrected ccache version in the macOS binary release.
Made it possible to build ccache with clang-cl on Windows.
Upgraded to doctest 2.4.11, thereby fixing a build issue on Solaris.

Documentation improvements
Added a remote file storage example with URL-encoded spaces.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.72 2023/04/25 13:51:49 jperkin Exp $
d3 1
a3 1
DISTNAME=	ccache-4.8.1
@


1.72
log
@*: GCC_REQD must always be appended to.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.71 2023/03/16 07:53:35 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-4.8
@


1.71
log
@ccache: switch to cmake/build.mk
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.70 2023/03/14 06:30:23 adam Exp $
d19 1
a19 1
GCC_REQD=	8 # std::filesystem
@


1.70
log
@ccache: updated to 4.8

Ccache 4.8

New features and improvements
Improved the automatic cache cleanup mechanism. Automatic cleanups are now performed on 1/256 of the cache instead of 1/16, thus making them much quicker (but naturally more frequent). Cleanups are coordinated between ccache processes so that at most one process will perform cleanup at a time. Also, the actual cache size will stay very close to the configured maximum size instead of staying around 90% as was the case before.

Added support for setting per-compilation configuration options on the command line. Example: ccache hash_dir=false gcc -c example.c.

Made it possible to disable ccache for a certain source code file by embedding the string ccache:disable in a comment near the top of the file.

Made ccache understand that an MSVC /Z7 option overrides an earlier /Z* option and thus is not too hard to cache.

Added a --recompress-threads command line option for selecting the number of CPU threads to use when recompressing the local cache.

Added --trim-recompress and --trim-recompress-threads command line options for recompressing file-based remote storage.

Added tmpfs, ufs and zfs to the list of supported filesystems on macOS and BSDs for the inode cache.

Improved progress bars for clean/clear/evict-style operations.

Improved printing of cache sizes in various outputs.

Activate debug logging for command mode options like --cleanup.

Added support for -Wp,-U<macro> in the direct mode.

Added quotes around arguments with space in logged command lines.

Added logging of executed command lines on Windows.

Made sure not to update the stats file when there are no incremented counters.

Improved actual disk size calculation on Windows.

Build/CI improvements
Added CI support for building macOS universal binaries.

Make it possible to force download of Zstd and Hiredis, e.g. with cmake -D ZSTD_FROM_INTERNET=ON […​].

Bug fixes
Fixed an edge case where a non-temporal identifier is misidentified.

Fixed reporting of local/remote cache misses in depend mode.

Fixed parsing of backslashes in MSVC RSP files.

Fixed a crash in --show-log-stats when the stats log file doesn’t exist.

Fixed matching of base directory for MSVC. The base directory will now match case-insensitively with absolute paths in preprocessed output, or from /showIncludes in the depend mode case, when compiling with MSVC.

Fixed a problem where the original umask would be used when storing a remote cache result in the local cache.

Changed the inode cache implementation to use spinlocks instead of pthread mutexes. This makes the inode cache work on FreeBSD and similar systems.

Don’t treat -Wp,-D as interchangeable with -D.

Disable the inode cache if the filesystem risks getting full soon. This fixes a problem when the cache is on a filesystem where posix_fallocate isn’t reliable, like Btrfs with compression enabled.

Fixed performance of cache path relativization in preprocessed output, primarily on Windows where stat calls are relatively costly.

Fixed rare crash in the signal handler at process exit.

Fixed handling of Unix-style paths passed to MSVC.

Fixed so that the config options and command line are logged before trying to locate the compiler and exiting early.

Documentation improvements
Improved description of --set-config.

Fixed broken markup in the manual.

Added a note to the manual that stats = false will disable automatic cleanup.

Fix a bad reference to the “Remote storage backends” section.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.69 2023/01/19 15:41:40 gdt Exp $
a14 1
USE_CMAKE=	yes
d32 1
@


1.69
log
@devel/ccache*: Adjust comment about xz to modern reality
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.68 2023/01/04 02:26:47 gutteridge Exp $
d3 1
a3 2
DISTNAME=	ccache-4.7.4
PKGREVISION=	2
@


1.68
log
@ccache: fix builds on i386 (and possibly other arches)

Addresses PR pkg/57157 from ano(ther)nymous.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.67 2022/12/09 16:14:12 wiz Exp $
d8 2
a9 2
# Do not use xz distfile here; xz needs gettext-lib which leads to circular
# dependencies on some platforms.
@


1.67
log
@ccache: perl is a build dependency

Fix asciidoctor executable name to work for all ruby versions, not
just the current default.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.66 2022/12/09 11:56:47 gdt Exp $
d4 1
a4 1
PKGREVISION=	1
d34 1
@


1.67.2.1
log
@Pullup ticket #6713 - requested by gutteridge
devel/ccache: i386 build fix

Revisions pulled up:
- devel/ccache/Makefile                                         1.68

---
   Module Name:    pkgsrc
   Committed By:   gutteridge
   Date:           Wed Jan  4 02:26:47 UTC 2023

   Modified Files:
            pkgsrc/devel/ccache: Makefile

   Log Message:
   ccache: fix builds on i386 (and possibly other arches)

   Addresses PR pkg/57157 from ano(ther)nymous.
@
text
@d1 1
a1 1
# $NetBSD$
d4 1
a4 1
PKGREVISION=	2
a33 1
.include "../../mk/atomic64.mk"
@


1.66
log
@devel/ccache: Build man page

The man page was lost in the update, due to needing asciidoctor.
However, it built (and thus caused a PLIST error) on machines with
asciidoctor installed.  Depend on asciidoctor, rather than forcing it
off, since this package ought to have a man page.

Tested on NetBSD 9 amd64.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.65 2022/12/06 16:14:50 adam Exp $
d18 1
a18 1
USE_TOOLS+=	perl:test pkg-config
d26 6
@


1.65
log
@ccache: update compiler requirements
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.64 2022/12/05 08:29:44 adam Exp $
d4 1
d23 3
@


1.64
log
@ccache: updated to 4.7.4

Ccache 4.7.4

Bug fixes

Fixed an inode cache race condition.
The default temporary directory is now $XDG_RUNTIME_DIR/ccache-tmp instead of a hardcoded /run/user/<UID>/ccache-tmp. If XDG_RUNTIME_DIR is not set, <cache_dir>/tmp is used. This avoids creating /run/user/<UID> on systems that don’t have it if compiling as root.
Added a fallback in case posix_fallocate returns EINVAL when creating the inode cache file.
Connection timeout for an HTTP connection is now reported as a timeout instead of an error.
Temporary files found in the cache are no longer counted in --show-compression.
Removed duplicate magic header in output from --inspect.
Ccache now properly waits for all recompression jobs to finish when there is no f subdirectory in the cache.

Other minor improvements

Improved inode cache logging.

Documentation improvements

Removed stray parenthesis.
Improved description of how header files are handled.
Added a hint about using -fno-pch-timestamp for precompiled headers with Clang.
Removed obsolete description of compiler type “pump”.


More https://ccache.dev/releasenotes.html
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.63 2022/06/28 11:31:40 wiz Exp $
d16 1
a16 1
USE_LANGUAGES=	c c++11
d20 2
@


1.63
log
@*: recursive bump for perl 5.36
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.62 2021/05/24 19:49:54 wiz Exp $
d3 1
a3 2
DISTNAME=	ccache-3.7.12
PKGREVISION=	2
d6 2
a7 1
# do not use xz distfile here, xz needs gettext-lib which leads to circular
a8 1
GITHUB_RELEASE=	v${PKGVERSION_NOREV}
d15 4
a18 5
USE_TOOLS+=		bash:test gmake perl:test
GNU_CONFIGURE=		yes
TEST_TARGET=		test

INSTALLATION_DIRS=	bin ${PKGMANDIR}/man1
d20 2
a21 1
.include "../../devel/zlib/buildlink3.mk"
@


1.62
log
@*: recursive bump for perl 5.34
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.61 2020/10/02 08:08:07 adam Exp $
d4 1
a4 1
PKGREVISION=	1
@


1.61
log
@ccache: updated to 3.7.12

ccache 3.7.12

Bug fixes
Coverage files (.gcno) produced by GCC 9+ when using -fprofile-dir=dir are now handled gracefully by falling back to running the compiler.
Fixed writing to log file larger than 2 GiB when running ccache compiled in 32-bit mode.

Other
Improved documentation about sharing a cache on NFS.
Fixed test case failures with old objdump versions.
Fixed test case failures with GCC 4.4.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.60 2020/08/31 18:07:17 wiz Exp $
d4 1
@


1.60
log
@*: bump PKGREVISION for perl-5.32.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.59 2020/07/27 16:04:38 adam Exp $
d3 1
a3 2
DISTNAME=	ccache-3.7.11
PKGREVISION=	1
@


1.59
log
@ccache: updated to 3.7.11

ccache 3.7.11

Bug fixes
Added knowledge about -fprofile-{correction,reorder-functions,values}.
ccache now handles the Intel compiler option -xCODE (where CODE is a processor feature code) correctly.
Added support for NVCC’s -Werror and --Werror options.

Other
ccache’s “Directory is not hashed if using -gz[=zlib]” tests are now skipped for GCC 6.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.58 2020/06/29 13:40:53 adam Exp $
d4 1
@


1.58
log
@ccache: updated to 3.7.10

ccache 3.7.10

Bug fixes

Improved handling of profiling options. ccache should now work correctly for profiling options like -fprofile-{generate,use}[=path] for GCC ≥ 9 and Clang as well as -fauto-profile[=path] and the Clang-specific -fprofile-instr-{generate,use}[=path] and -fprofile-sample-{use,accurate} options.

ccache now copies files directly from the cache to the destination file instead of via a temporary file. This avoids problems when using filenames long enough to be near the file system’s filename max limit.

When the hard-link mode is enabled, ccache now only uses hard links for object files, not other files like dependency files. This is because compilers unlink object files before writing to them but they don’t do that for dependency files, so the latter can become overwritten and therefore corrupted in the cache.

Fixed a glitch related to hard-link mode and an empty cache.

ccache now supports the ccache.conf file to be a symlink.

Temporary files are now deleted immediately on signals like SIGTERM and SIGINT instead of some time later in a cleanup phase.

Fixed a bug that affected ccache’s -o/--set-config option for the base_dir and cache_dir_levels keys.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.57 2020/03/31 16:15:34 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.10
@


1.57
log
@ccache: updated to 3.7.9

ccache 3.7.9

Bug fixes
Fixed replacing of /dev/null when building as root with hard link mode enabled and using -o /dev/null.
Removed incorrect assertion resulting in “ccache: error: Internal error in format” when using -fdebug-prefix-map=X= with X equal to $PWD.

Other
Improved CUDA/NVCC support: Recognize -dc and -x cu options.
Improved name of temporary file used in NFS-safe unlink.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.56 2020/03/17 14:49:31 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.9
@


1.56
log
@ccache: updated to 3.7.8

ccache 3.7.8

Bug fixes
Use $PWD instead of the real CWD (current working directory) when checking for CWD in preprocessed output. This fixes a problem when $PWD includes a symlink part and the user has set hash_dir = false.
Rewrote the Windows version of the lockfile routines. This should mitigate several problems with the old implementation.
If localtime_r fails the epoch time is now logged instead of garbage.

Other
Improved error message when a boolean environment variable has an invalid value.
Improved the regression fix in ccache 3.7.5 related to not passing compilation-only options to the preprocessor.
ccache’s PCH test suite now skips running the tests if it detects broken PCH compiler support.
Fixed unit test failure on Windows.
Fixed “stringop-truncation” build warning on Windows.
Improved “x_rename” implementation on Windows.
Improved removal of temporary file when rewriting absolute paths to relative in the dependency file.
Clarified “include_file_ctime sloppiness” in the Performance section in the manual.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.55 2020/01/06 16:57:07 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.8
@


1.55
log
@ccache: updated to 3.7.7

ccache 3.7.7
Bug fixes

* Fixed a bug related to object file location in the dependency file (if using -MD or -MMD but not -MF and the build directory is not the same as the source directory then the object file location in the .d file would become incorrect). This fixes regression in ccache 3.7.5 introduced by the bug fix related to EDG-based compilers. Note that this removes support for EDG-based compilers again. (A better fix for this is planned for ccache 4.0.)

* Removed the unify mode since it has bugs and shortcomings that are non-trivial or impossible to fix: it doesn’t work with the direct mode, it doesn’t handle C++ raw strings correctly, it can give false cache hits for .incbin directives, it’s turned off when using -g and it can make line numbers in warning messages and __LINE__ macros incorrect.

* mtime and ctime values are now stored in the manifest files only when sloppy_file_stat is set. This avoids adding superfluous manifest file entries on direct mode cache misses.

* A “Result:” line is now always printed to the log.

* The “cache miss” statistics counter will now be updated for read-only cache misses, making it consistent with the cache hit case.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.54 2019/11/20 09:38:42 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.7
@


1.54
log
@ccache: updated to 3.7.6

ccache 3.7.6

Bug fixes
The opt-in “file_macro sloppiness” mode has been removed so that the input file path now is always included in the direct mode hash. This fixes a bug that could result in false cache hits in an edge case when “file_macro sloppiness” is enabled and several identical source files include a relative header file with the same name but in different directories.

Statistics files are no longer lost when the filesystem of the cache is full.

Bail out on too hard Clang option -MJarg (in addition to the previous bailout of -MJ arg).

Properly handle color diagnostics in the depend mode as well.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.53 2019/10/31 10:58:58 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.6
@


1.53
log
@ccache: updated to 3.7.5

3.7.5:
New features
Added support for -MF=arg (with an extra equal sign) as understood by EDG-based compilers.

Bug fixes
Fixed a regression in 3.7.2 that could result in a warning message instead of an error in an edge case related to usage of “-Werror”.
An implicit -MQ is now passed to the preprocessor only if the object file extension is non-standard. This will make it easier to use EDG-based compilers (e.g. GHS) which don’t understand -MQ. (This is a bug fix of the corresponding improvement implemented in ccache 3.4.)
ccache now falls back to running the real compiler instead of failing fataly if an internal temporary file is missing after compilation.
Fixed a crash if localtime returns null pointer in localtime_r replacement.
Fixed header file dependency tracking when building ccache itself.
Fixed warning during configure in out-of-tree build in developer mode.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.52 2019/09/13 08:07:29 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.5
@


1.52
log
@ccache: updated to 3.7.4

ccache 3.7.4
Improvements
Added support for the -gz[=type] compiler option (previously ccache would think that “-gz” alone would enable debug information, thus potentially including the current directory in the hash).
Added support for converting paths like “/c/users/...” into relative paths on Windows.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.51 2019/08/19 10:13:46 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.4
@


1.51
log
@ccache: updated to 3.7.3

ccache 3.7.3

Bug fixes
The cache size (which is counted in “used disk blocks”) is now correct on filesystems that use more or less disk blocks than conventional filesystems, e.g. ecryptfs or btrfs/zfs with transparent compression. This also fixes a related problem with ccache’s own test suite when run on such file systems.

Fixed a regression in 3.7.2 when using the compiler option “-Werror” and then “-Wno-error” later on the command line.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.50 2019/08/11 13:18:39 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.3
@


1.50
log
@Bump PKGREVISIONs for perl 5.30.0
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.49 2019/07/27 13:40:36 nia Exp $
d3 1
a3 2
DISTNAME=	ccache-3.7.2
PKGREVISION=	1
@


1.49
log
@ccache: Update to 3.7.2

Bug fixes

* The compiler option -gdwarf* no longer forces “run_second_cpp = true”.
* Added verification that the value passed to the -o/--set-config option
  is valid.
* Fixed detection of precompiled headers in the depend mode.
* Bail out on too hard Clang option -ftime-trace.
* ccache now updates the correct stats file when adding/updating manifest
  files.
  This bug previously made the file and size statistics counters incorrect
  over time.
* Fixed warnings from Clang about unused arguments during preprocessing.
* Unknown manifest versions are now handled gracefully in --dump-manifest.
* Fixed make check with “funny” locales.

Documentation

* Added a hint about not running autogen.sh when building from a release
  archive.
* Mention that xsltproc is needed when building from the source repository.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.48 2019/05/06 15:06:04 adam Exp $
d4 1
@


1.48
log
@ccache: updated to 3.7.1

Changes 3.7.1:
Fixed a problem when using the compiler option -MF /dev/null.
Long commandlines are now handled gracefully on Windows by using the @@file syntax to avoid hitting the commandline size limit.
Fixed complaint from GCC 9’s -Werror=format-overflow when compiling ccache itself.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.47 2019/04/29 17:13:15 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7.1
a7 1
EXTRACT_SUFX=	.tar.bz2
@


1.47
log
@ccache: updated to 3.7

Changes 3.7:
Fixed crash when the debug mode is enabled and the output file is in a non-writable directory, e.g. when the output file is /dev/null.

Fixed an issue when printing very large log messages to the debug log.

Fixed bugs related to support for -gsplit-dwarf. Previously ccache could produce an incorrect link to the .dwo file in the .o file.

Compilations with /dev/null as the input file are now cached.

ccache has learned how to contruct the object filename if no -o option is given and the source filename does not include a . or ends with a ..

Fixed a temporary file leak when the depend mode is enabled and the compiler produces standard error output.

Fixed a bug in the depend mode where a manifest hash only could be associated with one set of header dependencies.

Manifest files did not get marked as used on direct cache hits, so the LRU cache cleanup would incorrectly remove them eventually. This has been fixed.

The rewriting of absolute paths into relative paths in the dependency file has been enabled in the depend mode as well.

ccache now ignores unknown keys in configuration files for forward compatibility.

Rearranged command-line options into sections in the help text.

Documented the previously undocumented --dump-manifest and --hash-file options (only useful for debugging ccache itself).

Added missing documentation for the command-line option -k/--get-config added in ccache 3.5.

Renamed the --print-config command to --show-config.

Added a new --print-stats command that prints statistics counters in machine-parsable (tab-separated) format.

ccache no longer creates a missing output directory, thus mimicking the compiler behavior for -o out/obj.o when “out” doesn’t exist.

-fdebug-prefix-map=ARG, -ffile-prefix-map=ARG and -fmacro-prefix-map=ARG are now included in the hash, but only the part before “ARG”. This fixes a bug where compiler feature detection of said flags would not work correctly with ccache.

Bail out on too hard compiler option -gtoggle.

Bail out on too hard Clang options --analyze and -analyze.

Improved debug logging of file hashes in depend mode.

Improved handling of various -g* options. In particular, ccache now understands that -g0 cancels out previous -g* options.

Worked around a problem with Automake related to .d files when using the hard link mode.

Added opt-in (at configure time) support for enabling trace logs for profiling ccache itself. See doc/DEVELOPER.md in the code tree for more information

Removed support for Fortran 77 again. Some Fortran support was added in ccache 3.3, but the implementation did not work when Fortran modules are involved.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.46 2019/01/15 09:04:17 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.7
@


1.46
log
@ccache: updated to 3.6

ccache 3.6

ccache now has an opt-in “depend mode”. When enabled, ccache never executes the preprocessor, which results in much lower cache miss overhead at the expense of a lower potential cache hit rate. The depend mode is only possible to use when the compiler option -MD or -MMD is used.

Added support for GCC’s -ffile-prefix-map option. The -fmacro-prefix-map option is now also skipped from the hash.

Added support for multiple -fsanitize-blacklist arguments.

ccache now includes the environment variables LANG, LC_ALL, LC_CTYPE and LC_MESSAGES in the hash since they may affect localization of compiler warning messages. Set sloppiness to locale to opt out of this.

Fixed a problem due to Clang overwriting the output file when compiling an assembler file.

Clarified the manual to explain the reasoning behind the “file_macro” sloppiness setting in a better way.

ccache now handles several levels of nonexistent directories when rewriting absolute paths to relative.

A new sloppiness setting clang_index_store makes ccache skip the Clang compiler option -index-store-path and its argument when computing the manifest hash. This is useful if you use Xcode, which uses an index store path derived from the local project path. Note that the index store won’t be updated correctly on cache hits if you enable this option.

Rename sloppiness no_system_headers to system_headers for consistency with other options. no_system_headers can still be used as an (undocumented) alias.

The GCC variables “DEPENDENCIES_OUTPUT” and “SUNPRO_DEPENDENCIES” are now supported correctly.

The algorithm that scans for __DATE_ and __TIME__ tokens in the hashed source code now doesn’t produce false positives for tokens where __DATE__ or __TIME__ is a substring.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.45 2019/01/04 23:43:23 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.6
d5 1
a5 1
MASTER_SITES=	http://samba.org/ftp/ccache/
d9 1
d12 1
a12 1
HOMEPAGE=	http://ccache.samba.org/
@


1.45
log
@ccache: updated to 3.5.1

ccache 3.5.1:
Added missing getopt_long.c source file to release archive.
Fixed (harmless) compiler warnings when building ccache object files.
CFLAGS is no longer passed to the linker when linking ccache.
Improved development mode build flags.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.44 2018/10/30 12:03:52 adam Exp $
d3 1
a3 2
DISTNAME=	ccache-3.5.1a
PKGNAME=	ccache-3.5.1
a14 2
WRKSRC=		${WRKDIR}/${PKGNAME_NOREV}

@


1.44
log
@ccache: updated to 3.5

ccache 3.5

Added a boolean debug (CCACHE_DEBUG) configuration option. When enabled, ccache will create per-object debug files that are helpful e.g. when debugging unexpected cache misses. See also the new “Cache debugging” section in the manual.

Renamed CCACHE_CC to CCACHE_COMPILER (keeping the former as a deprecated alias).

Added a new command-line option -k/--get-config that prints the value of a config key.

It is now possible to let ccache hash a precomputed checksum file instead of the full content of a precompiled header. This can save time for large precompiled headers. Note that the build system needs to keep the checksum file in sync with the precompiled header for this to work.

Improved performance substantially when using hash_dir = false on platforms like macOS where getcwd() is slow.

Added “stats updated” timestamp in ccache -s output. This can be useful if you wonder whether ccache actually was used for your last build.

Renamed “stats zero time” to “stats zeroed” and documented it. The counter is also now only present in ccache -s output when ccache -z actually has been called.

The content of the -fsanitize-blacklist file is now included in the hash, so updates to the file will now correctly result in separate cache entries.

It’s now possible to opt out of building and installing man pages when running make install in the source repository.

If the compiler type can’t be detected (e.g. if it is named cc), use safer defaults that won’t trip up Clang.

Made the ccache test suite work on FreeBSD.

Added file_stat_matches_ctime option to disable ctime check if file_stat_matches is enabled.

Made “./configure --without-bundled-zlib” do what’s intended.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.43 2018/09/05 13:22:21 adam Exp $
d3 2
a4 1
DISTNAME=	ccache-3.5
d9 1
a9 1
#EXTRACT_SUFX=	.tar.gz
d16 3
a18 1
USE_TOOLS+=		gmake
@


1.43
log
@ccache: updated to 3.4.3

ccache 3.4.3

Bug fixes
Fixed a race condition when creating the initial config file in the cache directory.
Bail out on too hard clang option -MJ.
Bail out on too hard option -save-temps=obj.
Handle separate parameter to clang option -target correctly.
Upgraded bundled zlib to version 1.2.11.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.42 2018/04/06 08:04:53 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.4.3
@


1.42
log
@ccached: updated to 3.4.2

ccache 3.4.2

Bug fixes:

The cleanup algorithm has been fixed to not misbehave when files are removed by another process while the cleanup process is running. Previously, too many files could be removed from the cache if multiple cleanup processes were triggered at the same time, in extreme cases trimming the cache to a much smaller size than the configured limits.

Correctly hash preprocessed headers located in a “.gch directory”. Previously, ccache would not pick up changes to such precompiled headers, risking false positive cache hits.

Fixed build failure when using the bundled zlib sources.

ccache 3.3.5 added a workaround for not triggering Clang errors when a precompiled header’s dependency has an updated timestamp (but identical content). That workaround is now only applied when the compiler is Clang.

Made it possible to perform out-of-source builds in dev mode again.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.41 2018/02/12 08:32:11 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.4.2
@


1.41
log
@ccache: updated to 3.4.1

ccache 3.4.1
Bug fixes
Fixed printing of version number in ccache --version.

ccache 3.4
New features and enhancements
The compiler option form --sysroot arg is now handled like the documented --sysroot=arg form.
Added support for caching .su files generated by GCC flag -fstack-usage.
ccache should now work with distcc’s “pump” wrapper.
The optional unifier is no longer disabled when the direct mode is enabled.
Added support for nvcc compiler options --compiler-bindir/-ccbin, --output-directory/-odir and --libdevice-directory/-ldir.
Boolean environment variable settings no longer accept the following (case-insensitive) values: 0, false, disable and no. All other values are accepted and taken to mean “true”. This is to stop users from setting e.g. CCACHE_DISABLE=0 and then expect the cache to be used.
Improved support for run_second_cpp = false: If combined with passing -fdirectives-only (GCC) or frewrite-includes (Clang) to the compiler, diagnostics warnings and similar will be correct.
An implicit -MQ is now passed to the preprocessor only if the object file extension is non-standard. This should make it easier to use EDG-based compilers (e.g. GHS) which don’t understand -MQ.
ccache now treats an unreadable configuration file just like a missing configuration file.
Documented more pitfalls with enabling hard_links (CCACHE_HARDLINK).
Documented caveats related to colored warnings from compilers.

Bug fixes
File size and number counters are now updated correctly when files are overwritten in the cache, e.g. when using CCACHE_RECACHE.
run_second_cpp is now forced for nvcc.
Fixed how the nvcc options -optf and -odir are handled.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.40 2018/01/30 05:43:19 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.4.1
d15 1
@


1.40
log
@ccache: updated to 3.3.6

ccache 3.3.6

New features and improvements
- Improved instructions on how to get cache hits between different working
  directories.

Bug fixes
- Fixed regression in ccache 3.3.5 related to the `UNCACHED_ERR_FD` feature.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.39 2018/01/15 08:07:02 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3.6
@


1.39
log
@ccache: updated to 3.3.5

ccache 3.3.5

New features and improvements
* Documented how automatic cache cleanup works.

Bug fixes
* Fixed a regression where the original order of debug options could be lost. This reverts the “Improved parsing of -g* options” feature in ccache 3.3.
* Multiple -fdebug-prefix-map options should now be handled correctly.
* Fixed matching of directories in the ignore_headers_in_manifest configuration option.
* Fixed detection of missing argument to -opt/--options-file.
* ccache now bails out when building a precompiled header if any of the corresponding header files have an updated timestamp. This fixes complaints from clang.
* Fixed a bug related to erroneously storing a dependency file with absolute paths in the cache on a preprocessed hit.
* ccache -c/--cleanup now works like documented: it just recalculates size counters and trims the cache to not exceed the max size and file number limits. Previously, the forced cleanup took “limit_multiple” into account, so that ccache -c/--cleanup by default would trim the cache to 80% of the max limit.
* ccache no longer ignores linker arguments for clang since clang warns about them.
* Plugged a couple of file descriptor leaks.
* Fixed a bug where ccache would skip hashing the compiler argument following a -fno-working-directory, -fworking-directory, -nostdinc, -nostdinc++, -remap or -trigraphs option in preprocessor mode.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.38 2017/02/26 10:17:00 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3.5
@


1.38
log
@ccache 3.3.4:

New features and improvements:
* Documented the different cache statistics counters.

Bug fixes:
* Fixed a regression in ccache 3.3 related to potentially bad content of dependency files when compiling identical source code but with different source paths. This was only partially fixed in 3.3.2 and reverts the new “Names of included files are no longer included in the hash of the compiler’s preprocessed output” feature in 3.3.
* Corrected statistics counter for -optf/--options-file failure.
* Fixed undefined behavior warnings in ccache found by -fsanitize=undefined.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.37 2016/10/31 10:54:30 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3.4
d16 1
@


1.37
log
@Changes 3.3.3:
* ccache now detects usage of .incbin assembler directives in the source code and avoids caching such compilations.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.36 2016/10/25 12:12:43 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3.3
@


1.36
log
@Changes 3.3.2:
* Fixed a regression in ccache 3.3 related to potentially bad content of dependency files when compiling identical source code but with different source paths.
* Fixed a regression in ccache 3.3.1: ccache could get confused when using the compiler option -Wp, to pass multiple options to the preprocessor, resulting in missing dependency files from direct mode cache hits.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.35 2016/09/20 12:36:20 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3.2
@


1.35
log
@Changes 3.3.1:
* Fixed a problem in the “multiple -arch options” support introduced in 3.3. When using the direct mode (the default), different combinations of -arch options were not detected properly.
* Fixed an issue when compiler option -Wp,-MT,path is used instead of -MT path (and similar for -MF, -MP and -MQ) and run_second_cpp (CCACHE_CPP2) is enabled.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.34 2016/08/28 13:44:18 mef Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3.1
@


1.34
log
@Updated devel/ccache 3.2.7 to 3.3
---------------------------------
ccache 3.3
----------
Release date: 2016-08-27

Notes
~~~~~
- A C99-compatible compiler is now required to build ccache.

New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- The configuration option `run_second_cpp` (`CCACHE_CPP2`) now defaults to
  true. This improves ccache's out-of-the-box experience for compilers that
  can't compile their own preprocessed output with the same outcome as if they
  compiled the real source code directly, e.g. newer versions of GCC and Clang.

- The configuration option `hash_dir` (`CCACHE_HASHDIR`) now defaults to true.

- Added a new `ignore_headers_in_manifest` configuration option, which
  specifies headers that should be ignored in the direct mode.

- Added a new `prefix_command_cpp` (`CCACHE_PREFIX_CPP`) configuration option,
  which specifies one or several prefixes to add to the command line ccache
  uses when invoking the preprocessor.

- Added a new `limit_multiple` (`CCACHE_LIMIT_MULTIPLE`) configuration option,
  which specifies how much of the cache to remove when cleaning.

- Added a new `keep_comments_cpp` (`CCACHE_COMMENTS`) configuration option,
  which tells ccache not to discard the comments before hashing preprocessor
  output. This can be used to check documentation with *-Wdocumentation*.

- Added a new sloppiness option `no_system_headers`, which tells ccache not to
  include system headers in manifest files.

- Added a new statistics counter that tracks the number of performed cleanups
  due to the cache size being over the limit. The value is shown in the output
  of ``ccache -s''.

- Added support for relocating debug info directory using `-fdebug-prefix-map`.
  This allows for cache hits even when `hash_dir` is used in combination with
  `base_dir`.

- Added a new ``cache hit rate'' field to the output of ``ccache -s''.

- Added support for caching compilation of assembler code produced by e.g.
  ``gcc -S file.c''.

- Added support for cuda including the -optf/--options-file option.

- Added support for Fortran 77.

- Added support for multiple `-arch` options to produce "fat binaries".

- Multiple identical `-arch` arguments are now handled without bailing.

- The concatenated form of some long compiler options is now recognized, for
  example when using `-isystemPATH` instead of `-isystem PATH`.

- If hard-linking is enabled and but fails (e.g. due to cross-device linking),
  ccache now falls back to copying instead of running the compiler.

- Made the `hash_dir` option only have effect when generating debug info.

- ccache now knows how to convert absolute paths to relative paths inside
  dependency files when using `base_dir`.

- Improved parsing of `-g*` options.

- Made ccache understand `-Wp,-D*` options.

- ccache now understands the undocumented `-coverage` (only one dash) GCC
  option.

- Names of included files are no longer included in the hash of the compiler's
  preprocessed output. This leads to more potential cache hits when not using
  the direct mode.

- Increased buffer size used when reading file data. This improves performance
  slightly.

Bug fixes
~~~~~~~~~
- Bail out on too hard compiler option `-P`.

- Fixed clang test suite when running on Linux.

- Fixed build and test for MinGW32 and Windows.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.33 2016/08/09 13:14:17 mef Exp $
d3 1
a3 1
DISTNAME=	ccache-3.3
@


1.33
log
@Updated devel/ccache 3.2.5 to 3.2.7
-----------------------------------
ccache 3.2.7
------------
Release date: 2016-07-20

Bug fixes
~~~~~~~~~
- Fixed a bug which could lead to false cache hits for compiler command lines
  with a missing argument to an option that takes an argument.

- ccache now knows how to work around a glitch in the output of GCC 6's
  preprocessor.

ccache 3.2.6
------------
Release date: 2016-07-12

Bug fixes
~~~~~~~~~
- Fixed build problem on QNX, which lacks ``SA_RESTART''.

- Bail out on compiler option `-fstack-usage` since it creates a `.su` file
  which ccache currently doesn't handle.

- Fixed a bug where (due to ccache rewriting paths) the compiler could choose
  incorrect include files if `CCACHE_BASEDIR` is used and the source file path
  is absolute and is a symlink.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.32 2016/04/25 10:24:48 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.2.7
@


1.32
log
@ccache 3.2.5

New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Only pass clang-specific `-stdlib=` to the preprocessor.
- Improved handling of stale NFS handles.
- Made it harder to misinterpret documentation of boolean environment settings'
  semantics.

Bug fixes
~~~~~~~~~
- Include m4 files used by configure.ac in the source dist archives.
- Corrected "Performance" section in the manual regarding `__DATE_`, `__TIME__`
  and `__FILE__` macros.
- Fixed build on Solaris 10+ and AIX 7.
- Fixed failure to create directories on QNX.
- Don't (try to) update manifest file in ``read-only'' and ``read-only direct''
  modes.
- Fixed a bug in caching of `stat` system calls in ``file_stat_matches
  sloppiness mode''.
- Fixed bug in hashing of clang plugins, leading to unnecessary cache misses.
- Fixed --print-config to show ``pch_defines sloppiness''.
- The man page is now built when running ``make install'' from Git repository
  sources.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.31 2015/10/09 12:02:20 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.2.5
@


1.31
log
@Changes 3.2.4:
Fixed build error related to zlib on systems with older make versions (regression in ccache 3.2.3).
Made conversion-to-bool explicit to avoid build warnings (and potential runtime errors) on legacy systems.
Improved signal handling: Kill compiler on SIGTERM; wait for compiler to exit before exiting; die appropriately.
Minor fixes related to Windows support.
The correct compression level is now used if compression is requested.
Fixed a bug where cache cleanup could be run too early for caches larger than 64 GiB on 32-bit systems.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.30 2015/09/13 07:59:45 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.2.4
@


1.30
log
@Changes 3.2.3:

New features and improvements
* Added support for compiler option -gsplit-dwarf.

Bug fixes
* Support external zlib in nonstandard directory.
* Avoid calling exit() inside an exit handler.
* Let exit handler terminate properly.
* Bail out on compiler option --save-temps in addition to -save-temps.
* Only log "Disabling direct mode" once when failing to read potential include files.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.29 2015/05/18 10:33:55 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.2.3
@


1.29
log
@Changes 3.2.2:

New features and improvements
* Added support for CCACHE_COMPILERCHECK=string:<value>. This is a faster alternative to CCACHE_COMPILERCHECK=<command> if the command’s output can be precalculated by the build system.
* Add support for caching code coverage results (compiling for gcov).

Bug fixes
* Fixed bug which could result in false cache hits when source code contains '"' followed by " /*" or " //" (with variations).
* Made hash of cached result created with and without CCACHE_CPP2 different. This makes it possible to rebuild with CCACHE_CPP2 set without having to clear the cache to get new results.
* Don’t try to reset a non-existing stats file. This avoids “No such file or directory” messages in the ccache log when the cache directory doesn’t exist.
* Fixed a bug where ccache deleted clang diagnostics after compiler failures.
* Avoid performing an unnecessary copy of the object file on a cache miss.
* Bail out on too hard compiler option -fmodules.
* Bail out on too hard compiler option -fplugin=libcc1plugin (interaction with GDB).
* Fixed build error when compiling ccache with recent clang versions.
* Removed signal-unsafe code from signal handler.
* Corrected logic for when to output cached stderr.
* Wipe the whole cached result on failure retrieving a cached file.
* Fixed build error when compiling ccache with recent clang versions.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.28 2015/03/19 23:01:15 tnn Exp $
d3 1
a3 1
DISTNAME=	ccache-3.2.2
@


1.28
log
@change from .xz to .gz distfile. xz needs gettext-lib by default which
leads to circular dependencies on some platforms with
PKGSRC_COMPILER=ccache gcc
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.27 2015/03/19 18:33:43 tnn Exp $
d3 1
a3 2
DISTNAME=	ccache-3.2.1
PKGREVISION=	1
a18 2
.include "../../mk/bsd.prefs.mk"

@


1.27
log
@g/c CCACHE_DEFAULT_MAXSIZE, it is no longer possible to set the default
cache size this way, and the default is now bumped to 5GB so it's not
really needed.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.26 2015/03/19 18:09:17 tnn Exp $
d7 3
a9 1
EXTRACT_SUFX=	.tar.xz
@


1.26
log
@Add workaround for bin/47757 on NetBSD < 7. Bump revision.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.25 2014/12/15 05:33:26 mef Exp $
a19 4
CCACHE_DEFAULT_MAXSIZE?=	1048576
BUILD_DEFS+=			CCACHE_DEFAULT_MAXSIZE
CPPFLAGS+=			-DDEFAULT_MAXSIZE=${CCACHE_DEFAULT_MAXSIZE}

@


1.25
log
@Udate 3.2 to 3.2.1
ccache 3.2.1
------------
Release date: 2014-12-10
Bug fixes
~~~~~~~~~
- Fixed regression in temporary file handling, which lead to incorrect
  permissions for stats, manifest and ccache.conf files in the cache.

- `CACHEDIR.TAG` files are now created in the [0-9a-f] subdirectories so that
  ccache.conf is not lost in backups.

- Made the default cache size suffix `G`, as previously documented.

- `-fdiagnostics-color=auto` is now passed to the compiler even if stderr is
  redirected. This fixes a problem when, for instance, a configure test probes
  if the compiler (wrapped via ccache) supports `-fdiagnostics-color=auto`.

- Added missing documentation for `max_files` and `max_size` configuration
  options.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.24 2014/11/20 15:20:40 adam Exp $
d4 1
@


1.24
log
@Changes 3.2:
New features and improvements
- Added support for configuring ccache via one or several configuration files
  instead of via environment variables. Environment variables still have
  priority but are no longer the recommended way of customizing ccache
  behavior. See the manual for more information.
- Added support for compiler error/warning messages with color.
- Made creation of temporary directories and cache directories smarter to avoid
  unnecessary `stat` calls.
- Improved efficiency of the algorithm that scans for `__DATE_` and `__TIME__`
  tokens in the hashed source code.
- Added support for several binaries (separated by space) in `CCACHE_PREFIX`.
- The `-c` option is no longer passed to the preprocessor. This fixes problems
  with clang and Solaris's C++ compiler.
- ccache no longer passes preprocessor options like `-D` and `-I` to the
  compiler when compiling preprocessed output. This fixes warnings emitted by
  clang.
- Compiler options `-fprofile-generate`, `-fprofile-arcs`, `-fprofile-use` and
  `-fbranch-probabilities` are now handled without bailing.
- Added support for clang's `--serialize-diagnostic` option, storing the
  diagnostic file (`.dia`) in the cache.
- Added support for precompiled headers when using clang.
- Added support for clang `.pth` (pretokenized header) files.
- Changed the `-x` language option to use the new objective C standard for GCC
  and clang.
- On a cache miss, ccache now instructs the compiler to create the object file
  at the real destination and then copies the file into the cache instead of
  the other way around. This is needed to support compiler options like
  `-fprofile-arcs` and `--serialize-diagnostics`.
- ccache now checks that included files' ctimes aren't too new. This check can
  be turned off by adding `include_file_ctime` to the ``ccache sloppiness''
  setting.
- Added possibility to get cache hits based on filename, size, mtime and ctime
  only. On other words, source code files are not even read, only stat-ed. This
  operation mode is opt-in by adding `file_stat_matches` to the ``ccache
  sloppiness'' setting.
- The filename part of options like `-Wp,-MDfilename` is no longer included in
  the hash since the filename doesn't have any bearing on the result.
- Added a ``read-only direct'' configuration setting, which is like the
  ordinary read-only setting except that ccache will only try to retrieve
  results from the cache using the direct mode, not the preprocessor mode.
- The display and interpretation of cache size has been changed to use SI
  units.
- Default cache size is now 5 GB (was previously 1 GiB).
- Added configuration option to set the compression level of compressed object
  files in the cache.
- Added support for `@@file` and `-@@file` arguments (reading options from a
  file).
- `-Wl,` options are no longer included in the hash since they don't affect
  compilation.
- Bail out on too hard compiler option `-Wp,-P`.
- Optimized MD4 calculation code on little-endian systems.
- Various improvements and fixes on win32.
- Improved logging to the ccache log file.
- Added `--dump-manifest` command-line option for debugging purposes.
- Added `--with-bundled-zlib` configure option.
- Upgraded bundled zlib to version 1.2.8.
- Improved `dev.mk` to be more platform independent.
- Made the test suite work with clang and gcc-llvm on OS X.
- Various other improvements of the test suite.

Bug fixes
- Any previous `.stderr` is now removed from the cache when recaching.
- Fixed an issue when handling the `-arch` compiler option with an argument.
- Fixed race condition when creating the initial cache directory.
- Fixed test suite failures when `CC` is a ccache-wrapped compiler.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.23 2014/10/19 20:25:39 adam Exp $
d3 1
a3 1
DISTNAME=	ccache-3.2
@


1.23
log
@Changes 3.1.10:

New features and improvements:
* Added support for the -Xclang compiler option.
* Improved handling of exit code of internally executed processes.
* Zero length object files in the cache are now rejected as invalid.
* Bail out on option -gsplit-dwarf (since it produces multiple output files).
* Compiler option -fdebug-prefix-map is now ignored (not part of the hash). (The -fdebug-prefix-map option may be used in combination with CCACHE_BASEDIR to reuse results across different directories.)
* Added note in documentation that --ccache-skip currently does not mean “don’t hash the following option”.
* To enable support for precompiled headers (PCH), CCACHE_SLOPPINESS now also needs to include the new pch_defines sloppiness. This is because ccache can’t detect changes in the source code when only defined macros have been changed.
* Stale files in the internal temporary directory (<ccache_dir>/tmp) are now cleaned up if they are older than one hour.

Bug fixes:
* Fixed path canonicalization in make_relative_path() when path doesn’t exist.
* Fixed bug in common_dir_prefix_length(). This corrects the CCACHE_BASEDIR behavior.
* ccache no longer tries to create the cache directory when CCACHE_DISABLE is set.
* Fixed bug when reading manifests with a very large number of file info entries.
* Fixed problem with logging of current working directory.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.22 2014/10/09 14:06:08 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-3.1.10
@


1.22
log
@Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.21 2013/01/21 13:52:36 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-3.1.9
d6 1
@


1.21
log
@Update to 3.1.9:

ccache 3.1.9
------------
Release date: 2013-01-06


Bug fixes
~~~~~~~~~

    - The EAGAIN signal is now handled correctly when emitting cached stderr
      output. This fixes a problem triggered by large error outputs from the
      compiler.
    - Subdirectories in the cache are no longer created in read-only mode.
    - Fixed so that ccache's log file descriptor is not made available to the
      compiler.
    - Improved error reporting when failing to create temporary stdout/stderr
      files when executing the compiler.
    - Disappearing temporary stdout/stderr files are now handled gracefully.


Other
~~~~~

    - Fixed test suite to work on ecryptfs.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.20 2012/10/31 11:16:44 asau Exp $
a11 2
PKG_INSTALLATION_TYPES=	overwrite pkgviews

@


1.20
log
@Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.19 2012/08/27 22:21:44 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-3.1.8
@


1.19
log
@Update to 3.1.8:

ccache 3.1.8
------------
Release date: 2012-08-11


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Made paths to dependency files relative in order to increase cache hits.
    - Added work-around to make ccache work with buggy GCC 4.1 when creating a
      pre-compiled header.
    - Clang plugins are now hashed to catch plugin upgrades.


Bug fixes
~~~~~~~~~

    - Fixed crash when the current working directory has been removed.
    - Fixed crash when stderr is closed.
    - Corrected a corner case when parsing backslash escapes in string
      literals.
    - Paths are now correctly canonicalized when computing paths relative to
      the base directory.


Other
~~~~~

    - Made git version macro work when compiling outside of the source
      directory.
    - Fixed `static_assert` macro definition clash with GCC 4.7.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.18 2012/01/28 15:01:00 wiz Exp $
a12 1
PKG_DESTDIR_SUPPORT=	user-destdir
@


1.18
log
@Update to 3.1.7. Set LICENSE.

ccache 3.1.7
------------
Release date: 2012-01-08


Bug fixes
~~~~~~~~~

    - Non-writable `CCACHE_DIR` is now handled gracefully when
      `CCACHE_READONLY` is set.
    - Made failure to create files (typically due to bad directory permissions)
      in the cache directory fatal. Previously, such failures were silently and
      erroneously flagged as "compiler produced stdout".
    - Both the `-specs=file` and `--specs=file` forms are now recognized.
    - Added recognition and hashing of GCC plugins specified with
      `-fplugin=file`.
    - `CCACHE_COMPILERCHECK` now also determines how to hash explicit specs
      files (`-specs=file`).
    - Added `CPATH`, `C_INCLUDE_PATH` and similar environment variables to the
      hash to avoid false cache hits when such variables have changed.
    - Corrected log message when unify mode is enabled.
    - Reverted the GCC bug compatibility introduced in ccache 3.1.5 for
      `-MT`/`-MQ` options with concatenated arguments. (The bug is fixed in
      recent GCC versions.)


Other
~~~~~

    - Corrected license header for `mdfour.c`.
    - Improved documentation on how to fix bad object files in the cache.



ccache 3.1.6
------------
Release date: 2011-08-21


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Rewrite argument to `--sysroot` if `CCACHE_BASEDIR` is used.


Bug fixes
~~~~~~~~~

    - Don't crash if `getcwd()` fails.
    - Fixed alignment of ``called for preprocessing'' counter.


ccache 3.1.5
------------
Release date: 2011-05-29


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Added a new statistics counter named ``called for preprocessing''.
    - The original command line is now logged to the file specified with
      `CCACHE_LOGFILE`.
    - Improved error logging when system calls fail.
    - Added support for rewriting absolute paths in `-F`/`-iframework` GCC
      options.
    - Improved order of statistics counters in `ccache -s` output.


Bug fixes
~~~~~~~~~

    - The `-MF`/`-MT`/`-MQ` options with concatenated argument are now handled
      correctly when they are last on the command line.
    - ccache is now bug compatible with GCC for the `-MT`/`-MQ` options with
      concatenated arguments.
    - Fixed a minor memory leak.
    - Systems that lack (and don't need to be linked with) libm are now
      supported.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.17 2011/11/26 04:39:35 sbd Exp $
d3 1
a3 1
DISTNAME=	ccache-3.1.7
@


1.17
log
@Add missing devel/zlib buildlink.

Bump PKGREVISION
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.16 2011/03/02 06:40:51 wiz Exp $
d3 1
a3 2
DISTNAME=	ccache-3.1.4
PKGREVISION=	1
d10 1
a10 1
#LICENSE=	gnu-gpl-v3 AND modified-bsd AND public-domain # AND zlib-license
@


1.16
log
@Update to 3.1.4, inspired by PR 44659 by Marko Schuetz Schmuck:

ccache 3.1.4
Bug fixes

ccache 3.1.3
Bug and portability fixes

ccache 3.1.2
Bug fixes

ccache 3.1.1
Bug fixes

ccache 3.1

New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Added support for hashing the output of a custom command (e.g.
      `%compiler% --version`) to identify the compiler instead of stat-ing or
      hashing the compiler binary. This can improve robustness when the
      compiler (as seen by ccache) actually isn't the real compiler but another
      compiler wrapper.

    - Added support for caching compilations that use precompiled headers. (See
      the manual for important instructions regarding this.)

    - Locking of the files containing statistics counters is now done using
      symlinks instead of POSIX locks. This should make ccache behave a lot
      better on file systems where POSIX locks are slow or broken (e.g. NFS on
      some systems).

    - Manifest files are now updated without the need of taking locks.

    - Updates of statistics counters are now always done in one of the
      sub-level statistics files. This reduces lock contention, which
      especially improves performance on slow NFS mounts.

    - Reading and writing of statistics counters has been made
      forward-compatible (unknown counters are retained).

    - Files are now read without using mmap(). This has two benefits: it's more
      robust against file changes during reading and it improves performance on
      poor systems where mmap() doesn't use the disk cache.

    - Added `.cp` and `.CP` as known C++ suffixes.

    - Improved logging.

    - Added `-install_name` as an option known to take an argument. (This
      improves statistics when using the Darwin linker.)


Bug fixes

ccache 3.0.1
Bug fixes

ccache 3.0

General
~~~~~~~

    - ccache is now licensed under the GNU General Public License (GPL) version
      3 or later.


Upgrade notes
~~~~~~~~~~~~~

    - The way the hashes are calculated has changed, so you won't get cache
      hits for compilation results stored by older ccache versions. Because of
      this, you might as well clear the old cache directory with `ccache
      --clear` if you want, unless you plan to keep using an older ccache
      version.


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - ccache now has a ``direct mode'' where it computes a hash of the source
      code (including all included files) and compiler options without
      running the preprocessor. By not running the preprocessor, CPU usage is
      reduced; the speed is somewhere between 1 and 5 times that of ccache
      running in traditional mode, depending on the circumstances. The speedup
      will be higher when I/O is fast (e.g., when files are in the disk cache).
      The direct mode can be disabled by setting +CCACHE_NODIRECT+.

    - Support has been added for rewriting absolute paths to relative paths
      when hashing, in order to increase cache hit rate when building the same
      source code in different directories even when compiling with `-g` and
      when using absolute include directory paths. This is done by setting the
      `CCACHE_BASEDIR` environment variable to an absolute path that specifies
      which paths to rewrite.

    - Object files are now optionally stored compressed in the cache. The
      runtime cost is negligible, and more files will fit in the ccache
      directory and in the disk cache. Set `CCACHE_COMPRESS` to enable object
      file compression. Note that you can't use compression in combination with
      the hard link feature.

    - A `CCACHE_COMPILERCHECK` option has been added. This option tells ccache
      what compiler-identifying information to hash to ensure that results
      retrieved from the cache are accurate. Possible values are: none (don't
      hash anything), mtime (hash the compiler's mtime and size) and content
      (hash the content of the compiler binary). The default is mtime.

    - It is now possible to specify extra files whose contents should be
      included in the hash sum by setting the `CCACHE_EXTRAFILES` option.

    - Added support for Objective-C and Objective-C\+\+. The statistics counter
      ``not a C/C++ file'' has been renamed to ``unsupported source language''.

    - Added support for the `-x` compiler option.

    - Added support for long command-line options.

    - A `CACHEDIR.TAG` file is now created in the cache directory. See
      <http://www.brynosaurus.com/cachedir/>.

    - Messages printed to the debug log (specified by `CCACHE_LOGFILE`) have
      been improved.

    - You can relax some checks that ccache does in direct mode by setting
      `CCACHE_SLOPPINESS`. See the manual for more information.

    - `CCACHE_TEMPDIR` no longer needs to be on the same filesystem as
      `CCACHE_DIR`.

    - The default value of `CCACHE_TEMPDIR` has been changed to
      `$CCACHE_DIR/tmp` to avoid cluttering the top directory.

    - Temporary files that later will be moved into the cache are now created
      in the cache directory they will end up in. This makes ccache more
      friendly to Linux's directory layout.

    - Improved the test suite and added tests for most of the new
      functionality. It's now also possible to specify a subset of tests to
      run.

    - Standard error output from the compiler is now only stored in the cache
      if it's non-empty.

    - If the compiler produces no object file or an empty object file, but
      gives a zero exit status (could be due to a file system problem, a buggy
      program specified by `CCACHE_PREFIX`, etc.), ccache copes with it
      properly.

    - Added `installcheck` and `distcheck` make targets.

    - Clarified cache size limit options' and cleanup semantics.

    - Improved display of cache max size values.

    - The following options are no longer hashed in the preprocessor mode:
      `-imacros`, `-imultilib`, `-iprefix`, `-iquote`, `-isysroot`,
      `-iwithprefix`, `-iwithprefixbefore`, `-nostdinc`, `-nostdinc++` and
      `-U`.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.15 2008/05/22 14:20:08 tnn Exp $
d4 1
d26 1
@


1.15
log
@Allow overriding the default cache size cap at compile time.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2008/03/08 13:49:10 joerg Exp $
d3 1
a3 1
DISTNAME=	ccache-2.4
d10 1
@


1.14
log
@DESTDIR clean.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2007/11/18 10:39:56 wiz Exp $
d18 6
@


1.13
log
@Update MASTER_SITES/HOMEPAGE, from Zafer Aydogan.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2007/09/19 06:46:51 tron Exp $
d12 1
@


1.12
log
@Resign as maintainer of all the packages which I'm no longer using.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2006/10/14 08:24:31 rillig Exp $
d5 1
a5 1
MASTER_SITES=	http://ccache.samba.org/ftp/ccache/
@


1.11
log
@Fixed PKGMANDIR.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2005/04/11 21:45:18 tv Exp $
d7 1
a7 1
MAINTAINER=	tron@@NetBSD.org
@


1.10
log
@Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2004/10/14 02:39:19 xtraeme Exp $
d15 1
a15 1
INSTALLATION_DIRS=	bin man/man1
@


1.9
log
@Update devel/ccache to 2.4.

Changes:

	* Added CCACHE_READONLY option.
	* Added CCACHE_TEMPDIR option.
	* Fixed handling of hard-linked compiler on AIX.
	* Added O_BINARY support, to try and support win32 compiles.
	* Show cache directory in stats output.
	* Fixed handling of HOME environment variable.

NOTE: This release changes the hash input slighly, so you will probably
find that you will not get any hits against your existing cache when
you upgrade.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2004/03/10 22:41:30 minskim Exp $
a12 1
USE_BUILDLINK3=		yes
@


1.8
log
@Enable pkgviews installation to allow to build other pkgviews packages
using ccache.  Noted by Ossi Herrala in PR pkg/24728.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2004/02/12 07:11:43 jlam Exp $
d3 1
a3 2
DISTNAME=	ccache-2.3
PKGREVISION=	1
@


1.7
log
@Update devel/ccache to 2.3nb1.  Changes from version 2.3 include adding
a new environment variable CCACHE_HASHCC whose value may be used to
override the compiler-specific addition to the hash value used to
distinguish between two compiles.  This is useful where the compiler is
a shell script generated on-the-fly that executes the real compiler.
This allows ccache to function correctly within the pkgsrc
infrastructure.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2004/01/31 21:36:54 jlam Exp $
d12 2
@


1.6
log
@Update devel/ccache to 2.3.  Changes from version 2.2 include:

	Added CCACHE_UMASK option
	Added support for compilation of .i files
	Fixed bug with DEPENDENCIES_OUTPUT flag
	Added support for more -Mx options
	Added separate stderr channel for distcc
	Improved test suite
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2003/07/17 21:29:48 grant Exp $
d4 1
@


1.5
log
@s/netbsd.org/NetBSD.org/
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2003/07/05 22:06:36 chris Exp $
d3 1
a3 1
DISTNAME=	ccache-2.2
d11 4
a14 1
GNU_CONFIGURE=	YES
@


1.4
log
@Update ccache to version 2.2.  No clear list of changes since 1.8 is available.
However changes since 2.1.1 include:
# added a test suite
# better integration with distcc
# added CCACHE_PREFIX option
# disabled hard links by default
# recognise some more gcc options (eg. profiling)
# added --ccache-skip option
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2002/05/07 05:22:50 tron Exp $
d7 1
a7 1
MAINTAINER=	tron@@netbsd.org
@


1.3
log
@Update "ccache" package to version 1.8. Changes since version 1.5:
- fixed warning output line numbers
- added some more C++ extensions
- fixed a minor md4 hashing bug
- added support for some of the -M compiler options
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2002/04/08 17:39:38 wiz Exp $
d3 1
a3 1
DISTNAME=	ccache-1.8
@


1.2
log
@pkglint, and remove a line from the DESCR.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2002/04/08 17:07:53 kent Exp $
d3 1
a3 1
DISTNAME=	ccache-1.5
d7 1
a7 1
MAINTAINER=	packages@@netbsd.org
@


1.1
log
@A compiler cache.
http://ccache.samba.org/
@
text
@d1 1
a1 1
# $NetBSD$
d4 1
d6 2
a7 2
CATEGORIES=	devel
MAINTENER=	packages@@netbsd.org
d11 1
a11 1
GNU_CONFIGURE=
@

