61cb120ee5
Some packages, like libbsd, use -isystem flags to provide so-called overrides to the system include files. In this particular case, this is used in a .pc file, then used by antoher package; pkgconf does not mangle this path; and eventually that other package ends up using /usr/include/bsd to search for headers. Our current toolchain wrapper is limited to looking for -I and -L, so the paranoid check does not kick in. Furthermore, as noticed by Arnout, there might be a bunch of other so-unsafe options: -isysroot, -imultilib, -iquote, -idirafter, -iprefix, -iwithprefix, -iwithprefixbefore; even -B and --sysroot are unsafe. Extend the paranoid check to be able to check any arbitrary number of potentially unsafe options: - add a list of options to check for, each with their length, - iterate over this list until we find a matching unsafe option. Compared to previously, the list of options include -I and -L (which we already had) extended with -idirafter, -iquote and -isystem, but leaving all the others noticed by Arnout away, until we have a reason for handling them. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
||
---|---|---|
.. | ||
toolchain | ||
toolchain-buildroot | ||
toolchain-external | ||
Config.in | ||
helpers.mk | ||
toolchain-common.in | ||
toolchain-wrapper.c | ||
toolchain-wrapper.mk | ||
toolchain.mk |