ports/160657: [patch] devel/distcc: adding pump mode support to distcc
4720 at hushmail.com
4720 at hushmail.com
Sun Sep 11 15:00:30 UTC 2011
>Number: 160657
>Category: ports
>Synopsis: [patch] devel/distcc: adding pump mode support to distcc
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sun Sep 11 15:00:29 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: 4720 at hushmail.com
>Release:
>Organization:
>Environment:
>Description:
this patch adds pump mode support to discc which lets compiler nodes do preprocessing as well. tested with various ports for two weeks.
>How-To-Repeat:
>Fix:
Patch attached with submission follows:
Index: devel/distcc/Makefile
===================================================================
RCS file: /home/ncvs/ports/devel/distcc/Makefile,v
retrieving revision 1.71
diff -u -r1.71 Makefile
--- devel/distcc/Makefile 26 Sep 2010 03:23:39 -0000 1.71
+++ devel/distcc/Makefile 30 Aug 2011 03:42:07 -0000
@@ -7,10 +7,9 @@
#
PORTNAME= distcc
-PORTVERSION= 3.1
+PORTVERSION= ${DISTCC_VERSION}
PORTREVISION= 3
CATEGORIES= devel
-MASTER_SITES= GOOGLE_CODE
MAINTAINER= skreuzer at FreeBSD.org
COMMENT= Distribute compilation of C(++) code acrosss machines on a network
@@ -18,11 +17,10 @@
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
+.include "${.CURDIR}/Makefile.common"
+
LIB_DEPENDS= popt.0:${PORTSDIR}/devel/popt
-USE_BZIP2= yes
-USE_GMAKE= yes
-GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-gprof --disable-Werror
WANT_GNOME= yes
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib" \
@@ -35,9 +33,20 @@
GTK "Build GUI monitor based on GTK" Off \
RFC2553 "Enable IPv6 support" Off \
AVAHI "Enable Avahi Zeroconf/mDNS/Bonjour support" Off \
+ PUMP "Enable pump mode, remote preprocessing" Off \
COMPILER_LINKS "Create symlinks to distcc" On
-.include <bsd.port.pre.mk>
+.include <bsd.port.options.mk>
+
+.if defined (WITH_PUMP)
+USE_PYTHON= yes
+RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/include_server/include_server.py:${PORTSDIR}/devel/py-include_server
+MAN1+= pump.1 include_server.1
+DOC_FILES+= README.pump
+PLIST_SUB+= WITH_PUMP=""
+.else
+PLIST_SUB+= WITH_PUMP="@comment "
+.endif
.if defined(WITHOUT_AVAHI)
CONFIGURE_ARGS+= --without-avahi
@@ -80,17 +89,27 @@
PLIST_SUB+= WITH_GNOME="@comment "
.endif
-MAN1= distcc.1 distccd.1 distccmon-text.1
-DOC_FILES= AUTHORS INSTALL NEWS README \
+MAN1+= distcc.1 distccd.1 distccmon-text.1
+DOC_FILES+= AUTHORS INSTALL NEWS README \
doc/protocol-1.txt doc/status-1.txt \
doc/protocol-2.txt doc/reporting-bugs.txt
+post-patch:
+.if defined(WITH_PUMP)
+ ${REINPLACE_CMD} -e "s|include_server=''|include_server='${PYTHON_SITELIBDIR}/include_server/include_server.py'|" ${WRKSRC}/pump.in
+.endif
+
do-install:
@${INSTALL_PROGRAM} ${WRKSRC}/distcc ${PREFIX}/bin
@${INSTALL_PROGRAM} ${WRKSRC}/distccmon-text ${PREFIX}/bin
+ @${INSTALL_PROGRAM} ${WRKSRC}/lsdistcc ${PREFIX}/bin
.if defined(WITH_GNOME) || defined(WITH_GTK)
@${INSTALL_PROGRAM} ${WRKSRC}/distccmon-gnome ${PREFIX}/bin
.endif
+.if defined(WITH_PUMP)
+ @${INSTALL_SCRIPT} ${WRKSRC}/pump ${PREFIX}/bin
+ @${INSTALL_SCRIPT} ${WRKSRC}/find_c_extension.sh ${PREFIX}/bin
+.endif
@${INSTALL_PROGRAM} ${WRKSRC}/distccd ${PREFIX}/sbin
post-install:
@@ -115,4 +134,4 @@
@${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Index: devel/distcc/Makefile.common
===================================================================
RCS file: devel/distcc/Makefile.common
diff -N devel/distcc/Makefile.common
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ devel/distcc/Makefile.common 30 Aug 2011 03:42:07 -0000
@@ -0,0 +1,7 @@
+DISTCC_VERSION= 3.1
+
+MASTER_SITES= GOOGLE_CODE
+
+USE_GMAKE= yes
+USE_BZIP2= yes
+GNU_CONFIGURE= yes
Index: devel/distcc/pkg-plist
===================================================================
RCS file: /home/ncvs/ports/devel/distcc/pkg-plist,v
retrieving revision 1.15
diff -u -r1.15 pkg-plist
--- devel/distcc/pkg-plist 6 Nov 2005 00:07:20 -0000 1.15
+++ devel/distcc/pkg-plist 30 Aug 2011 03:42:07 -0000
@@ -1,12 +1,16 @@
@comment $FreeBSD: ports/devel/distcc/pkg-plist,v 1.15 2005/11/06 00:07:20 mnag Exp $
bin/distcc
bin/distccmon-text
+bin/lsdistcc
%%WITH_GNOME%%bin/distccmon-gnome
+%%WITH_PUMP%%bin/pump
+%%WITH_PUMP%%bin/find_c_extension.sh
sbin/distccd
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
%%PORTDOCS%%%%DOCSDIR%%/INSTALL
%%PORTDOCS%%%%DOCSDIR%%/NEWS
%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%WITH_PUMP%%%%DOCSDIR%%/README.pump
%%PORTDOCS%%%%DOCSDIR%%/protocol-1.txt
%%PORTDOCS%%%%DOCSDIR%%/protocol-2.txt
%%PORTDOCS%%%%DOCSDIR%%/status-1.txt
Index: devel/py-include_server/Makefile
===================================================================
RCS file: devel/py-include_server/Makefile
diff -N devel/py-include_server/Makefile
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ devel/py-include_server/Makefile 30 Aug 2011 03:42:07 -0000
@@ -0,0 +1,37 @@
+# New ports collection makefile for:
+# Date created:
+# Whom:
+#
+# $FreeBSD$
+#
+
+PORTNAME= include_server
+PORTVERSION= ${DISTCC_VERSION}
+CATEGORIES= devel python
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTNAME= distcc-${PORTVERSION}
+
+MAINTAINER= ports at FreeBSD.org
+COMMENT= Distribute compilation of C(++) code acrosss machines on a network
+
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+MASTERDIR= ${.CURDIR}/../distcc
+PLIST= ${.CURDIR}/pkg-plist
+
+.include "${MASTERDIR}/Makefile.common"
+
+USE_PYTHON= yes
+USE_PYDISTUTILS=yes
+
+CFLAGS+= -I${WRKSRC}/src/ -I${WRKSRC}/lzo/
+MAKE_ENV+= CPPFLAGS="${CXXFLAGS}" PYTHON_CFLAGS="${CFLAGS}" SRCDIR="${WRKSRC}" DISTCC_VERSION="${DISTCC_VERSION}"
+
+BUILD_WRKSRC= ${WRKDIR}/${DISTNAME}/${PORTNAME}
+INSTALL_WRKSRC= ${BUILD_WRKSRC}
+
+post-install:
+ @${INSTALL_PROGRAM} ${BUILD_WRKSRC}/build/lib.*/${PORTNAME}/distcc_pump_c_extensions.so ${PYTHON_SITELIBDIR}/${PORTNAME}/
+
+.include <bsd.port.mk>
Index: devel/py-include_server/pkg-plist
===================================================================
RCS file: devel/py-include_server/pkg-plist
diff -N devel/py-include_server/pkg-plist
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ devel/py-include_server/pkg-plist 30 Aug 2011 03:42:07 -0000
@@ -0,0 +1,71 @@
+%%PYTHON_SITELIBDIR%%/include_server/distcc_pump_c_extensions.so
+%%PYTHON_SITELIBDIR%%/include_server/basics.py
+%%PYTHON_SITELIBDIR%%/include_server/basics.pyc
+%%PYTHON_SITELIBDIR%%/include_server/basics.pyo
+%%PYTHON_SITELIBDIR%%/include_server/basics_test.py
+%%PYTHON_SITELIBDIR%%/include_server/basics_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/basics_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/cache_basics.py
+%%PYTHON_SITELIBDIR%%/include_server/cache_basics.pyc
+%%PYTHON_SITELIBDIR%%/include_server/cache_basics.pyo
+%%PYTHON_SITELIBDIR%%/include_server/compiler_defaults.py
+%%PYTHON_SITELIBDIR%%/include_server/compiler_defaults.pyc
+%%PYTHON_SITELIBDIR%%/include_server/compiler_defaults.pyo
+%%PYTHON_SITELIBDIR%%/include_server/compress_files.py
+%%PYTHON_SITELIBDIR%%/include_server/compress_files.pyc
+%%PYTHON_SITELIBDIR%%/include_server/compress_files.pyo
+%%PYTHON_SITELIBDIR%%/include_server/c_extensions_test.py
+%%PYTHON_SITELIBDIR%%/include_server/c_extensions_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/c_extensions_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer.py
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer.pyc
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer.pyo
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_memoizing_node.py
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_memoizing_node.pyc
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_memoizing_node.pyo
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_memoizing_node_test.py
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_memoizing_node_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_memoizing_node_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_test.py
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/include_analyzer_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/include_server.py
+%%PYTHON_SITELIBDIR%%/include_server/include_server.pyc
+%%PYTHON_SITELIBDIR%%/include_server/include_server.pyo
+%%PYTHON_SITELIBDIR%%/include_server/include_server_test.py
+%%PYTHON_SITELIBDIR%%/include_server/include_server_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/include_server_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/macro_eval.py
+%%PYTHON_SITELIBDIR%%/include_server/macro_eval.pyc
+%%PYTHON_SITELIBDIR%%/include_server/macro_eval.pyo
+%%PYTHON_SITELIBDIR%%/include_server/macro_eval_test.py
+%%PYTHON_SITELIBDIR%%/include_server/macro_eval_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/macro_eval_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/mirror_path.py
+%%PYTHON_SITELIBDIR%%/include_server/mirror_path.pyc
+%%PYTHON_SITELIBDIR%%/include_server/mirror_path.pyo
+%%PYTHON_SITELIBDIR%%/include_server/mirror_path_test.py
+%%PYTHON_SITELIBDIR%%/include_server/mirror_path_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/mirror_path_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/parse_command.py
+%%PYTHON_SITELIBDIR%%/include_server/parse_command.pyc
+%%PYTHON_SITELIBDIR%%/include_server/parse_command.pyo
+%%PYTHON_SITELIBDIR%%/include_server/parse_command_test.py
+%%PYTHON_SITELIBDIR%%/include_server/parse_command_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/parse_command_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/parse_file.py
+%%PYTHON_SITELIBDIR%%/include_server/parse_file.pyc
+%%PYTHON_SITELIBDIR%%/include_server/parse_file.pyo
+%%PYTHON_SITELIBDIR%%/include_server/parse_file_test.py
+%%PYTHON_SITELIBDIR%%/include_server/parse_file_test.pyc
+%%PYTHON_SITELIBDIR%%/include_server/parse_file_test.pyo
+%%PYTHON_SITELIBDIR%%/include_server/run.py
+%%PYTHON_SITELIBDIR%%/include_server/run.pyc
+%%PYTHON_SITELIBDIR%%/include_server/run.pyo
+%%PYTHON_SITELIBDIR%%/include_server/statistics.py
+%%PYTHON_SITELIBDIR%%/include_server/statistics.pyc
+%%PYTHON_SITELIBDIR%%/include_server/statistics.pyo
+%%PYTHON_SITELIBDIR%%/include_server/__init__.py
+%%PYTHON_SITELIBDIR%%/include_server/__init__.pyc
+%%PYTHON_SITELIBDIR%%/include_server/__init__.pyo
+ at dirrm %%PYTHON_SITELIBDIR%%/include_server
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list