Skip to content
  • Raphael Kubo da Costa's avatar
    Avoid using C11 to build CMake if _Thread_local support is broken · ffa6f057
    Raphael Kubo da Costa authored and Brad King's avatar Brad King committed
    Support for C11's _Thread_local was introduced in GCC in the 4.9 series,
    even though we make the C11 compiler flags available in CMake with GCC
    >= 4.6.
    
    FreeBSD's runetype.h uses _Thread_local, which causes CMake's own build
    to fail when using GCC < 4.9 and -std=gnu11:
    
      /usr/include/runetype.h:92:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'const'
       extern _Thread_local const _RuneLocale *_ThreadRuneLocale;
    
    Add a test for _Thread_local support and only build CMake itself with
    C11 support if it works.
    
    Bug: http://www.cmake.org/Bug/view.php?id=15741
    ffa6f057