ccache/ccache.spec
Martin Pluskal 04248c3075 Accepting request 821771 from home:elimat:branches:devel:tools:building
- Update to version 3.7.10: 
  * 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.

OBS-URL: https://build.opensuse.org/request/show/821771
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/ccache?expand=0&rev=94
2020-07-20 05:03:27 +00:00

81 lines
2.5 KiB
RPMSpec

#
# spec file for package ccache
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: ccache
Version: 3.7.10
Release: 0
Summary: A Fast C/C++ Compiler Cache
License: GPL-3.0-or-later
URL: https://ccache.dev/
Source0: https://github.com/ccache/ccache/releases/download/v%{version}/ccache-%{version}.tar.xz#/%{name}-%{version}.tar.xz
Source1: https://github.com/ccache/ccache/releases/download/v%{version}/ccache-%{version}.tar.xz.asc#/%{name}-%{version}.tar.xz.asc
Source2: %{name}.keyring
# PATCH-FEATURE-UPSTREAM 0001-Add-another-cleanup-mechanism-evict-older-than.patch https://github.com/ccache/ccache/pull/605
Patch0: 0001-Add-another-cleanup-mechanism-evict-older-than.patch
BuildRequires: zlib-devel
Provides: distcc:%{_bindir}/ccache
%description
ccache is a compiler cache. It speeds up recompilation by caching the
result of previous compilations and detecting when the same compilation is
being done again. Supported languages are C, C++, Objective-C and
Objective-C++.
%prep
%setup -q
%patch0 -p1
%build
%configure \
--without-bundled-zlib
%make_build
%install
%make_install
# create the compat symlinks into /usr/libdir/ccache
mkdir -p %{buildroot}/%{_libdir}/%{name}
cd %{buildroot}/%{_libdir}/%{name}
ln -sf ../../bin/%{name} gcc
ln -sf ../../bin/%{name} g++
ln -sf ../../bin/%{name} gcc-objc
ln -sf ../../bin/%{name} gfortran
# do the same for clang
ln -sf ../../bin/%{name} clang
ln -sf ../../bin/%{name} clang++
# and regular cc
ln -sf ../../bin/%{name} cc
ln -sf ../../bin/%{name} c++
# and for nvidia cuda
ln -sf ../../bin/%{name} nvcc
%ifnarch %{ix86}
# Testsuite fails on i586
%check
%make_build check
%endif
%files
%license LICENSE.* GPL-3.0.txt
%doc doc/AUTHORS.* doc/MANUAL.* doc/NEWS.* README.*
%{_bindir}/%{name}
%{_libdir}/%{name}
%{_mandir}/man1/%{name}.1%{?ext_man}
%changelog