CMake compilation: do not use compiler extensions
For now, compiler extensions are no longer activated on CMake sources. However these extensions are still used for various third parties. This MR is a partial answer to the issue #20454.
This commit is contained in:
parent
7099db5dd4
commit
f034b0f663
@ -1,6 +1,11 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
# To ensure maximum portability across various compilers and platforms
|
||||
# deactivate any compiler extensions
|
||||
set(CMAKE_C_EXTENSIONS FALSE)
|
||||
set(CMAKE_CXX_EXTENSIONS FALSE)
|
||||
|
||||
include(CheckIncludeFile)
|
||||
# Check if we can build support for ELF parsing.
|
||||
if(CMAKE_CXX_PLATFORM_ID MATCHES "OpenBSD")
|
||||
|
@ -1,5 +1,10 @@
|
||||
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
file Copyright.txt or https://cmake.org/licensing for details. */
|
||||
#if defined(__CYGWIN__)
|
||||
// For S_IWRITE symbol
|
||||
# define _DEFAULT_SOURCE
|
||||
#endif
|
||||
|
||||
#include "cmWIXFilesSourceWriter.h"
|
||||
|
||||
#include "cm_sys_stat.h"
|
||||
|
@ -1,5 +1,15 @@
|
||||
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
file Copyright.txt or https://cmake.org/licensing for details. */
|
||||
|
||||
#if !defined(_WIN32) && !defined(__sun)
|
||||
// POSIX APIs are needed
|
||||
# define _POSIX_C_SOURCE 200809L
|
||||
#endif
|
||||
#if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__NetBSD__)
|
||||
// For isascii
|
||||
# define _XOPEN_SOURCE 700
|
||||
#endif
|
||||
|
||||
#include "cmLoadCommandCommand.h"
|
||||
|
||||
#include <csignal>
|
||||
|
@ -3,6 +3,19 @@
|
||||
#ifndef cmStandardLexer_h
|
||||
#define cmStandardLexer_h
|
||||
|
||||
#if !defined(_WIN32) && !defined(__sun)
|
||||
/* POSIX APIs are needed */
|
||||
# define _POSIX_C_SOURCE 200809L
|
||||
#endif
|
||||
#if defined(__sun) && defined(__GNUC__) && !defined(__cplusplus)
|
||||
/* C sources: for fileno and strdup */
|
||||
# define _XOPEN_SOURCE 600
|
||||
#endif
|
||||
#if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__NetBSD__)
|
||||
/* For isascii */
|
||||
# define _XOPEN_SOURCE 700
|
||||
#endif
|
||||
|
||||
#include "cmsys/Configure.h" // IWYU pragma: keep
|
||||
|
||||
/* Disable some warnings. */
|
||||
|
@ -1,5 +1,15 @@
|
||||
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
file Copyright.txt or https://cmake.org/licensing for details. */
|
||||
|
||||
#if !defined(_WIN32) && !defined(__sun)
|
||||
// POSIX APIs are needed
|
||||
# define _POSIX_C_SOURCE 200809L
|
||||
#endif
|
||||
#if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__NetBSD__)
|
||||
// For isascii
|
||||
# define _XOPEN_SOURCE 700
|
||||
#endif
|
||||
|
||||
#include "cmSystemTools.h"
|
||||
|
||||
#include <cmext/algorithm>
|
||||
|
@ -1,5 +1,15 @@
|
||||
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
file Copyright.txt or https://cmake.org/licensing for details. */
|
||||
|
||||
#if !defined(_WIN32) && !defined(__sun)
|
||||
// POSIX APIs are needed
|
||||
# define _POSIX_C_SOURCE 200809L
|
||||
#endif
|
||||
#if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__NetBSD__)
|
||||
// For isascii
|
||||
# define _XOPEN_SOURCE 700
|
||||
#endif
|
||||
|
||||
#include "cmTimestamp.h"
|
||||
|
||||
#include <cstdlib>
|
||||
|
@ -1,4 +1,8 @@
|
||||
|
||||
# To ensure maximum portability across various compilers and platforms
|
||||
# deactivate any compiler extensions
|
||||
set(CMAKE_CXX_EXTENSIONS FALSE)
|
||||
|
||||
# source files for CMake std library
|
||||
set(SRCS cm/bits/string_view.cxx
|
||||
cm/memory
|
||||
|
Loading…
Reference in New Issue
Block a user