]> git.ipfire.org Git - people/stevee/ipfire-3.x.git/blob - ccache/ccache.nm
Merge remote-tracking branch 'stevee/compat-packages'
[people/stevee/ipfire-3.x.git] / ccache / ccache.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = ccache
7 version = 3.2.1
8 release = 1
9
10 groups = Development/Compilers
11 url = http://ccache.samba.org/
12 license = GPLv2+
13 summary = C/C++ compiler cache.
14
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
19 a 5 to 10 times speedup in common compilations.
20 end
21
22 source_dl = http://samba.org/ftp/ccache/
23 sources = %{thisapp}.tar.xz
24
25 # Sets ccache max size up to 2 GB
26 CFLAGS += -DDEFAULT_MAXSIZE=2097152
27
28 build
29 requires
30 perl
31 zlib-devel
32 end
33
34 CCACHE_CACHE = /var/cache/ccache
35
36 configure_options += \
37 --mandir=/usr/share/man
38
39 prepare_cmds
40 # Disable pch test that fails
41 sed -e "s/^pch_suite.*/& return 0/" -i test.sh
42
43 # Remove shipped zlib
44 rm -rf zlib
45 end
46
47 test
48 SHELL=/bin/bash make check
49 end
50
51 install_cmds
52 CCACHE_PLATFORM_TARGET=$(echo %{DISTRO_MACHINE} | sed -e "s/-gnu//g")
53
54 mkdir -pv %{BUILDROOT}%{libdir}/ccache
55 for i in gcc g++ cc c++; do \
56 ln -svf ../../bin/ccache %{BUILDROOT}%{libdir}/ccache/${i}; \
57 ln -svf ../../bin/ccache %{BUILDROOT}%{libdir}/ccache/${CCACHE_PLATFORM_TARGET}-${i}; \
58 done
59
60 mkdir -pv %{BUILDROOT}/etc/profile.d
61 sed -e "s|@LIBDIR@|%{libdir}|g" -e "s|@CACHEDIR@|%{CCACHE_CACHE}|g" \
62 < %{DIR_SOURCE}/ccache.sh > %{BUILDROOT}/etc/profile.d/ccache.sh
63
64 mkdir -pv -m770 %{BUILDROOT}/%{CCACHE_CACHE}
65 end
66 end
67
68 packages
69 package %{name}
70
71 package %{name}-debuginfo
72 template DEBUGINFO
73 end
74 end