-
Notifications
You must be signed in to change notification settings - Fork 7.3k
CMake enables -fmacro-prefix-map on GCC 7 #15551
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@marc-hb : FYI |
@benpicco can you point at where exactly you got this toolchain to speed up reproduction attempts? |
@marc-hb My .zephyrrc is
|
This is strange, I just tested with Ubuntu 18.04 and
and everything went fine, the option was correctly disabled as not supported. Can you please try this:
then open cmake-verbose.log and search for
(FYI the corresponding code is in cmake/extensions.cmake, line 680) Next please try this:
Also move the previous cmake-verbose.log, build directory and try building everything from scratch again. Open the new cmake-verbose.log and this time you should find errors like this one in cmake-verbose.log:
This particular error should be about 200 lines after |
Alright, now this is odd. So it looks like my |
I/we would appreciate if you could give my instructions a try at work, carefully not deleting anything, just renaming build directories and caches. The cache should never get screwed up, if it does then there's a bug. |
@marc-hb removing I've uploaded cmake-verbose.log and ~/.cache/zephyr if you want to investigate this further. |
Thanks @benpicco , appreciated. I scanned this log and extracted the relevant parts below. According to this log, the cache had indeed the wrong, "1" (= True) value.
This comment in
In this case the binary is |
AFAIK *-gcc does not actually exec *-cpp, it links with / has built-in the code for preprocessing. So this should be safe. In theory, a binary could dynamically link with two different DLLs, which would not be detected by the caching mechanism, but this won't happen for arm-none-eabi-gcc I believe. |
It happened again.
(branch @same54-rebase) |
@benpicco shared his I checked the actual files in
|
... yet all hope is not lost, because The reason the rebase triggered this issue is because the way Looking at timestamps, the rebase triggered the addition of only 3 new database entries:
The trailing underscore in
|
Describe the bug
When trying to build the latest master with GCC 7, the build fails due to the compiler option
-fmacro-prefix-map
not being available.To Reproduce
Steps to reproduce the behavior:
Expected behavior
The build succeeds.
Impact
It's impossible to build Zephyr unless you have GCC 8 installed
Screenshots or console output
Environment (please complete the following information):
The text was updated successfully, but these errors were encountered: