Bug 1438063

Summary: ccache causes dependency file generation error when trying to compile upstream linux kernels
Product: [Fedora] Fedora EPEL Reporter: Jonathan Toppins <jtoppins>
Component: ccacheAssignee: Orion Poplawski <orion>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: epel7CC: orion, ville.skytta
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: ccache-3.3.4-1.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-04-17 00:20:56 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 Jonathan Toppins 2017-03-31 19:06:45 UTC
Description of problem:

When compiling an upstream linux kernel (v4.10 or higher) or RHEL 7.4 kernel a compile error is generated due to multiple -Wp flags not being processed correctly.

Version-Release number of selected component (if applicable):
ccache.x86_64    3.2.7-3.el7    epel

Possible Resolutions:
Looking at the release notes it appears fixes that went into 3.2.9 and 3.2.8 [1] would likely solve this issue. I have rebuilt locally version 3.3.4 [2] which seems to resolve the issue.

How reproducible:
Always


Steps to Reproduce:

Upstream Linux kernel commit introduced the issue:
  baa1973ebcf6 tools build: Fix objtool build with clang

Attempt to compile any upstream kernel after this point and the following error will be seen:

$ make all
[...]
  UPD     lib/qrwlock_debug.c
  CC      kernel/bounds.s
  GEN     include/generated/bounds.h
  CC      arch/x86/kernel/asm-offsets.s
  GEN     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  HOSTCC   /home/jtoppins/projects/linux-rhel7/tools/objtool/fixdep.o
cc1: error: to generate dependencies you must specify either -M or -MM
  HOSTLD   /home/jtoppins/projects/linux-rhel7/tools/objtool/fixdep-in.o
ld: cannot find
/home/jtoppins/projects/linux-rhel7/tools/objtool/fixdep.o: No such file
or directory
make[4]: ***
[/home/jtoppins/projects/linux-rhel7/tools/objtool/fixdep-in.o] Error 1
make[3]: ***
[/home/jtoppins/projects/linux-rhel7/tools/objtool/fixdep-in.o] Error 2
make[2]: *** [fixdep] Error 2
make[1]: *** [objtool] Error 2
make: *** [tools/objtool] Error 2

Actual results:
see above

Expected results:
the build does not fail

Additional info:
This upstream kernel commit was also backported to RHEL 7.4 in version kernel-3.10.0-635.el7 and so any attempts to recompile RHEL kernels after this point using ccache will fail.

The severity has been marked as high as the failure does not lend itself to easily figuring out what the problem actually is.

[1] https://ccache.samba.org/releasenotes.html#_ccache_3_2_9
[2] https://koji.fedoraproject.org/koji/buildinfo?buildID=860160

Comment 1 Fedora Update System 2017-03-31 22:09:27 UTC
ccache-3.3.4-1.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-5ef78dd782

Comment 2 Fedora Update System 2017-04-01 16:19:24 UTC
ccache-3.3.4-1.el7 has been pushed to the Fedora EPEL 7 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-EPEL-2017-5ef78dd782

Comment 3 Jonathan Toppins 2017-04-07 18:38:58 UTC
Looks good.

Downloading the rpm package from koji and installing onto my system results in:
 * proper install of the package
 * building an upstream kernel works correctly and accepts the updated -Wp flags

Comment 4 Ville Skyttä 2017-04-09 16:13:36 UTC
(In reply to Jonathan Toppins from comment #3)
> Looks good.

Remember to post your feedback to bodhi as well, see URL in comment 2. Thanks.

Comment 5 Fedora Update System 2017-04-17 00:20:56 UTC
ccache-3.3.4-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.