]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blob - ccache/ccache.nm
Merge remote-tracking branch 'ms/u-boot'
[people/ms/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.1.6
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 end
43
44 test
45 make check
46 end
47
48 install_cmds
49 CCACHE_PLATFORM_TARGET=$(echo %{DISTRO_MACHINE} | sed -e "s/-gnu//g")
50
51 mkdir -pv %{BUILDROOT}/usr/lib/ccache
52 for i in gcc g++ cc c++; do \
53 ln -svf ../../bin/ccache %{BUILDROOT}/usr/lib/ccache/${i}; \
54 ln -svf ../../bin/ccache %{BUILDROOT}/usr/lib/ccache/${CCACHE_PLATFORM_TARGET}-${i}; \
55 done
56
57 mkdir -pv %{BUILDROOT}/etc/profile.d
58 sed -e "s|@LIBDIR@|/usr/lib|g" -e "s|@CACHEDIR@|%{CCACHE_CACHE}|g" \
59 < %{DIR_SOURCE}/ccache.sh > %{BUILDROOT}/etc/profile.d/ccache.sh
60
61 mkdir -pv -m770 %{BUILDROOT}/%{CCACHE_CACHE}
62 end
63 end
64
65 packages
66 package %{name}
67
68 package %{name}-debuginfo
69 template DEBUGINFO
70 end
71 end