-
Notifications
You must be signed in to change notification settings - Fork 2k
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
make: Use unique module name for cpu_common periph #4797
make: Use unique module name for cpu_common periph #4797
Conversation
ea16f9b
to
7783414
Compare
whoops, I was a bit too tired, amended to fix new Travis failures. |
7783414
to
95ef11b
Compare
Out of curiosity, are the Travis errors 'malformed archive' errors in/after the linking step? If so, I experience similar errors when using |
The Travis errors are missing symbols. The Makefile dependency graph should ensure that the archives have finished generating before starting the linking recipe.. I think your errors are unrelated to this, unless there are more cases of the same module name in multiple directories. Is it the same archive(s) every time or is it completely random which one fails? I usually use make -j4 on my machine (quad core) and I have never seen the "malformed archive" error when building RIOT (so far). Could you open a separate issue with your problems and add any relevant information (what system, compiler versions, etc)? https://travis-ci.org/RIOT-OS/RIOT/jobs/108546524:
The failing application is random, but the likelihood of it happening is large enough that it happens to 1 or 2 applications on every Travis build right now. |
Nice catch, this would indeed explain why I was not able to re-produce the Travis failures locally (I always build with the I was hoping to use just the one ACK. |
and Travis already likes this -> go |
make: Use unique module name for cpu_common periph
Hopefully fixes the random Travis failures we have seen since #4762 was merged.
For the nrf51, there are files in both nrf5x_common/periph and nrf51/periph which are both built and put in periph.a before linking. My theory is that the random Travis failures we have been experiencing have been caused by a race between builds of these two directories, possibly overwriting each others' output file (static library).