summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO23
-rw-r--r--PKGBUILD48
-rw-r--r--distccd-x86_64.config9
-rw-r--r--distccd-x86_64.service12
-rw-r--r--readme.install3
5 files changed, 95 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..4a3ab5461ec3
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,23 @@
+pkgbase = distccd-x86_64
+ pkgdesc = Toolchain for x86_64 builds via distcc on Arch ARM armv7h volunteers
+ pkgver = 9.2.0
+ pkgrel = 1
+ url = https://archlinuxarm.org/wiki/Distcc_Cross-Compiling
+ install = readme.install
+ arch = armv7h
+ license = GPL
+ depends = distcc
+ noextract = x-tools86.tar.xz
+ options = libtool
+ options = emptydirs
+ options = !strip
+ backup = etc/config.d/distccd-x86_64
+ source = https://olegtown.pw/Public/ArchLinuxArm/x-tools86.tar.xz
+ source = distccd-x86_64.service
+ source = distccd-x86_64.config
+ sha256sums = 2591533531e889090c621ffb27d78481283b33990bf60e31044ce29bf771d4a3
+ sha256sums = 23e791054de2b2599699482fdd880066c9d03758f9e38eb4634dc571cb90959e
+ sha256sums = ea406b82e10b7084192d0a480ec24ee889a6a592ea3e339dc81cf3a6f1058bf9
+
+pkgname = distccd-x86_64
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..048361d73e81
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,48 @@
+# Maintainer: graysky <graysky AT archlinux DOT us>
+
+pkgname=(distccd-x86_64)
+_date=20191103
+# inspect source tarball under $name/share/gcc-x.y.z
+pkgver=9.2.0
+pkgrel=1
+arch=('armv7h')
+license=('GPL' )
+pkgdesc="Toolchain for x86_64 builds via distcc on Arch ARM armv7h volunteers"
+url="https://archlinuxarm.org/wiki/Distcc_Cross-Compiling"
+depends=('distcc')
+options=('libtool' 'emptydirs' '!strip')
+source=(
+https://olegtown.pw/Public/ArchLinuxArm/x-tools86.tar.xz
+distccd-x86_64.{service,config}
+)
+install=readme.install
+noextract=(x-tools86.tar.xz)
+backup=(etc/config.d/distccd-x86_64)
+sha256sums=('2591533531e889090c621ffb27d78481283b33990bf60e31044ce29bf771d4a3'
+ '23e791054de2b2599699482fdd880066c9d03758f9e38eb4634dc571cb90959e'
+ 'ea406b82e10b7084192d0a480ec24ee889a6a592ea3e339dc81cf3a6f1058bf9')
+
+package() {
+ # install symlink to distccd
+ install -d "${pkgdir}/usr/bin"
+ ln -sf /usr/bin/distccd "${pkgdir}/usr/bin/distccd-x86_64"
+
+ # install whitelist for toolchain new for v3.3
+ install -d "${pkgdir}/usr/lib/distcc"
+ for bin in c++ cc cpp g++ gcc; do
+ ln -sf /usr/bin/distcc "${pkgdir}/usr/lib/distcc/x86_64-pc-linux-gnu-$bin"
+ done
+
+ # copy in toolchain
+ install -d "${pkgdir}/opt"
+ bsdtar -xpf "${srcdir}/x-tools86.tar.xz" -C "${pkgdir}/opt/"
+
+ # fix permissions problem in packaging
+ chmod 555 "${pkgdir}/opt/x-tools86/x86_64-pc-linux-gnu/bin"
+
+ # install service and config
+ install -Dm644 "${srcdir}/distccd-x86_64.service" \
+ "${pkgdir}/usr/lib/systemd/system/distccd-x86_64.service"
+ install -Dm644 "${srcdir}/distccd-x86_64.config" \
+ "${pkgdir}/etc/conf.d/distccd-x86_64"
+}
diff --git a/distccd-x86_64.config b/distccd-x86_64.config
new file mode 100644
index 000000000000..cb636202e2c9
--- /dev/null
+++ b/distccd-x86_64.config
@@ -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.
+#
+
+PATH=/opt/x-tools86/x86_64-pc-linux-gnu/bin:$PATH
+DISTCC_ARGS="--allow-private --log-file /tmp/distccd-x86_64.log"
diff --git a/distccd-x86_64.service b/distccd-x86_64.service
new file mode 100644
index 000000000000..3da12ab9d2e8
--- /dev/null
+++ b/distccd-x86_64.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Distributed compilation server for C, C++ and Objective-C
+Documentation=man:distccd(1)
+After=network.target
+
+[Service]
+User=nobody
+EnvironmentFile=/etc/conf.d/distccd-x86_64
+ExecStart=/usr/bin/distccd --no-detach --daemon $DISTCC_ARGS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/readme.install b/readme.install
new file mode 100644
index 000000000000..7f68ef7d3bd9
--- /dev/null
+++ b/readme.install
@@ -0,0 +1,3 @@
+post_install() {
+ echo '--> This package expects your armv7h device to run distccd on port 3632'
+}