Summary * make check-gcc on windows. * crosstool-ng patches
Details: 1. Two patches for crosstool-ng: * Fix the compile error when CT_USE_SYSROOT is not "y". With this fix, we can config crosstool-ng to remove the symbol link for windows build. * Add scripts to build manual for newlib. 2. make check-gcc on Windows: * Wrap gcc/g++ for windows test. testglue.c should be compiled with gcc not g++. * Enhance scripts to convert path using "cygpath -w" 3. Analyze and root cause the pseudo new failed cases on windows. * gcc fail cases (gcc.dg/cpp/assert3.c, gcc.dg/cpp/include7.c and gcc.dg/cpp/trad/assert3.c) Root cause: " in options are removed in the test scripts. e.g. When reading gcc.log, you can find “-Aabc = jkl” in "Executing on host" as: Executing on host: …/cpp/assert3.c -A abc=def -A abc(ghi) "-Aabc = jkl" … But in spawn: the “” are removed. spawn …/cpp/assert3.c -A abc=def -A abc(ghi) -Aabc = jkl * g++ fail cases (dwarf2/lineno-simple1.C, dwarf2/pr44641.C and dwarf2/pr46527.C) The assembler codes generated from windows g++ and linux g++ are same except the PATH string. And all PASS on linux test. It seams the scripts can not grep the expected string on windows. * Tests on windows are not stable. For each test, there will have random fail cases (pass when retesting separately).
Plans: * Create Makefile for embedded toolchain in linaro crosstool-ng.
Best regards! -Zhenqiang