summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Morgner2020-12-03 12:07:20 +0100
committerFelix Morgner2020-12-03 12:07:20 +0100
commitf5d3245b2708122b5613a7518453a7c39824491f (patch)
tree56e45c8c1e98cea1ec8c0254ea2dd1cfafe2df0c
downloadaur-f5d3245b2708122b5613a7518453a7c39824491f.tar.gz
initial commit
-rw-r--r--.SRCINFO30
-rw-r--r--PKGBUILD79
-rw-r--r--distccd.conf.d9
-rw-r--r--distccd.service12
-rw-r--r--sysusers.conf2
5 files changed, 132 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..801ac3d13751
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,30 @@
+pkgbase = distcc-arm-avahi
+ pkgdesc = Distributed compilation service for C, C++ and Objective-C (with zeroconf)
+ pkgver = 3.3.3
+ pkgrel = 7
+ url = https://github.com/distcc/distcc
+ arch = arm
+ arch = armv6h
+ arch = armv7h
+ arch = aarch64
+ license = GPL
+ makedepends = git
+ makedepends = python
+ depends = avahi
+ depends = popt
+ optdepends = python
+ provides = distcc=3.3.3
+ conflicts = distcc
+ backup = etc/conf.d/distccd
+ backup = etc/distcc/hosts
+ source = git+https://github.com/distcc/distcc#commit=4cde9bcfbda589abd842e3bbc652ce369085eaae
+ source = distccd.conf.d
+ source = distccd.service
+ source = sysusers.conf
+ sha256sums = SKIP
+ sha256sums = 43e02b461841ca2976816c244a0eca8b24820ca143f73cc0924403d75a8c012f
+ sha256sums = 360493245590d8c1480ff93cd30c9e81cb86efebacd78e45f37e7d6cdbcc2136
+ sha256sums = 4e037a6225f498b51d6902d117be979454ac78ec5fd2f65f1d5a38e10859612a
+
+pkgname = distcc-arm-avahi
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..d37980fc138d
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,79 @@
+# Maintainer: Alexander F. Rødseth <xyproto@archlinux.org>
+# Contributor: John <graysky@archlinux.us>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Judd Vinet <jvinet@zeroflux.org>
+# Contributor: Giovanni Scafora <giovanni@archlinux.org>
+
+pkgname=distcc-arm-avahi
+pkgver=3.3.3
+pkgrel=7
+pkgdesc='Distributed compilation service for C, C++ and Objective-C (with zeroconf)'
+provides=('distcc=3.3.3')
+conflicts=('distcc')
+arch=(arm armv6h armv7h aarch64)
+url='https://github.com/distcc/distcc'
+license=(GPL)
+depends=(avahi popt)
+makedepends=(git python)
+optdepends=(python)
+backup=(etc/conf.d/distccd
+ etc/distcc/hosts)
+source=("git+$url#commit=4cde9bcfbda589abd842e3bbc652ce369085eaae" # tag: v3.3.3
+ distccd.conf.d
+ distccd.service
+ sysusers.conf)
+sha256sums=('SKIP'
+ '43e02b461841ca2976816c244a0eca8b24820ca143f73cc0924403d75a8c012f'
+ '360493245590d8c1480ff93cd30c9e81cb86efebacd78e45f37e7d6cdbcc2136'
+ '4e037a6225f498b51d6902d117be979454ac78ec5fd2f65f1d5a38e10859612a')
+
+prepare() {
+ cd "$srcdir/distcc"
+
+ ./autogen.sh
+ sed -i 's/ install-gnome-data//g' Makefile.in
+
+ # FS#66418, support Python 3.9
+ find . -name "*.py" -type f -exec sed -i 's/time.clock()/time.perf_counter()/g' {} \;
+}
+
+build() {
+ cd "$srcdir/distcc"
+
+ export CFLAGS+=' -fcommon'
+ ./configure \
+ --enable-rfc2553 \
+ --mandir=/usr/share/man \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc
+ make WERROR_CFLAGS= INCLUDESERVER_PYTHON=/usr/bin/python
+}
+
+package() {
+ make -C "$srcdir/distcc" \
+ DESTDIR="$pkgdir" \
+ INCLUDESERVER_PYTHON=/usr/bin/python \
+ install
+
+ # Configuration
+ install -Dm644 distccd.conf.d "$pkgdir/etc/conf.d/distccd"
+ install -Dm644 distccd.service \
+ "$pkgdir/usr/lib/systemd/system/distccd.service"
+
+ # Symlinks
+ _targets=(c++ c89 c99 cc clang clang++ cpp g++)
+ install -d "$pkgdir/usr/lib/distcc/bin"
+ for bin in "${_targets[@]}"; do
+ # For whitelist since version 3.3, see FS#57978
+ ln -sf "../../bin/distcc" "$pkgdir/usr/lib/distcc/$bin"
+ # Needed for makepkg to work
+ ln -sf "../../../bin/distcc" "$pkgdir/usr/lib/distcc/bin/$bin"
+ done
+
+ # FS#67629
+ install -Dm644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/distccd.conf"
+}
+
+# getver: distcc.org
+# vim: ts=2 sw=2 et:
diff --git a/distccd.conf.d b/distccd.conf.d
new file mode 100644
index 000000000000..a0365fecf354
--- /dev/null
+++ b/distccd.conf.d
@@ -0,0 +1,9 @@
+#
+# Parameters to be passed to distccd
+#
+# You must explicitly add IPs (or subnets) that are allowed to connect,
+# using the --allow switch. See the distccd manpage for more info.
+#
+
+DISTCC_ARGS="--allow 127.0.0.1"
+#DISTCC_ARGS="--allow 192.168.0.0/24 --log-level error --log-file /tmp/distccd.log"
diff --git a/distccd.service b/distccd.service
new file mode 100644
index 000000000000..e9b1fe91af22
--- /dev/null
+++ b/distccd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Distributed C, C++ and Objective-C compiler
+Documentation=man:distccd(1)
+After=network.target
+
+[Service]
+User=distcc
+EnvironmentFile=/etc/conf.d/distccd
+ExecStart=/usr/bin/distccd --no-detach --daemon $DISTCC_ARGS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sysusers.conf b/sysusers.conf
new file mode 100644
index 000000000000..c026a4434813
--- /dev/null
+++ b/sysusers.conf
@@ -0,0 +1,2 @@
+g distcc - -
+u distcc - "distcc user" /usr/bin/nologin