summaryrefslogtreecommitdiff
path: root/PKGBUILD
blob: f1c9d8423dce7167d6538abf7df116cea143101c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# Maintainer: jc_gargma <jc_gargma@iserlohn-fortress.net>
# Maintainer (AUR): Ben Widawsky <ben@bwidawsk.net>
# Contributor (AUR): Isaac C. Aronson <isaac@pingas.org> (original PKGBUILD)
# Contributor (AUR): Sergio Correia <sergio@correia.cc> (modifications derived from icecream-git package)

# # I maintain this because:
# AUR version not configured for openRC
# AUR version uses excess scripts
# AUR version uses faulty prefix

pkgname=icecream
_exname=$pkgname-scheduler
pkgver=1.3.1
pkgrel=1.3
pkgdesc="Distributed compiler with a central scheduler to share build load"
url="https://github.com/icecc/icecream"
license=('GPL2')
makedepends=('docbook2x')
depends=('bash' 'libcap-ng' 'libarchive' 'lzo' 'zstd')
provides=('icecream')
optdepends=('icecream-sundae: A commandline monitor for Icecream'
            'icemon: Icecream GUI monitor'
            'ccache: ccache enabled remote builds.')
conflicts=('icecream-git')
backup=("etc/conf.d/$pkgname"
        "etc/conf.d/$_exname")
arch=('x86_64')
install=$pkgname.install
source=($pkgname-$pkgver.tar.gz::https://github.com/icecc/$pkgname/archive/$pkgver.tar.gz
        $pkgname.initd
        $pkgname.confd
        $_exname.initd
        $_exname.confd
        ld-$pkgname.conf
        icecream.xml
        icecream-telnet.xml
        icecream-scheduler.xml
        )
b2sums=('d7d66dadf27b0b88ab706bf217ce2b0d33b5db2ed95e48c4e9dcbd000931688ad6809ecbd4e14f0f3889bcebddc8543bd364c9dda09ba71e5dc04d0a5a2122d5'
        '35780f1b485bee29b30352373b505115ee648be531b8cf06d1544a41aa233909845c509e63be5761a90be300518ca3f4fca775c4f9785b3d394a47373ba1b2af'
        '529b8edbaf2e1c1b3adc54abc691c34280be91f1d627d3d898a4c960119f6a1131b5392fff7c8ce204d8265a9852e9cd0d4a47241de47ef1deb9669ee8088d7e'
        '6c0fbb36f737ff7f03e4d631a6b92d47370a14d0c7587cb2273e05b4bf1413dec7db6e68d5467a83e7ecf4c14aa1bde0d8bfb643b3e458e7d6a8147a267c3652'
        'b0d5f38d49a410ca5c45ebd2c073697833bccdf5da48fb8724e4cccecfbda85e53a431ed802535bcc2fb337656d6581508c63394d8338a40b3620cb00657a022'
        '863828162cd3ad6a55f6a83ba0e07e9b15b14c99301f25ef5d8a085dde3adcaa49976063be34bf131afebea95a8a19bd6bf1113fb76bf80d8299ebc62b9bc30e'
        '7087aaeacdc5589fce8f993ca959ea62510bf43702269f860a2fd477b1b63b89503e1c65071654e9a14069940120d0a080d42d2993451f15e58648f2d14a573b'
        '632e229678c991e19a9bd5eb263ae1cffbc3df0ba0f23d0d6033ecb18cc85719d6a56eec486026b8524f77d3a049d21469958b158a869a06df3d528f04dd4f31'
        'f955f378a5dded1b3552760aa5b55352fe85ced57b1f6743c723c7b24b3ef95ff25e4d321db1d30f4e506e6002c0f53a0ffc7bb4d997f8a72bfe802349ae96ef')
build() {
  cd "$srcdir/$pkgname-$pkgver"

  ./autogen.sh
  ./configure --prefix=/usr --enable-shared --disable-static --mandir=/usr/share/man
  make
}

package() {
  cd "$srcdir/$pkgname-$pkgver"

  make DESTDIR="$pkgdir" install
  install -D -m755 "$srcdir"/$_exname.initd "$pkgdir/etc/init.d/$_exname"
  install -D -m644 "$srcdir"/$_exname.confd "$pkgdir/etc/conf.d/$_exname"
  install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir/etc/init.d/$pkgname"
  install -D -m644 "$srcdir"/$pkgname.confd "$pkgdir/etc/conf.d/$pkgname"
  install -D -m644 "$srcdir"/ld-$pkgname.conf "${pkgdir}/etc/ld.so.conf.d/$pkgname.conf"

  # Move sbin to bin
  install -D -m755 "${pkgdir}/usr/sbin/iceccd" "${pkgdir}/usr/bin/iceccd"
  install -D -m755 "${pkgdir}/usr/sbin/icecc-scheduler" "${pkgdir}/usr/bin/icecc-scheduler"
  rm -rf "${pkgdir}/usr/sbin"
  
  # place the firewalld service rulesets
  install -D -m644 "$srcdir"/icecream.xml "$pkgdir/usr/lib/firewalld/services/icecream.xml"
  install -D -m644 "$srcdir"/icecream-telnet.xml "$pkgdir/usr/lib/firewalld/services/icecream-telnet.xml"
  install -D -m644 "$srcdir"/icecream-scheduler.xml "$pkgdir/usr/lib/firewalld/services/icecream-scheduler.xml"
}