commit 74cec71367a1ebdeee45b358fd043e8fd8aeed85156cbe447f7a56a04e1ad4d5 Author: Ismail Dönmez Date: Thu Dec 11 18:02:08 2014 +0000 Accepting request 264819 from home:scarabeus_iv Cross build tool similar to icecream OBS-URL: https://build.opensuse.org/request/show/264819 OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/distcc?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/distcc-3.0-fix-fortify.patch b/distcc-3.0-fix-fortify.patch new file mode 100644 index 0000000..8d5f3ea --- /dev/null +++ b/distcc-3.0-fix-fortify.patch @@ -0,0 +1,11 @@ +diff -ru a/src/snprintf.h b/src/snprintf.h +--- a/src/snprintf.h 2008-08-06 15:52:06.000000000 -0500 ++++ b/src/snprintf.h 2009-01-04 15:19:22.000000000 -0600 +@@ -7,6 +7,7 @@ + */ + + #include ++#include "config.h" + + #ifdef __GNUC__ + /** Use gcc attribute to check printf fns. a1 is the 1-based index of diff --git a/distcc-3.0-xinetd.patch b/distcc-3.0-xinetd.patch new file mode 100644 index 0000000..eefce50 --- /dev/null +++ b/distcc-3.0-xinetd.patch @@ -0,0 +1,15 @@ +diff -Naur distcc-3.0.orig/doc/example/xinetd distcc-3.0/doc/example/xinetd +--- distcc-3.0.orig/doc/example/xinetd 2008-08-07 05:52:13.000000000 +0900 ++++ distcc-3.0/doc/example/xinetd 2008-10-27 15:32:14.000000000 +0900 +@@ -19,10 +19,6 @@ + socket_type = stream + wait = no + user = distcc +- server = /usr/local/bin/distccd ++ server = /usr/bin/distccd + server_args = --inetd +- +- # This makes xinetd cope if there is no service listed in +- # /etc/services +- type = UNLISTED + } diff --git a/distcc-3.2_rc1-freedesktop.patch b/distcc-3.2_rc1-freedesktop.patch new file mode 100644 index 0000000..754dedf --- /dev/null +++ b/distcc-3.2_rc1-freedesktop.patch @@ -0,0 +1,79 @@ +diff -Naur distcc-3.2rc1.orig/Makefile.in distcc-3.2rc1/Makefile.in +--- distcc-3.2rc1.orig/Makefile.in 2011-10-26 11:07:15.000000000 +0900 ++++ distcc-3.2rc1/Makefile.in 2011-10-27 16:57:46.815272689 +0900 +@@ -50,13 +50,14 @@ + includedir = @includedir@ + oldincludedir = /usr/include + docdir = @docdir@ +-pkgdatadir = $(datadir)/@PACKAGE_NAME@ ++icondir = $(datadir)/pixmaps ++desktopdir = $(datadir)/applications + + include_server_builddir = $(builddir)/_include_server + + # These must be done from here, not from autoconf, because they can + # contain variable expansions written in Make syntax. Ew. +-DIR_DEFS = -DSYSCONFDIR="\"${sysconfdir}\"" -DPKGDATADIR="\"${pkgdatadir}\"" ++DIR_DEFS = -DSYSCONFDIR="\"${sysconfdir}\"" -DICONDIR="\"${icondir}\"" + + # arguments to pkgconfig + GNOME_PACKAGES = @GNOME_PACKAGES@ +@@ -1016,7 +1017,8 @@ + @echo " documents $(DESTDIR)$(docdir)" + @echo " programs $(DESTDIR)$(bindir)" + @echo " system configuration $(DESTDIR)$(sysconfdir)" +- @echo " shared data files $(DESTDIR)$(pkgdatadir)" ++ @echo " icons $(DESTDIR)$(icondir)" ++ @echo " .desktop file $(DESTDIR)$(desktopdir)" + + + # install-sh can't handle multiple arguments, but we don't need any +@@ -1108,10 +1110,10 @@ + done + + install-gnome-data: $(gnome_data) +- $(mkinstalldirs) "$(DESTDIR)$(pkgdatadir)" +- for p in $(gnome_data); do \ +- $(INSTALL_DATA) "$$p" "$(DESTDIR)$(pkgdatadir)" || exit 1; \ +- done ++ $(mkinstalldirs) "$(DESTDIR)$(icondir)" ++ $(mkinstalldirs) "$(DESTDIR)$(desktopdir)" ++ $(INSTALL_DATA) gnome/distccmon-gnome-icon.png "$(DESTDIR)$(icondir)" || exit 1 ++ $(INSTALL_DATA) gnome/distccmon-gnome.desktop "$(DESTDIR)$(desktopdir)" || exit 1 + + install-conf: $(conf_files) $(default_files) + $(mkinstalldirs) "$(DESTDIR)$(sysconfdir)/distcc" +diff -Naur distcc-3.2rc1.orig/gnome/distccmon-gnome.desktop distcc-3.2rc1/gnome/distccmon-gnome.desktop +--- distcc-3.2rc1.orig/gnome/distccmon-gnome.desktop 2011-04-06 03:58:58.000000000 +0900 ++++ distcc-3.2rc1/gnome/distccmon-gnome.desktop 2011-10-27 17:01:50.792242592 +0900 +@@ -1,6 +1,4 @@ + [Desktop Entry] +-Version=0.9.4 +-Encoding=UTF-8 + Exec=distccmon-gnome + Name=distcc monitor + Name[sv]=distcc övervakare +@@ -8,9 +6,9 @@ + GenericName[sv]=Distribuerad kompilerings-övervakare + Comment=Graphical view of distributed compile tasks + Comment[sv]=Grafisk vy av distribuerade kompileringsuppgifter +-Icon=distccmon-gnome-icon.png ++Icon=distccmon-gnome-icon + TryExec=distccmon-gnome + Terminal=false + Type=Application +-Categories=GNOME;Application;Development; ++Categories=GNOME;Development; + StartupNotify=true +diff -Naur distcc-3.2rc1.orig/src/mon-gnome.c distcc-3.2rc1/src/mon-gnome.c +--- distcc-3.2rc1.orig/src/mon-gnome.c 2008-12-03 06:50:25.000000000 +0900 ++++ distcc-3.2rc1/src/mon-gnome.c 2011-10-27 16:54:50.220566026 +0900 +@@ -599,7 +599,7 @@ + + #if GTK_CHECK_VERSION(2,2,0) + gtk_window_set_icon_from_file (GTK_WINDOW (mainwin), +- PKGDATADIR "/distccmon-gnome-icon.png", ++ ICONDIR "/distccmon-gnome-icon.png", + NULL); + #endif + diff --git a/distcc-3.2_rc1-gssapi.patch b/distcc-3.2_rc1-gssapi.patch new file mode 100644 index 0000000..fb6a0f4 --- /dev/null +++ b/distcc-3.2_rc1-gssapi.patch @@ -0,0 +1,36 @@ +diff -Naur distcc-3.2rc1.orig/configure.ac distcc-3.2rc1/configure.ac +--- distcc-3.2rc1.orig/configure.ac 2011-10-21 13:40:55.000000000 +0900 ++++ distcc-3.2rc1/configure.ac 2011-10-27 18:06:58.938922585 +0900 +@@ -15,6 +15,8 @@ + AC_CONFIG_HEADERS(src/config.h) + AC_CANONICAL_HOST + ++PKG_PROG_PKG_CONFIG ++ + # FreeBSD installs its version of libpopt into /usr/local/, but does + # not put that on the default library and header path. + # Solaris doesn't even ship libpopt. We used to add that path if +@@ -502,16 +504,17 @@ + [provide mutual authentication services via the GSS-API])]) + + if test x"$with_auth" = xyes; then +- AC_SEARCH_LIBS([gss_init_sec_context], +- [gssapi gssapi_krb5], +- AC_DEFINE(HAVE_GSSAPI, 1, [Define if the GSS_API is available]) ++ PKG_CHECK_MODULES(GSSAPI, libgssglue, ++ [AC_DEFINE(HAVE_GSSAPI, 1, [Define if the GSS_API is available]) ++ CFLAGS="$CFLAGS $GSSAPI_CFLAGS" ++ LIBS="$LIBS $GSSAPI_LIBS" + AUTH_COMMON_OBJS="src/auth_common.o" + AUTH_DISTCC_OBJS="src/auth_distcc.o" +- AUTH_DISTCCD_OBJS="src/auth_distccd.o", +- AC_MSG_FAILURE([--with-auth was given but no GSS-API library found]) ++ AUTH_DISTCCD_OBJS="src/auth_distccd.o"], ++ [AC_MSG_FAILURE([--with-auth was given but no GSS-API library found]) + AUTH_COMMON_OBJS="" + AUTH_DISTCC_OBJS="" +- AUTH_DISTCCD_OBJS="") ++ AUTH_DISTCCD_OBJS=""]) + fi + + AC_SUBST(AUTH_COMMON_OBJS) diff --git a/distcc-3.2_rc1-python.patch b/distcc-3.2_rc1-python.patch new file mode 100644 index 0000000..77d1d66 --- /dev/null +++ b/distcc-3.2_rc1-python.patch @@ -0,0 +1,246 @@ +diff -Naur distcc-3.2rc1.orig/bench/statistics.py distcc-3.2rc1/bench/statistics.py +--- distcc-3.2rc1.orig/bench/statistics.py 2008-12-03 06:50:21.000000000 +0900 ++++ distcc-3.2rc1/bench/statistics.py 2011-10-27 17:05:08.418023081 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env python2.2 ++#! /usr/bin/env python + + # benchmark -- automated system for testing distcc correctness + # and performance on various source trees. +diff -Naur distcc-3.2rc1.orig/configure.ac distcc-3.2rc1/configure.ac +--- distcc-3.2rc1.orig/configure.ac 2011-10-21 13:40:55.000000000 +0900 ++++ distcc-3.2rc1/configure.ac 2011-10-27 17:05:31.179112690 +0900 +@@ -243,7 +243,7 @@ + # + # NB: Cannot use AC_CONFIG_LIBOBJ_DIR here, because it's not present + # in autoconf 2.53. +-AC_PATH_PROGS(PYTHON, [python2.6 python-2.6 python2.5 python-2.5 python2.4 python-2.4 python]) ++AC_PATH_PROGS(PYTHON, [python]) + AC_ARG_VAR(PYTHON, [Python interpreter]) + # Python 1 doesn't even support -V + if ! "$PYTHON" -V 2>&1 | grep "^Python" >/dev/null; then +diff -Naur distcc-3.2rc1.orig/include_server/basics.py distcc-3.2rc1/include_server/basics.py +--- distcc-3.2rc1.orig/include_server/basics.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/basics.py 2011-10-27 17:05:08.421023097 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + # + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/basics_test.py distcc-3.2rc1/include_server/basics_test.py +--- distcc-3.2rc1.orig/include_server/basics_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/basics_test.py 2011-10-27 17:05:08.421023097 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/c_extensions_test.py distcc-3.2rc1/include_server/c_extensions_test.py +--- distcc-3.2rc1.orig/include_server/c_extensions_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/c_extensions_test.py 2011-10-27 17:05:08.421023097 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/cache_basics.py distcc-3.2rc1/include_server/cache_basics.py +--- distcc-3.2rc1.orig/include_server/cache_basics.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/cache_basics.py 2011-10-27 17:05:08.422023101 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/compiler_defaults.py distcc-3.2rc1/include_server/compiler_defaults.py +--- distcc-3.2rc1.orig/include_server/compiler_defaults.py 2011-04-06 03:58:59.000000000 +0900 ++++ distcc-3.2rc1/include_server/compiler_defaults.py 2011-10-27 17:05:08.422023101 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/compress_files.py distcc-3.2rc1/include_server/compress_files.py +--- distcc-3.2rc1.orig/include_server/compress_files.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/compress_files.py 2011-10-27 17:05:08.422023101 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer.py distcc-3.2rc1/include_server/include_analyzer.py +--- distcc-3.2rc1.orig/include_server/include_analyzer.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/include_analyzer.py 2011-10-27 17:05:08.422023101 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node.py distcc-3.2rc1/include_server/include_analyzer_memoizing_node.py +--- distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/include_analyzer_memoizing_node.py 2011-10-27 17:05:08.422023101 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node_test.py distcc-3.2rc1/include_server/include_analyzer_memoizing_node_test.py +--- distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/include_analyzer_memoizing_node_test.py 2011-10-27 17:05:08.423023105 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer_test.py distcc-3.2rc1/include_server/include_analyzer_test.py +--- distcc-3.2rc1.orig/include_server/include_analyzer_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/include_analyzer_test.py 2011-10-27 17:05:08.423023105 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/include_server.py distcc-3.2rc1/include_server/include_server.py +--- distcc-3.2rc1.orig/include_server/include_server.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/include_server.py 2011-10-27 17:05:08.423023105 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/include_server_test.py distcc-3.2rc1/include_server/include_server_test.py +--- distcc-3.2rc1.orig/include_server/include_server_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/include_server_test.py 2011-10-27 17:05:08.423023105 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/macro_eval.py distcc-3.2rc1/include_server/macro_eval.py +--- distcc-3.2rc1.orig/include_server/macro_eval.py 2011-04-06 03:58:59.000000000 +0900 ++++ distcc-3.2rc1/include_server/macro_eval.py 2011-10-27 17:05:08.423023105 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/macro_eval_test.py distcc-3.2rc1/include_server/macro_eval_test.py +--- distcc-3.2rc1.orig/include_server/macro_eval_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/macro_eval_test.py 2011-10-27 17:05:08.423023105 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/mirror_path.py distcc-3.2rc1/include_server/mirror_path.py +--- distcc-3.2rc1.orig/include_server/mirror_path.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/mirror_path.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/mirror_path_test.py distcc-3.2rc1/include_server/mirror_path_test.py +--- distcc-3.2rc1.orig/include_server/mirror_path_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/mirror_path_test.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/parse_command.py distcc-3.2rc1/include_server/parse_command.py +--- distcc-3.2rc1.orig/include_server/parse_command.py 2011-04-06 03:58:59.000000000 +0900 ++++ distcc-3.2rc1/include_server/parse_command.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/parse_command_test.py distcc-3.2rc1/include_server/parse_command_test.py +--- distcc-3.2rc1.orig/include_server/parse_command_test.py 2011-04-06 03:58:59.000000000 +0900 ++++ distcc-3.2rc1/include_server/parse_command_test.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/parse_file.py distcc-3.2rc1/include_server/parse_file.py +--- distcc-3.2rc1.orig/include_server/parse_file.py 2011-04-06 03:58:59.000000000 +0900 ++++ distcc-3.2rc1/include_server/parse_file.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/parse_file_test.py distcc-3.2rc1/include_server/parse_file_test.py +--- distcc-3.2rc1.orig/include_server/parse_file_test.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/parse_file_test.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/run.py distcc-3.2rc1/include_server/run.py +--- distcc-3.2rc1.orig/include_server/run.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/run.py 2011-10-27 17:05:08.424023109 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/setup.py distcc-3.2rc1/include_server/setup.py +--- distcc-3.2rc1.orig/include_server/setup.py 2011-04-06 03:58:59.000000000 +0900 ++++ distcc-3.2rc1/include_server/setup.py 2011-10-27 17:05:08.425023113 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/include_server/statistics.py distcc-3.2rc1/include_server/statistics.py +--- distcc-3.2rc1.orig/include_server/statistics.py 2008-12-03 06:50:31.000000000 +0900 ++++ distcc-3.2rc1/include_server/statistics.py 2011-10-27 17:05:08.425023113 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python2.4 ++#! /usr/bin/python + # + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/test/onetest.py distcc-3.2rc1/test/onetest.py +--- distcc-3.2rc1.orig/test/onetest.py 2008-12-03 06:50:22.000000000 +0900 ++++ distcc-3.2rc1/test/onetest.py 2011-10-27 17:05:08.432023140 +0900 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + # + # Copyright 2007 Google Inc. + # +diff -Naur distcc-3.2rc1.orig/test/testdistcc.py distcc-3.2rc1/test/testdistcc.py +--- distcc-3.2rc1.orig/test/testdistcc.py 2011-10-21 11:40:49.000000000 +0900 ++++ distcc-3.2rc1/test/testdistcc.py 2011-10-27 17:05:08.432023140 +0900 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env python2.2 ++#! /usr/bin/env python + + # Copyright (C) 2002, 2003, 2004 by Martin Pool + # Copyright 2007 Google Inc. diff --git a/distcc-3.2rc1.tar.bz2 b/distcc-3.2rc1.tar.bz2 new file mode 100644 index 0000000..482d7e6 --- /dev/null +++ b/distcc-3.2rc1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:311671e844625d7fdb18dd3d096cd855751cfe8de13827682bcb7beff9133b30 +size 609904 diff --git a/distcc.changes b/distcc.changes new file mode 100644 index 0000000..1d396eb --- /dev/null +++ b/distcc.changes @@ -0,0 +1,24 @@ +------------------------------------------------------------------- +Thu Dec 11 14:51:28 UTC 2014 - tchvatal@suse.com + +- Apply patches from Gentoo to have same base: + * distcc-3.0-fix-fortify.patch + * distcc-3.0-xinetd.patch + * distcc-3.2_rc1-freedesktop.patch + * distcc-3.2_rc1-gssapi.patch + * distcc-3.2_rc1-python.patch + +------------------------------------------------------------------- +Thu Dec 11 14:32:00 UTC 2014 - tchvatal@suse.com + +- Add basic service, sysconfig and firewall rules: + * distccd.sysconfig + * distccd.service + * distccd.firewall + + +------------------------------------------------------------------- +Thu Dec 11 14:23:07 UTC 2014 - tchvatal@suse.com + +- Add distcc distribute build tool for C and C++ + diff --git a/distcc.spec b/distcc.spec new file mode 100644 index 0000000..1977cb7 --- /dev/null +++ b/distcc.spec @@ -0,0 +1,188 @@ +# +# spec file for package distcc +# +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +# See also http://en.opensuse.org/openSUSE:Specfile_guidelines +Name: distcc +Version: 3.2rc1 +Release: 0 +Summary: A fast, free distributed C/C++ compiler +License: GPL-2.0 +Group: Development/Tools/Building +Url: https://code.google.com/p/distcc/ +Source0: http://distcc.googlecode.com/files/%{name}-%{version}.tar.bz2 +Source1: distccd.sysconfig +Source2: distccd.service +Source3: distccd.firewall +Patch0: distcc-3.0-fix-fortify.patch +Patch1: distcc-3.0-xinetd.patch +Patch2: distcc-3.2_rc1-freedesktop.patch +Patch3: distcc-3.2_rc1-gssapi.patch +Patch4: distcc-3.2_rc1-python.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: fdupes +BuildRequires: gcc +BuildRequires: libtool +BuildRequires: make +BuildRequires: python +BuildRequires: systemd +BuildRequires: update-desktop-files +BuildRequires: pkgconfig(avahi-client) +BuildRequires: pkgconfig(gtk+-2.0) +BuildRequires: pkgconfig(libgnome-2.0) +BuildRequires: pkgconfig(libgnomeui-2.0) +BuildRequires: pkgconfig(libgssglue) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(python) +Suggests: %{name}-gui = %{version} + +%description +distcc is a program to distribute builds of C, C++, Objective C or Objective +C++ code across several machines on a network. distcc should always generate +the same results as a local build, is simple to install and use, and is +usually much faster than a local compile. + +%package gui +Summary: GUI monitor for distcc server/client +Group: Development/Tools/Building + +%description gui +distcc is a program to distribute builds of C, C++, Objective C or Objective +C++ code across several machines on a network. distcc should always generate +the same results as a local build, is simple to install and use, and is +usually much faster than a local compile. + +%package server +Summary: Server for distributed C/C++ compilation +Group: Development/Tools/Building +Requires: %{name} = %{version} +%{?systemd_requires} + +%description server +This package contains the compilation server needed to use %{name}. + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 + +# do not use date/time in the c files +modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/%{name}.changes")" +DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\"" +TIME="\"$(date -d "${modified}" "+%%R")\"" +sed -i \ + -e "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" \ + src/daemon.c src/help.c lzo/minilzo.c + +autoreconf -fvi + +%build +%configure \ + --with-docdir=%{_docdir}/%{name} \ + --disable-Werror \ + --enable-rfc2553 \ + --with-gtk \ + --with-avahi \ + --with-gnome \ + --with-auth +# For some reason CC is not propagated to makefile and we get empty string +sed -i \ + -e 's:CC = :CC = cc:' \ + Makefile +make %{?_smp_mflags} + +%install +%make_install +# service +mkdir -p %{buildroot}/%{_sbindir} +ln -sf service %{buildroot}/%{_sbindir}/rc%{name}d +install -D -m 0644 %{SOURCE2} %{buildroot}/%{_unitdir}/%{name}d.service +# sysconfig +install -Dm 644 %{SOURCE1} %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.%{name}d +# firewall +install -D -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{name}d +# compat links for env override +install -d %{buildroot}%{_libexecdir}/%{name}/bin +ln -sf %{_bindir}/%{name} %{buildroot}%{_libexecdir}/%{name}/bin/cc +ln -sf %{_bindir}/%{name} %{buildroot}%{_libexecdir}/%{name}/bin/gcc +ln -sf %{_bindir}/%{name} %{buildroot}%{_libexecdir}/%{name}/bin/g++ +ln -sf %{_bindir}/%{name} %{buildroot}%{_libexecdir}/%{name}/bin/c++ +ln -sf %{_bindir}/%{name} %{buildroot}%{_libexecdir}/%{name}/bin/cpp +# pointless installed file +rm -rf %{buildroot}%{_docdir}/distcc/INSTALL +# cleanups +%suse_update_desktop_file -r distccmon-gnome Development Building +%fdupes ${buildroot} + +%pre server +%service_add_pre disccd.service + +%post server +%fillup_only -n distccd +%service_add_post distccd.service + +%preun server +%service_del_preun distccd.service + +%postun server +%service_del_postun distccd.service + +%files +%defattr(-,root,root) +%doc AUTHORS doc/* NEWS README.pump TODO +%doc COPYING README survey.txt +%dir %{_libexecdir}/distcc +%dir %{_libexecdir}/distcc/bin +%{_libexecdir}/distcc/bin/c++ +%{_libexecdir}/distcc/bin/cc +%{_libexecdir}/distcc/bin/cpp +%{_libexecdir}/distcc/bin/g++ +%{_libexecdir}/distcc/bin/gcc +%{_bindir}/distcc +%{_bindir}/distccmon-text +%{_bindir}/lsdistcc +%{_bindir}/pump +%{_mandir}/man1/distcc.1.* +%{_mandir}/man1/pump* +%{_mandir}/man1/distccmon-text.1.* +%dir %{_sysconfdir}/distcc +%config(noreplace) %{_sysconfdir}/%{name}/hosts + +%files server +%defattr(-,root,root) +%doc COPYING README +%{_bindir}/distccd +%{_unitdir}/distccd.service +%{_sbindir}/rcdistccd +%{_sysconfdir}/default/distcc +%{_sysconfdir}/distcc/*allow* +%{_mandir}/man1/distccd* +%{_mandir}/man1/include_server* +%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/distccd +%{_localstatedir}/adm/fillup-templates/* +%{python_sitearch}/include_server* + +%files gui +%defattr(-,root,root) +%{_bindir}/distccmon-gnome +%{_datadir}/applications/distccmon-gnome.desktop +%{_datadir}/pixmaps/distccmon-gnome-icon.png + diff --git a/distccd.firewall b/distccd.firewall new file mode 100644 index 0000000..1183696 --- /dev/null +++ b/distccd.firewall @@ -0,0 +1,17 @@ +## Name: distccd Server +## Description: Opens ports for distccd Server. + +# space separated list of allowed TCP ports +TCP="distcc" + +# space separated list of allowed UDP ports +UDP="distcc" + +# space separated list of allowed RPC services +RPC="" + +# space separated list of allowed IP protocols +IP="" + +# space separated list of allowed UDP broadcast ports +BROADCAST="" diff --git a/distccd.service b/distccd.service new file mode 100644 index 0000000..396ced9 --- /dev/null +++ b/distccd.service @@ -0,0 +1,11 @@ +[Unit] +Description=Distccd: A Distributed Compilation Server +After=network.target + +[Service] +EnvironmentFile=-/etc/sysconfig/distccd +User=distcc +ExecStart=/usr/bin/distccd --verbose --no-detach --daemon --port 3632 -N 15 --allow $ALLOWED_SERVERS $EXTRA_PARAMS + +[Install] +WantedBy=multi-user.target diff --git a/distccd.sysconfig b/distccd.sysconfig new file mode 100644 index 0000000..8ddbba9 --- /dev/null +++ b/distccd.sysconfig @@ -0,0 +1,10 @@ +## Type: string +## Default: "127.0.0.1" +# IP adress of allowed host or subnet which can connect to the server. +# eg.: 192.168.0.5 or 192.168.0.0/24 +ALLOWED_SERVERS="127.0.0.1" + +## Type: string +## Default: "--zeroconf" +# Extra parameters for the distcc server +EXTRA_PARAMS="--zeroconf"