Hi, Valdis. It wasn't me who asked the question, so I can't comment on the 
Frank's goal.

And in fact, what you may want to do is have your script invoke gcc twice, once 
with -E, and then a second time with -c, ...

Certainly. That is exactly what I have proposed. Nothing wrong with this.

Regards, Konstantin

Valdis Klētnieks, 10 Dec 2019 06:17 MSK:

And in fact, what you may want to do is have your script invoke gcc twice, once 
with -E, and then a second time with -c, because otherwise the build will die 
the first time it tries to link together two or more non-existent .o files.

Using 'make -k' might also work, but will leave the build log output littered 
with a lot of error messages.

Or explain why you're doing this - there may be a simpler way to achieve your 
goal. For instance, if you're trying to build a cross-reference of what .c 
files include what .h directly or indirectly, there's already specialized tools 
for doing that sort of thing, such as 'cxref'.

Konstantin Andreev, 09 Dec 2019 13:10 MSK:

The universal approach that always works in this and many similar cases is just 
to replace the instrumented binary by your interception shell script.

E.g. rename gcc to gcc.hide (generally, moving into another location may not 
work) and setup 'gcc' script that does what you want: replaces `-c' with the 
`-E', replaces `-o' argument, etc ..., calls gcc.hide to preprocess source then 
calls gcc.hide with original non-modified command line.

This is cumbersome process, you can break some things, ...

_______________________________________________
Kernelnewbies mailing list
[email protected]
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to