Bug 1527368

Summary: distcc fails to handle standalone -Wp,-MT,target gcc option
Product: [Fedora] Fedora Reporter: Laszlo Ersek <lersek>
Component: distccAssignee: Gwyn Ciesla <gwync>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 26CC: agrover, gwync
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: distcc-3.2rc1-17.fc27 distcc-3.2rc1-17.fc26 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-29 18:44:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Laszlo Ersek 2017-12-19 10:03:34 UTC
*** Description of problem:

Linux kernel commit baa1973ebcf6 ("tools build: Fix objtool build with clang", 2016-12-05) split gcc -Wp options of the form

  -Wp,-MD,$(depfile),-MT,$@

to separate options of the form

  -Wp,-MD,$(depfile) -Wp,-MT,$@

(This Linux kernel commit was released as part of Linux v4.10.) As a result, distcc can no longer build the kernel.

*** Version-Release number of selected component (if applicable):

distcc-3.2rc1-11

*** How reproducible:

100%

*** Steps to Reproduce:

1. Set up distcc in "masquerade" mode (refer to distcc(1))
2. Try to build a kernel tree from source that contains commit baa1973ebcf6.

*** Actual results:

Compilation fails with:

  HOSTCC   .../tools/objtool/fixdep.o
gcc: fatal error: no input files
compilation terminated.
distcc[14013] ERROR: compile (null) on localhost failed with exit code 4
cat: .../tools/objtool/.fixdep.o.d: No such file or directory

*** Expected results:

The build should succeed.

*** Additional info:

I reported the issue in the upstream distcc tracker as well (yesterday): <https://github.com/distcc/distcc/issues/248>. It seems like there is a simple patch available, already applied to Debian and Ubuntu. Please apply that patch to Fedora's distcc as well (in all of Fedora 26, Fedora 27, and Rawhide), until upstream distcc makes a new release (which they are planning to do).

I'm filing this as Urgent/Urgent because speeding up kernel bisection with distcc is a primary use case for distcc, and it no longer works (due to upstream kernel commit baa1973ebcf6, see above). Adjust as necessary. Thanks!

Comment 1 Fedora Update System 2017-12-21 15:37:37 UTC
distcc-3.2rc1-17.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-16890ff400

Comment 2 Fedora Update System 2017-12-21 15:37:56 UTC
distcc-3.2rc1-17.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-f884920938

Comment 3 Fedora Update System 2017-12-21 20:27:29 UTC
distcc-3.2rc1-17.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-16890ff400

Comment 4 Fedora Update System 2017-12-21 21:12:37 UTC
distcc-3.2rc1-17.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-f884920938

Comment 5 Fedora Update System 2017-12-29 18:44:55 UTC
distcc-3.2rc1-17.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.

Comment 6 Fedora Update System 2017-12-29 20:52:36 UTC
distcc-3.2rc1-17.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.