toolchain-external wrapper: don't pass march/mcpu if mtune is on cmdline
authorThomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Sun, 26 Jul 2015 10:53:07 +0000 (12:53 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 26 Jul 2015 13:20:10 +0000 (15:20 +0200)
Before commit 5715d2dcf48a39c16a3f3e41c97109613fed121d, the external
toolchain wrapper would not pass its own march/mcpu/mtune flags to the real
compiler if at least one of them was passed on the wrapper command-line.

The mentioned commit intended to remove the passing of an mtune parameter
coming from Buildroot, which was always empty after some other refactoring,
but the changes have the side-effect that march/mcpu is now also passed when
mtune is already given on the command-line. In that case, only mtune should
be passed to the real compiler.

Restore part of the original toolchain wrapper code to check the presence of
mtune on the command-line.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
toolchain/toolchain-external/ext-toolchain-wrapper.c

index e2d01dcd5bc8e2f9ccfd88fa1ef58dc00e5ffd28..b3b02d8e7c9e99b8223c7919ef9ce7c2bcb13518 100644 (file)
@@ -177,11 +177,12 @@ int main(int argc, char **argv)
 
 #if defined(BR_ARCH) || \
     defined(BR_CPU)
-       /* Add our -march/cpu/abi flags, but only if none are
-        * already specified on the commandline
+       /* Add our -march/cpu flags, but only if none of
+        * -march/mtune/mcpu are already specified on the commandline
         */
        for (i = 1; i < argc; i++) {
                if (!strncmp(argv[i], "-march=", strlen("-march=")) ||
+                   !strncmp(argv[i], "-mtune=", strlen("-mtune=")) ||
                    !strncmp(argv[i], "-mcpu=",  strlen("-mcpu=" )))
                        break;
        }