]>
Commit | Line | Data |
---|---|---|
37bc2396 | 1 | ############################################################################### |
802ea3af MT |
2 | # IPFire.org - An Open Source Firewall Solution # |
3 | # Copyright (C) - IPFire Development Team <info@ipfire.org> # | |
37bc2396 MT |
4 | ############################################################################### |
5 | ||
802ea3af | 6 | name = icecream |
f1561bad MT |
7 | version = 1.0.0 |
8 | release = 1 | |
37bc2396 | 9 | |
802ea3af MT |
10 | maintainer = Michael Tremer <michael.tremer@ipfire.org> |
11 | groups = Development/Compilers | |
12 | url = http://en.opensuse.org/Icecream | |
13 | license = GPLv2+ | |
14 | summary = Distributed compiler. | |
37bc2396 | 15 | |
802ea3af | 16 | description |
8a0b7447 SS |
17 | Icecream is a distributed compile system. It allows parallel compiling by |
18 | distributing the compile jobs to several nodes of a compile network running the | |
19 | icecc daemon. The icecc scheduler routes the jobs and provides status and | |
20 | statistics information to the icecc monitor. Each compile node can accept one | |
21 | or more compile jobs depending on the number of processors and the settings of | |
22 | the daemon. Link jobs and other jobs which cannot be distributed are executed | |
37bc2396 | 23 | locally on the node where the compilation is started. |
802ea3af MT |
24 | end |
25 | ||
8a0b7447 | 26 | source_dl = ftp://ftp.suse.com/pub/projects/icecream/ |
f1561bad | 27 | sources = icecc-%{version}.tar.bz2 |
802ea3af MT |
28 | |
29 | build | |
30 | requires | |
31 | gcc-c++ | |
32 | end | |
33 | ||
34 | DIR_APP = %{DIR_SRC}/icecc-%{version} | |
37bc2396 | 35 | |
802ea3af MT |
36 | configure_options += \ |
37 | --disable-static \ | |
38 | --enable-shared | |
37bc2396 | 39 | |
802ea3af | 40 | install_cmds |
50abc952 | 41 | mkdir -pv %{BUILDROOT}%{libdir}/icecc/bin |
802ea3af | 42 | for i in gcc g++ cc c++; do |
f1561bad MT |
43 | ln -svf ../../../bin/icecc %{BUILDROOT}%{prefix}/lib/icecc/bin/${i} |
44 | ln -svf ../../../bin/icecc %{BUILDROOT}%{prefix}/lib/icecc/bin/%{DISTRO_BUILDTARGET}-${i} | |
802ea3af | 45 | done |
f1561bad MT |
46 | ln -svf icecc %{BUILDROOT}%{bindir}/icerun |
47 | sed -e 's|^#!.*|#!/bin/bash|' -i %{BUILDROOT}%{prefix}/lib/icecc/icecc-create-env | |
37bc2396 | 48 | |
802ea3af | 49 | mkdir -pv %{BUILDROOT}/etc/profile.d |
f1561bad | 50 | sed -e "s|@LIBDIR@|%{prefix}/lib|g" \ |
802ea3af | 51 | < %{DIR_SOURCE}/icecream.sh > %{BUILDROOT}/etc/profile.d/icecream.sh |
37bc2396 | 52 | |
802ea3af MT |
53 | # create default working dir |
54 | mkdir -pv %{BUILDROOT}/var/cache/icecream | |
8a0b7447 | 55 | |
8a0b7447 SS |
56 | # Remove unwanted symlinks. |
57 | rm -rvf %{BUILDROOT}/usr/bin/c++ | |
58 | rm -rvf %{BUILDROOT}/usr/bin/cc | |
59 | rm -rvf %{BUILDROOT}/usr/bin/g++ | |
60 | rm -rvf %{BUILDROOT}/usr/bin/gcc | |
84f3809e SS |
61 | |
62 | # Create Logfiles. | |
63 | mkdir -pv %{BUILDROOT}/var/log | |
64 | touch %{BUILDROOT}/var/log/icecc{d,-scheduler}.log | |
802ea3af MT |
65 | end |
66 | end | |
37bc2396 | 67 | |
802ea3af MT |
68 | packages |
69 | package %{name} | |
8a0b7447 SS |
70 | requires |
71 | gcc-c++ | |
72 | /usr/bin/ldd | |
73 | end | |
84f3809e SS |
74 | |
75 | prerequires += systemd-units | |
76 | ||
77 | script postin | |
78 | /bin/systemctl daemon-reload >/dev/null 2>&1 || : | |
79 | end | |
80 | ||
81 | script preun | |
82 | /bin/systemctl --no-reload disable iceccd.service \ | |
83 | icecc-scheduler.service >/dev/null 2>&1 || : | |
84 | /bin/systemctl stop iceccd.service \ | |
85 | icecc-scheduler.service >/dev/null 2>&1 || : | |
86 | end | |
87 | ||
88 | script postun | |
89 | /bin/systemctl daemon-reload >/dev/null 2>&1 || : | |
90 | end | |
91 | ||
92 | script postup | |
93 | /bin/systemctl daemon-reload >/dev/null 2>&1 || : | |
94 | /bin/systemctl try-restart iceccd.service \ | |
95 | icecc-scheduler.service >/dev/null 2>&1 || : | |
96 | end | |
802ea3af | 97 | end |
1f9bc2f0 | 98 | |
802ea3af MT |
99 | package %{name}-devel |
100 | template DEVEL | |
101 | end | |
1f9bc2f0 MT |
102 | |
103 | package %{name}-debuginfo | |
104 | template DEBUGINFO | |
105 | end | |
802ea3af | 106 | end |