Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 1 | SUMMARY = "A parallel build system" |
| 2 | DESCRIPTION = "distcc is a parallel build system that distributes \ |
| 3 | compilation of C/C++/ObjC code across machines on a network." |
Andrew Geissler | 90fd73c | 2021-03-05 15:25:55 -0600 | [diff] [blame^] | 4 | HOMEPAGE = "https://github.com/distcc/distcc" |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 5 | SECTION = "devel" |
| 6 | LICENSE = "GPLv2" |
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" |
| 8 | |
| 9 | DEPENDS = "avahi binutils" |
| 10 | |
| 11 | PACKAGECONFIG ??= "popt" |
| 12 | PACKAGECONFIG[gtk] = "--with-gtk,--without-gtk --without-gnome,gtk+" |
| 13 | # use system popt by default |
| 14 | PACKAGECONFIG[popt] = "--without-included-popt,--with-included-popt,popt" |
| 15 | |
Brad Bishop | 00e122a | 2019-10-05 11:10:57 -0400 | [diff] [blame] | 16 | RRECOMMENDS_${PN}-server = "avahi-daemon" |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 17 | |
| 18 | SRC_URI = "git://github.com/distcc/distcc.git \ |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 19 | file://default \ |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 20 | file://distcc \ |
Andrew Geissler | d1e8949 | 2021-02-12 15:35:20 -0600 | [diff] [blame] | 21 | file://distcc.service \ |
| 22 | " |
| 23 | SRCREV = "8572e2a1af39e69b2a2d74622fed6d2dd7dca9b7" |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 24 | S = "${WORKDIR}/git" |
Andrew Geissler | d1e8949 | 2021-02-12 15:35:20 -0600 | [diff] [blame] | 25 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)" |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 26 | |
| 27 | inherit autotools pkgconfig update-rc.d useradd systemd |
| 28 | |
| 29 | ASNEEDED = "" |
| 30 | |
| 31 | EXTRA_OECONF += "--disable-Werror PYTHON='' --disable-pump-mode" |
| 32 | |
Brad Bishop | 00e122a | 2019-10-05 11:10:57 -0400 | [diff] [blame] | 33 | PACKAGE_BEFORE_PN = "${PN}-distmon-gnome ${PN}-server" |
| 34 | |
| 35 | USERADD_PACKAGES = "${PN}-server" |
| 36 | USERADD_PARAM_${PN}-server = "--system \ |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 37 | --home /dev/null \ |
| 38 | --no-create-home \ |
| 39 | --gid nogroup \ |
| 40 | distcc" |
| 41 | |
Brad Bishop | 00e122a | 2019-10-05 11:10:57 -0400 | [diff] [blame] | 42 | UPDATERCPN = "${PN}-server" |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 43 | INITSCRIPT_NAME = "distcc" |
| 44 | |
Brad Bishop | 00e122a | 2019-10-05 11:10:57 -0400 | [diff] [blame] | 45 | SYSTEMD_PACKAGES = "${PN}-server" |
| 46 | SYSTEMD_SERVICE_${PN}-server = "distcc.service" |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 47 | |
| 48 | do_install() { |
| 49 | # Improve reproducibility: compress w/o timestamps |
| 50 | oe_runmake 'DESTDIR=${D}' "GZIP_BIN=gzip -n" install |
| 51 | install -d ${D}${sysconfdir}/init.d/ |
| 52 | install -d ${D}${sysconfdir}/default |
| 53 | install -m 0755 ${WORKDIR}/distcc ${D}${sysconfdir}/init.d/ |
| 54 | install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/distcc |
| 55 | install -d ${D}${systemd_unitdir}/system/ |
| 56 | install -m 0644 ${WORKDIR}/distcc.service ${D}${systemd_unitdir}/system |
| 57 | sed -i -e 's,@BINDIR@,${bindir},g' ${D}${systemd_unitdir}/system/distcc.service |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 58 | } |
Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame] | 59 | |
Brad Bishop | 00e122a | 2019-10-05 11:10:57 -0400 | [diff] [blame] | 60 | FILES_${PN}-server = "${sysconfdir} \ |
| 61 | ${bindir}/distccd \ |
| 62 | ${sbindir}" |
| 63 | FILES_${PN}-distmon-gnome = "${bindir}/distccmon-gnome \ |
| 64 | ${datadir}/applications \ |
| 65 | ${datadir}/pixmaps" |
Brad Bishop | 1932369 | 2019-04-05 15:28:33 -0400 | [diff] [blame] | 66 | |
| 67 | # |
| 68 | # distcc upstream dropped the 3.2 branch which we reference in older project releases |
| 69 | # the revisions are there, just the branch is not. In order to be able to continue |
| 70 | # to build those old releases, adjust any mirror tarball to contain the missing branch |
| 71 | # |
| 72 | fixup_distcc_mirror_tarball () { |
| 73 | TBALL=${DL_DIR}/git2_github.com.distcc.distcc.git.tar.gz |
| 74 | if [ -f $TBALL ]; then |
| 75 | TDIR=`mktemp -d` |
| 76 | cd $TDIR |
| 77 | tar -xzf $TBALL |
| 78 | set +e |
| 79 | git rev-parse --verify 3.2 |
| 80 | if [ "$?" != "0" ]; then |
| 81 | git branch 3.2 d8b18df3e9dcbe4f092bed565835d3975e99432c |
| 82 | tar -czf $TBALL * |
| 83 | fi |
| 84 | set -e |
| 85 | rm -rf $TDIR/* |
| 86 | fi |
| 87 | } |
| 88 | do_fetch[postfuncs] += "fixup_distcc_mirror_tarball" |