]>
Commit | Line | Data |
---|---|---|
9efad0d0 | 1 | ############################################################################### |
802ea3af MT |
2 | # IPFire.org - An Open Source Firewall Solution # |
3 | # Copyright (C) - IPFire Development Team <info@ipfire.org> # | |
9efad0d0 MT |
4 | ############################################################################### |
5 | ||
802ea3af | 6 | name = ccache |
f4c965cf | 7 | version = 3.7.1 |
e0f5e371 | 8 | release = 1 |
9efad0d0 | 9 | |
802ea3af | 10 | groups = Development/Compilers |
f4c965cf | 11 | url = https://ccache.dev |
802ea3af MT |
12 | license = GPLv2+ |
13 | summary = C/C++ compiler cache. | |
fce85abf | 14 | |
802ea3af MT |
15 | description |
16 | ccache is a compiler cache. It acts as a caching pre-processor to | |
17 | C/C++ compilers, using the -E compiler switch and a hash to detect | |
18 | when a compilation can be satisfied from cache. This often results in | |
9efad0d0 | 19 | a 5 to 10 times speedup in common compilations. |
802ea3af | 20 | end |
9efad0d0 | 21 | |
f4c965cf | 22 | source_dl = https://github.com/ccache/ccache/releases/download/v%{version}/ |
38736b09 | 23 | sources = %{thisapp}.tar.xz |
9efad0d0 | 24 | |
590c45fb SS |
25 | # Sets ccache max size up to 2 GB |
26 | CFLAGS += -DDEFAULT_MAXSIZE=2097152 | |
27 | ||
802ea3af MT |
28 | build |
29 | requires | |
ad379bce MT |
30 | autoconf |
31 | automake | |
802ea3af MT |
32 | perl |
33 | zlib-devel | |
34 | end | |
35 | ||
a41c6c9b | 36 | CCACHE_CACHE = %{localstatedir}/cache/ccache |
802ea3af MT |
37 | |
38 | prepare_cmds | |
ad379bce MT |
39 | # Do not run test for pre-compiled headers |
40 | sed -e "/^pch$/d" -i test/run | |
e0f5e371 MT |
41 | |
42 | # Remove shipped zlib | |
43 | rm -rf zlib | |
802ea3af | 44 | end |
13f2619e | 45 | |
802ea3af | 46 | test |
a41c6c9b | 47 | make check |
802ea3af | 48 | end |
16416892 | 49 | |
802ea3af MT |
50 | install_cmds |
51 | CCACHE_PLATFORM_TARGET=$(echo %{DISTRO_MACHINE} | sed -e "s/-gnu//g") | |
9efad0d0 | 52 | |
8b7867f2 | 53 | mkdir -pv %{BUILDROOT}%{libdir}/ccache |
802ea3af | 54 | for i in gcc g++ cc c++; do \ |
8b7867f2 MT |
55 | ln -svf ../../bin/ccache %{BUILDROOT}%{libdir}/ccache/${i}; \ |
56 | ln -svf ../../bin/ccache %{BUILDROOT}%{libdir}/ccache/${CCACHE_PLATFORM_TARGET}-${i}; \ | |
802ea3af | 57 | done |
9efad0d0 | 58 | |
802ea3af | 59 | mkdir -pv %{BUILDROOT}/etc/profile.d |
8b7867f2 | 60 | sed -e "s|@LIBDIR@|%{libdir}|g" -e "s|@CACHEDIR@|%{CCACHE_CACHE}|g" \ |
802ea3af | 61 | < %{DIR_SOURCE}/ccache.sh > %{BUILDROOT}/etc/profile.d/ccache.sh |
13f2619e | 62 | |
802ea3af MT |
63 | mkdir -pv -m770 %{BUILDROOT}/%{CCACHE_CACHE} |
64 | end | |
65 | end | |
13f2619e | 66 | |
802ea3af MT |
67 | packages |
68 | package %{name} | |
1f9bc2f0 MT |
69 | |
70 | package %{name}-debuginfo | |
71 | template DEBUGINFO | |
72 | end | |
802ea3af | 73 | end |