Skip to content
Commit b70dec3f authored by Eric Le Bihan's avatar Eric Le Bihan Committed by Thomas Petazzoni
Browse files

eudev: only use pragma diagnostics if GCC supports it.

eudev uses GCC pragma diagnostics [1] for some of its logging functions,
to circumvent -Wformat-nonliteral. This feature is only available in GCC
>= 4.6.

The external toolchains for some architectures (PowerPC, SuperH) are based on
GCC 4.5. So eudev will not compile when using them.

systemd also uses the pragma diagnostics, but its dependency on Linux
headers >= 3.8 for the toolchain indirectly forces recent versions of
GCC.

This workaround enables the pragma diagnostics only when using GCC >= 4.6.
This means that if the user uses GCC 4.5 and explicitly sets the options
-Werror -Wformat-nonliteral, the build will fail...

[1] http://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html#Diagnostic-Pragmas



Signed-off-by: default avatarEric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent bd573ccf
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment