172 lines
5.7 KiB
RPMSpec
172 lines
5.7 KiB
RPMSpec
%define compilers gcc g++ cc c++ gcc296 g++296 gcc32 kgcc egcs egcs++ gcc3 g++3 gcc-ssa g++-ssa gcc34 c++34 g++34 gcc33 c++33 g++33
|
|
%define pkgs gcc, gcc-c++, compat-gcc, compat-gcc-c++, gcc32, gcc3, gcc3-c++, kgcc, compat-egcs, compat-egcs-c++, egcs, egcs-c++, gcc-ssa, gcc-c++-ssa, gcc34, gcc34-c++
|
|
|
|
Name: ccache
|
|
Version: 2.3
|
|
Release: 0.fdr.5.1
|
|
Epoch: 0
|
|
Summary: Compiler cache
|
|
|
|
Group: Development/Tools
|
|
License: GPL
|
|
URL: http://ccache.samba.org/
|
|
Source0: http://ccache.samba.org/ftp/ccache/ccache-2.3.tar.gz
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
%description
|
|
ccache is a compiler cache. It acts as a caching pre-processor to
|
|
C/C++ compilers, using the -E compiler switch and a hash to detect
|
|
when a compilation can be satisfied from cache. This often results in
|
|
a 5 to 10 times speedup in common compilations.
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
|
|
%build
|
|
%configure
|
|
%{__make} %{?_smp_mflags}
|
|
cat <<EOF > %{name}.sh
|
|
if ! echo "\$PATH" | grep -q %{_libdir}/ccache/bin ; then
|
|
PATH="%{_libdir}/ccache/bin:\$PATH"
|
|
fi
|
|
EOF
|
|
cat <<EOF > %{name}.csh
|
|
if ( "\$path" !~ *%{_libdir}/ccache/bin* ) then
|
|
set path = ( %{_libdir}/ccache/bin \$path )
|
|
endif
|
|
EOF
|
|
|
|
|
|
%install
|
|
rm -rf $RPM_BUILD_ROOT
|
|
install -dm 755 $RPM_BUILD_ROOT{%{_libdir}/ccache/bin,%{_mandir}/man1}
|
|
install -pm 755 ccache $RPM_BUILD_ROOT%{_libdir}/ccache/bin
|
|
install -pm 644 ccache.1 $RPM_BUILD_ROOT%{_mandir}/man1
|
|
install -dm 755 $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
|
|
install -pm 755 %{name}.sh %{name}.csh $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
|
|
> %{name}-%{version}.compilers
|
|
for name in %{compilers} ; do
|
|
for comp in $name %{_target_cpu}-%{_vendor}-%{_target_os}-$name ; do
|
|
ln -s ccache $RPM_BUILD_ROOT%{_libdir}/ccache/bin/$comp
|
|
echo "%ghost %{_libdir}/ccache/bin/$comp" >> %{name}-%{version}.compilers
|
|
done
|
|
done
|
|
|
|
|
|
%clean
|
|
rm -fr $RPM_BUILD_ROOT
|
|
|
|
|
|
%triggerin -- %{pkgs}
|
|
for name in %{compilers} ; do
|
|
for comp in $name %{_target_cpu}-%{_vendor}-%{_target_os}-$name ; do
|
|
if [ -x %{_bindir}/$comp ] ; then
|
|
ln -sf ccache %{_libdir}/ccache/bin/$comp
|
|
else
|
|
# This block is to support upgrading from < 2.3-0.fdr.1.
|
|
rm -f %{_libdir}/ccache/bin/$comp
|
|
fi
|
|
done
|
|
done
|
|
|
|
%triggerpostun -- %{pkgs}
|
|
for name in %{compilers} ; do
|
|
for comp in $name %{_target_cpu}-%{_vendor}-%{_target_os}-$name ; do
|
|
[ -x %{_bindir}/$comp ] || rm -f %{_libdir}/ccache/bin/$comp
|
|
done
|
|
done
|
|
|
|
|
|
%files -f %{name}-%{version}.compilers
|
|
%defattr(-,root,root,-)
|
|
%doc README
|
|
%config %{_sysconfdir}/profile.d/%{name}.*sh
|
|
%dir %{_libdir}/ccache
|
|
%dir %{_libdir}/ccache/bin
|
|
%{_libdir}/ccache/bin/ccache
|
|
%{_mandir}/man1/ccache.1*
|
|
|
|
|
|
%changelog
|
|
* Fri Jun 25 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:2.3-0.fdr.5
|
|
- Add support for gcc33 and g++33.
|
|
|
|
* Thu Jun 10 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:2.3-0.fdr.4
|
|
- Fix hardcoded lib path in profile.d scriptlets (bug 1558).
|
|
|
|
* Mon May 3 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:2.3-0.fdr.3
|
|
- Add support for gcc34 and g++34, and
|
|
%%{_target_cpu}-%%{_vendor}-%%{_target_os}-* variants.
|
|
|
|
* Thu Nov 13 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.3-0.fdr.2
|
|
- Add overriding symlinks for gcc-ssa and g++-ssa (bug 963).
|
|
|
|
* Tue Nov 11 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.3-0.fdr.1
|
|
- Update to 2.3.
|
|
- Implement triggers to keep list of "aliased" compilers up to date on the fly.
|
|
- Add gcc32 and a bunch of legacy packages to the list of overridden compilers.
|
|
|
|
* Sat Aug 2 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.2-0.fdr.6
|
|
- Add c++ to the list of overridden compilers (bug 548).
|
|
- Own everything including dirs under %%{_libdir}/ccache (bug 529).
|
|
- %%{buildroot} -> $RPM_BUILD_ROOT.
|
|
- Fix man page permissions.
|
|
- Use %%{?_smp_mflags}.
|
|
- Other cosmetic specfile tweaks.
|
|
|
|
* Fri Mar 29 2003 Warren Togami <warren@togami.com> 2.2-0.fdr.5
|
|
- Epoch: 0
|
|
- Remove /usr/lib/ccache/sbin from PATH
|
|
|
|
* Fri Mar 28 2003 Warren Togami <warren@togami.com> 2.2-0.fdr.4
|
|
- Add BuildRequires: autoconf >= 0:2.52
|
|
- Add Requires: gcc, gcc-c++ (minimal expectation of compilers)
|
|
|
|
* Fri Mar 28 2003 Warren Togami <warren@togami.com> 2.2-0.fdr.3
|
|
- No longer use %ghost, symlinks always exist
|
|
|
|
* Thu Mar 27 2003 Warren Togami <warren@togami.com> 2.2-0.fdr.2
|
|
- Move symlinks to /usr/lib/ccache/bin
|
|
- Use /etc/profile.d/ccache.* scripts to add it to PATH
|
|
As long as it is before /usr/bin it is good.
|
|
|
|
* Thu Mar 27 2003 Warren Togami <warren@togami.com> 2.2-0.fdr.1
|
|
- Move symlinks to /bin since it seems to be at the beginning of PATH of all users
|
|
before /usr/bin, the location of the real compiler.
|
|
- Package symlinks rather than create and remove during %post and %postun
|
|
|
|
* Thu Feb 20 2003 Warren Togami <warren@togami.com> 2.2-4.fedora.1
|
|
- Fedora
|
|
|
|
* Thu Feb 20 2003 Samir M. Nassar <rpm@redconcepts.net> 2.2-3.redconcepts
|
|
- Added symlinks to g++
|
|
- Removed symlink removal in post
|
|
|
|
* Thu Feb 20 2003 Samir M. Nassar <rpm@redconcepts.net> 2.2-2.redconcepts
|
|
- Cleans symlinks if present to make upgrades easier
|
|
|
|
* Thu Feb 20 2003 Samir M. Nassar <rpm@redconcepts.net> 2.2-1.redconcepts
|
|
- Upgraded to ccache 2.2
|
|
|
|
* Tue Feb 04 2003 Samir M. Nassar <rpm@redconcepts.net> 2.1.1-4.redconcepts
|
|
- Using %post to create the soft symlinks
|
|
- Using %postun to remove the soft symlinks
|
|
- Thanks to Che <che666@uni.de> for the help
|
|
- Packaged as user
|
|
|
|
* Sun Jan 19 2003 Samir M. Nassar <rpm@redconcepts.net> 2.1.1-3.redconcepts
|
|
- make a soft symlink between ccache and gcc
|
|
- make a soft symlink between ccache and cc
|
|
|
|
* Thu Jan 16 2003 Samir M. Nassar <rpm@redconcepts.net> 2.1.1-2.redconcepts
|
|
- Normalized spec file.
|
|
|
|
* Wed Jan 15 2003 Samir M, Nassar <rpm@redconcepts.net> 2.1.1-1.redconcepts
|
|
- Using ccache 2.2.1 sources
|
|
- Changed release to redconcepts for consistency
|
|
|
|
* Wed Oct 22 2002 Samir M. Nassar <rpm.redconcepts.net> 1.9-1.rcn
|
|
- Initial RedConcepts.NET (rcn) build for Red Hat Linux 8.0
|