summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Hill <rhill@gentoo.org>2008-05-26 01:34:38 +0000
committerRyan Hill <rhill@gentoo.org>2008-05-26 01:34:38 +0000
commit870c07f09ac3c310844ecb1c6aac35c65b62e161 (patch)
tree5c44300a2c9916a1fa41c688897c0eec4de2db48 /sys-devel/distcc
parentAdd custom-cpuopts use flag; add dxr2, dxr3 use flag, bug 223587 (diff)
downloadhistorical-870c07f09ac3c310844ecb1c6aac35c65b62e161.tar.gz
historical-870c07f09ac3c310844ecb1c6aac35c65b62e161.tar.bz2
historical-870c07f09ac3c310844ecb1c6aac35c65b62e161.zip
Add patch to always run jobs containing -march=native locally. Bug
#223159. Package-Manager: portage-2.2_pre7/cvs/Linux 2.6.25-gentoo-r3 Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz
Diffstat (limited to 'sys-devel/distcc')
-rw-r--r--sys-devel/distcc/ChangeLog9
-rw-r--r--sys-devel/distcc/Manifest10
-rw-r--r--sys-devel/distcc/distcc-2.18.3-r13.ebuild187
-rw-r--r--sys-devel/distcc/files/distcc-march-native.patch16
4 files changed, 217 insertions, 5 deletions
diff --git a/sys-devel/distcc/ChangeLog b/sys-devel/distcc/ChangeLog
index 3e44171b7130..669cf9d636c6 100644
--- a/sys-devel/distcc/ChangeLog
+++ b/sys-devel/distcc/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-devel/distcc
# Copyright 2000-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/ChangeLog,v 1.172 2008/04/25 12:15:18 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/ChangeLog,v 1.173 2008/05/26 01:34:38 dirtyepic Exp $
+
+*distcc-2.18.3-r13 (26 May 2008)
+
+ 26 May 2008; Ryan Hill <dirtyepic@gentoo.org>
+ +files/distcc-march-native.patch, +distcc-2.18.3-r13.ebuild:
+ Add patch to always run jobs containing -march=native locally. Bug
+ #223159.
25 Apr 2008; Diego Pettenò <flameeyes@gentoo.org>
distcc-2.18.3-r12.ebuild:
diff --git a/sys-devel/distcc/Manifest b/sys-devel/distcc/Manifest
index 99a73fa4991a..06aed62392d9 100644
--- a/sys-devel/distcc/Manifest
+++ b/sys-devel/distcc/Manifest
@@ -13,17 +13,19 @@ AUX distcc-create-dir.patch 1404 RMD160 c9c878715ac02952d791da8776952e69d5de7e57
AUX distcc-freedesktop.patch 2519 RMD160 98020f40eebe7ca9cd629e602a9ff216df0b97f9 SHA1 1cdcacc021a51ad3469ab16b90f43379538629f9 SHA256 632f7865da9f35773fb95df53ae77089e1bbf7aa936b86d0f4b938603a8c37c3
AUX distcc-gentoo-multilib-r1.patch 4245 RMD160 175cb4c2ce0e8ecb2262165b3fd9a0d89ddc7beb SHA1 f617965969e7b4afd1b6467a56fe0f7f748c7717 SHA256 78839f7392769ab41509e84f07c36d07315d0220f7aacbb174ed1aba80b9c28d
AUX distcc-gentoo-multilib.patch 3784 RMD160 f48a3f2f8c82379c30c9da0e49aa66ba34681882 SHA1 5a3ba956caaab2d5c6ef44ee3ded10a33ac870dc SHA256 d3af7a7592d0a11a35d294022b36feca2fb625e4799513bf56a79e0656278403
+AUX distcc-march-native.patch 934 RMD160 29908d5b5c4622285a78f221b2633e3ee495a648 SHA1 e1ac6912d55c9b3dda9b6f1a03c973ad1a85f359 SHA256 bc95daad65a3c3a7429b94b432b5d2aa470cb50d6e67c65303865df1e28831e7
DIST distcc-2.18-avahi.patch.bz2 9447 RMD160 eaf358bc417566bb8cf7ea005ce853df880f4e49 SHA1 af76073bdde6668f3013f4e84f693155b3b887ad SHA256 1c6fb40b57385870b267d3ce4285ba3fa32e57a335cfcd3b96f4f9a36645a97f
DIST distcc-2.18.3.tar.bz2 341601 RMD160 c7ac6f3e161dccf39b841b57a3328b4208d28c2d SHA1 88e4c15826bdbc5a3de0f7c1bcb429e558c6976d SHA256 6500f1bc2a30b1f044ebed79c6ce15457d1712263e65f0db7d6046af262ba434
EBUILD distcc-2.18.3-r10.ebuild 5024 RMD160 aab0d5722d91e8750af8cacb6955f26f1ee6f9fe SHA1 ad839094a36e25bc00c8dc51507a39247b564154 SHA256 161fcca282ef4299e50ba8e542dc16452eb0565e794509f225c761e26e7f1462
EBUILD distcc-2.18.3-r11.ebuild 5719 RMD160 fe3b672e01872ed4142e7095c9004cd258ef4d29 SHA1 69988ab58903a3ff96f42afb9b6dd1ac6363167f SHA256 ee00138d23314faa440ecf93b660071d6ddcc4f74eb9baf50494e9f1c05c0e74
EBUILD distcc-2.18.3-r12.ebuild 5673 RMD160 63b5e044163c4d133cfebf6e8e0e9dc00053cb4a SHA1 a20743fbe270893f605682e7cd8112310b6b5f59 SHA256 15d538bc488e1796781815707929a1db374f07d0d1ea60ac82330b7989ae4614
-MISC ChangeLog 31702 RMD160 76c2cd96e9ac55ad9d08d20dfdec0ab62d90efa9 SHA1 5f54717751aa003660137944c28794cd77ddfb5b SHA256 d77f44b5ee5c8c5f26036ba00ade6940bed912100514d38dc80c90884a75bcb5
+EBUILD distcc-2.18.3-r13.ebuild 5720 RMD160 002d23d29f72b6b2294e7da11966fdce5c92d488 SHA1 37800f8da78746393f84bc819c03614d38848563 SHA256 019063cbfb7a229cecb5a05c4b9b4ff3231691cbc1bae95b0aaa838e561066dc
+MISC ChangeLog 31928 RMD160 331652c1990f238d722b9ad2c944dd7f7e843b1c SHA1 2755dcd0c57320c4b26d495ef9bf2d8ac99c0ccb SHA256 5066f337855b637807e1fd129673d47fbdeda5bb9d69ea26f38cd89306de8a06
MISC metadata.xml 379 RMD160 420726180bf16a6ecc3f4be5f57ed0841926fb9c SHA1 cec305f87acbaeea3c2c106df48c9654451ab346 SHA256 fdee311afe18ec1446a2da7b4cf5c59189e7adb5b3c3f2955762d01b04bb6ad9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
-iEYEARECAAYFAkgRy10ACgkQAiZjviIA2XhkgACfd9Wp0xnaud8dqVJHTEXMxzWE
-6z4An2fy8QP/Oj6C/2g0jCam9ec/5STi
-=ex40
+iEYEARECAAYFAkg6E6sACgkQiqiDRvmkBmLUvQCgn8yJnEBBNWv3Y1QyCRG2//bu
+4YUAoN2uT6KolwyQ4gI3s3bTw/5eji9X
+=ehl7
-----END PGP SIGNATURE-----
diff --git a/sys-devel/distcc/distcc-2.18.3-r13.ebuild b/sys-devel/distcc/distcc-2.18.3-r13.ebuild
new file mode 100644
index 000000000000..ccacfcbc7b0b
--- /dev/null
+++ b/sys-devel/distcc/distcc-2.18.3-r13.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/distcc-2.18.3-r13.ebuild,v 1.1 2008/05/26 01:34:38 dirtyepic Exp $
+
+# If you change this in any way please email lisa@gentoo.org and make an
+# entry in the ChangeLog (this means you spanky :P). (2004-04-11) Lisa Seelye
+
+inherit autotools eutils flag-o-matic toolchain-funcs fdo-mime
+
+PATCHLEVEL="2.18-r1"
+
+DESCRIPTION="a program to distribute compilation of C code across several machines on a network"
+HOMEPAGE="http://distcc.samba.org/"
+SRC_URI="http://distcc.samba.org/ftp/distcc/distcc-${PV}.tar.bz2
+ mirror://gentoo/${PN}-2.18-avahi.patch.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="avahi gnome gtk selinux ipv6"
+
+COMMON_DEP="dev-libs/popt
+ avahi? ( >=net-dns/avahi-0.6.5 )"
+DEPEND="|| ( >=sys-devel/gcc-config-1.3.1 app-admin/eselect-compiler )
+ userland_GNU? ( sys-apps/shadow )
+ dev-util/pkgconfig
+ || ( dev-util/unifdef sys-freebsd/freebsd-ubin )
+ >=sys-devel/autoconf-2.60
+ ${COMMON_DEP}"
+RDEPEND="
+ gnome? (
+ >=x11-libs/gtk+-2.0.0
+ >=gnome-base/libgnome-2.0.0
+ >=gnome-base/libgnomeui-2.0.0.0
+ >=gnome-base/libglade-2.0.0
+ x11-libs/pango
+ >=gnome-base/gconf-2.0.0
+ )
+ gtk? (
+ >=x11-libs/gtk+-2.0.0
+ x11-libs/pango
+ )
+ selinux? ( sec-policy/selinux-distcc )
+ ${COMMON_DEP}"
+
+pkg_setup() {
+ if use avahi && ! built_with_use net-dns/avahi dbus; then
+ eerror "${CATEGORY}/${PN} needs net-dns/avahi built with the dbus use"
+ eerror "flag for avahi support."
+ die "net-dns/avahi not built with dbus support"
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # -Wl,--as-needed to close bug #128605
+ epatch "${FILESDIR}/distcc-as-needed.patch"
+
+ # See bug #75420 for more multilib stuff
+ epatch "${FILESDIR}/distcc-gentoo-multilib-r1.patch"
+ einfo "Please report to bug #75420 success or failure of this patch."
+
+ epatch "${FILESDIR}/distcc-freedesktop.patch"
+ epatch "${FILESDIR}/distcc-create-dir.patch"
+ epatch "${FILESDIR}"/${PN}-march-native.patch
+
+ rm -v popt/*.c || die
+ if use avahi; then
+ epatch "${DISTDIR}/${PN}-2.18-avahi.patch.bz2"
+ epatch "${FILESDIR}/${PN}-avahi-configure.patch"
+ fi
+
+ eautoreconf
+}
+
+src_compile() {
+ local myconf="--without-included-popt --docdir=/usr/share/doc/${PF}"
+
+ #More legacy stuff?
+ [ `gcc-major-version` -eq 2 ] && filter-lfs-flags
+
+ if use ipv6; then
+ ewarn "To use IPV6 you must have IPV6 compiled into your kernel"
+ ewarn "either via a module or compiled code"
+ ewarn "You can recompile without ipv6 with: USE='-ipv6' emerge distcc"
+ myconf=" ${myconf} --enable-rfc2553 "
+ epause 5
+ fi
+ econf ${myconf} $(use_enable avahi) $(use_with gnome) $(use_with gtk) || die "econf ${myconf} failed"
+ emake || die "emake failed"
+}
+
+handle_avahi() {
+ local avahi="-UAVAHI"
+ use avahi && avahi="-DAVAHI"
+ unifdef ${avahi} "${1}" > "${2}"
+}
+
+src_install() {
+ make DESTDIR="${D%/}" install
+
+ dodoc "${S}/survey.txt"
+
+ exeinto /usr/bin
+ doexe "${FILESDIR}/distcc-config"
+
+ handle_avahi "${FILESDIR}/${PATCHLEVEL}/init" "${T}/init"
+ newinitd "${T}/init" distccd || die
+
+ handle_avahi "${FILESDIR}/${PATCHLEVEL}/conf" "${T}/conf"
+ newconfd "${T}/conf" distccd || die
+
+ # create and keep the symlink dir
+ dodir /usr/lib/distcc/bin
+ keepdir /usr/lib/distcc/bin
+
+ # create the distccd pid directory
+ dodir /var/run/distccd
+ keepdir /var/run/distccd
+
+ if use gnome || use gtk; then
+ einfo "Renaming /usr/bin/distccmon-gnome to /usr/bin/distccmon-gui"
+ einfo "This is to have a little sensability in naming schemes between distccmon programs"
+ mv "${D}/usr/bin/distccmon-gnome" "${D}/usr/bin/distccmon-gui" || die
+ dosym /usr/bin/distccmon-gui /usr/bin/distccmon-gnome
+ fi
+
+}
+
+pkg_preinst() {
+ # non-/ installs don't require us to do anything here
+ [ "${ROOT}" != "/" ] && return 0
+
+ # stop daemon since script is being updated
+ [ -n "$(pidof distccd)" -a -x /etc/init.d/distccd ] && \
+ /etc/init.d/distccd stop
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+
+ #are we doing bootstrap with has no useradd?
+ if [[ ${CHOST} != *-*-gnu && ${CHOST} != *-linux* ]] || [ -x /usr/sbin/useradd ]; then
+ enewuser distcc 240
+ else
+ ewarn "You do not have useradd (bootstrap) from shadow so I didn't"
+ ewarn "install the distcc user. Note that attempting to start the daemon"
+ ewarn "will fail. Please install shadow and re-emerge distcc."
+ ebeep 2
+ fi
+
+ # By now everyone should be using the right envfile
+
+ if [ "${ROOT}" = "/" ]; then
+ einfo "Installing links to native compilers..."
+ /usr/bin/distcc-config --install
+ else
+ # distcc-config can *almost* handle ROOT installs itself
+ # but for now, but user must finsh things off
+ ewarn "*** Installation is not complete ***"
+ ewarn "You must run the following as root:"
+ ewarn " /usr/bin/distcc-config --install"
+ ewarn "after booting or chrooting into ${ROOT}"
+ fi
+ einfo "Setting permissions on ${ROOT}var/run/distccd"
+ chown -R distcc:daemon "${ROOT}var/run/distccd"
+ echo ""
+
+ einfo "Tips on using distcc with Gentoo can be found at"
+ einfo "http://www.gentoo.org/doc/en/distcc.xml"
+ echo ""
+ einfo "To use the distccmon programs with Gentoo you should use this command:"
+ einfo " DISTCC_DIR=/var/tmp/portage/.distcc distccmon-text N"
+ use gnome || use gtk && einfo "Or: DISTCC_DIR=/var/tmp/portage/.distcc distccmon-gnome"
+
+ ewarn "***SECURITY NOTICE***"
+ ewarn "If you are upgrading distcc please make sure to run etc-update to"
+ ewarn "update your /etc/conf.d/distccd and /etc/init.d/distccd files with"
+ ewarn "added security precautions (the --listen and --allow directives)"
+ ebeep 5
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sys-devel/distcc/files/distcc-march-native.patch b/sys-devel/distcc/files/distcc-march-native.patch
new file mode 100644
index 000000000000..a5c9bb2e4da1
--- /dev/null
+++ b/sys-devel/distcc/files/distcc-march-native.patch
@@ -0,0 +1,16 @@
+diff -ur distcc-2.18.3/src/arg.c distcc-modified/src/arg.c
+--- distcc-2.18.3/src/arg.c 2004-11-30 13:13:53.000000000 +0100
++++ distcc-modified/src/arg.c 2008-02-05 17:56:58.000000000 +0100
+@@ -171,6 +171,12 @@
+ to distribute it even if we could. */
+ rs_trace("%s implies -E (maybe) and must be local", a);
+ return EXIT_DISTCC_FAILED;
++ } else if (!strcmp(a, "-march=native")) {
++ rs_trace("-march=native generates code for local machine; must be local");
++ return EXIT_DISTCC_FAILED;
++ } else if (!strcmp(a, "-mtune=native")) {
++ rs_trace("-mtune=native optimizes for local machine; must be local");
++ return EXIT_DISTCC_FAILED;
+ } else if (str_startswith("-Wa,", a)) {
+ /* Look for assembler options that would produce output
+ * files and must be local.