From 0f558761aa2dee1017b4751e4017205e015a9560 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 29 Jun 2022 12:04:12 +0100 Subject: gentoo resync : 29.12.2022 --- sys-devel/distcc/files/distcc-3.4-pump-tests.patch | 153 +++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 sys-devel/distcc/files/distcc-3.4-pump-tests.patch (limited to 'sys-devel/distcc/files') diff --git a/sys-devel/distcc/files/distcc-3.4-pump-tests.patch b/sys-devel/distcc/files/distcc-3.4-pump-tests.patch new file mode 100644 index 000000000000..db392b7f3632 --- /dev/null +++ b/sys-devel/distcc/files/distcc-3.4-pump-tests.patch @@ -0,0 +1,153 @@ +https://github.com/distcc/distcc/pull/460 + +From 45d9c4a1ef66451ed45a6afdec7098ed02082390 Mon Sep 17 00:00:00 2001 +From: Rosen Matev +Date: Fri, 29 Apr 2022 15:42:28 +0200 +Subject: [PATCH] Fix tests in pump mode + +`make check` is also running tests for the pump mode +(`pump-maintainer-check` target) but they were all falling back to +the usual preprocessor mode as the include server was not started. + +This is solved by prepending `pump` to the distcc invocations and +also some trivially failing tests are fixed or disabled when they +make no sense in pump mode. +--- + Makefile.in | 2 +- + pump.in | 13 +++++++++++-- + test/testdistcc.py | 28 ++++++++++++++++++++++++---- + 3 files changed, 36 insertions(+), 7 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index f240ca6f..79e28380 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -583,7 +583,7 @@ distccmon-gnome@EXEEXT@: $(mon_obj) $(gnome_obj) + # the distcc version, the source location, the CPP flags (for location of the + # includes), and the build location. + include-server: +- if test -z "$(PYTHON)"; then \ ++ @if test -z "$(PYTHON)"; then \ + echo "Not building $@: No suitable python found"; \ + else \ + mkdir -p "$(include_server_builddir)" && \ +diff --git a/pump.in b/pump.in +index 8e46f458..08a32c0e 100755 +--- a/pump.in ++++ b/pump.in +@@ -218,7 +218,9 @@ PrintIncludeServerStatusMessage() { + } + + Announce() { +- echo "__________Using distcc-pump from $DISTCC_LOCATION" ++ if [ "$verbose" = 1 ]; then ++ echo "__________Using distcc-pump from $DISTCC_LOCATION" ++ fi + } + + # Starts up the include server. Sets $socket, $socket_dir, and +@@ -359,7 +361,9 @@ ShutDown() { + # Always -- at exit -- shut down include_server and remove $socket_dir + if [ -n "$include_server_pid" ] && \ + ps -p "$include_server_pid" > /dev/null; then +- echo '__________Shutting down distcc-pump include server' ++ if [ "$verbose" = 1 ]; then ++ echo '__________Shutting down distcc-pump include server' ++ fi + kill $include_server_pid + # Wait until it's really dead. We need to do this because the + # include server may produce output after receiving SIGTERM. +@@ -508,6 +512,11 @@ Main() { + + Initialize + ++ # Do not write on stdout if we're testing pump mode ++ if [ "0$DISTCC_TESTING_INCLUDE_SERVER" -ne "0" ]; then ++ verbose=0 ++ fi ++ + case "$*" in + --startup) + # Don't put ordinary progress messages on stdout, +diff --git a/test/testdistcc.py b/test/testdistcc.py +index dfdf2f13..6377d0b6 100755 +--- a/test/testdistcc.py ++++ b/test/testdistcc.py +@@ -258,7 +258,11 @@ def valgrind(self): + return _valgrind_command; + + def distcc(self): +- return self.valgrind() + "distcc " ++ if "cpp" not in _server_options: ++ return self.valgrind() + "distcc " ++ else: ++ return "DISTCC_TESTING_INCLUDE_SERVER=1 " + self.valgrind() + "pump distcc " ++ + + def distccd(self): + return self.valgrind() + "distccd " +@@ -422,6 +426,11 @@ class BogusOption_Case(SimpleDistCC_Case): + Now that we support implicit compilers, this is passed to gcc, + which returns a non-zero status.""" + def runtest(self): ++ # Disable the test in pump mode since the pump wrapper fails ++ # before we can run distcc. ++ if "cpp" in _server_options: ++ raise comfychair.NotRunError('pump wrapper expects DISTCC_HOSTS') ++ + error_rc, _, _ = self.runcmd_unchecked(self._cc + " --bogus-option") + assert error_rc != 0 + self.runcmd(self.distcc() + self._cc + " --bogus-option", error_rc) +@@ -432,7 +441,7 @@ def runtest(self): + class CompilerOptionsPassed_Case(SimpleDistCC_Case): + """Test that options following the compiler name are passed to the compiler.""" + def runtest(self): +- out, err = self.runcmd("DISTCC_HOSTS=localhost " ++ out, err = self.runcmd("DISTCC_HOSTS=localhost%s " % _server_options + + self.distcc() + + self._cc + " --help") + if re.search('distcc', out): +@@ -1422,7 +1431,8 @@ def source(self): + + def setupEnv(self): + Compilation_Case.setupEnv(self) +- os.environ['DISTCC_HOSTS'] = '127.0.0.1:%d,lzo' % self.server_port ++ os.environ['DISTCC_HOSTS'] = ( ++ '127.0.0.1:%d,lzo' % self.server_port + _server_options) + + class DashONoSpace_Case(CompileHello_Case): + def compileCmd(self): +@@ -1525,6 +1535,11 @@ def source(self): + """ + + def runtest(self): ++ # Disable the test in pump mode since the pump wrapper fails ++ # before we can run distcc. ++ if "cpp" in _server_options: ++ raise comfychair.NotRunError('pump wrapper expects DISTCC_HOSTS') ++ + # -P means not to emit linemarkers + self.runcmd(self.distcc() + + self._cc + " -E testtmp.c -o testtmp.out") +@@ -1828,7 +1843,7 @@ class NoServer_Case(CompileHello_Case): + """Invalid server name""" + def setup(self): + self.stripEnvironment() +- os.environ['DISTCC_HOSTS'] = 'no.such.host.here' ++ os.environ['DISTCC_HOSTS'] = 'no.such.host.here' + _server_options + self.distcc_log = 'distcc.log' + os.environ['DISTCC_LOG'] = self.distcc_log + self.createSource() +@@ -1874,6 +1889,11 @@ class NoHosts_Case(CompileHello_Case): + We expect compilation to succeed, but with a warning that it was + run locally.""" + def runtest(self): ++ # Disable the test in pump mode since the pump wrapper fails ++ # before we can run distcc. ++ if "cpp" in _server_options: ++ raise comfychair.NotRunError('pump wrapper expects DISTCC_HOSTS') ++ + # WithDaemon_Case sets this to point to the local host, but we + # don't want that. Note that you cannot delete environment + # keys in Python1.5, so we need to just set them to the empty + -- cgit v1.2.3