Checking whether 'gcc -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include ' works. Try: gcc Line: gcc -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include cmake_bootstrap_19955_test.c -o cmake_bootstrap_19955_test ---------- file ----------------------- #ifdef __cplusplus # error "The CMAKE_C_COMPILER is set to a C++ compiler" #endif #if defined(_AIX) && defined(__GNUC__) && !defined(_THREAD_SAFE) #error "On AIX with GNU we need the -pthread flag." #endif #if defined(__sun) && __STDC_VERSION__ < 199901L #error "On Solaris we need C99." #endif #if defined(__hpux) && !(defined(__GNUC__) && ((__GNUC__ * 100) + __GNUC_MINOR__) >= 409) #error "On HP-UX we need GCC 4.9 or higher." #endif #include int main(int argc, char* argv[]) { printf("%d%c", (argv != 0), (char)0x0a); return argc - 1; } ------------------------------------------ 1 Test succeeded Checking whether 'g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include ' works. Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include cmake_bootstrap_19955_test.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- #include #include #include #if __cplusplus < 201103L #error "Compiler is not in a mode aware of C++11." #endif #if defined(_AIX) && defined(__GNUC__) && !defined(_THREAD_SAFE) #error "On AIX with GNU we need the -pthread flag." #endif #if defined(__SUNPRO_CC) && __SUNPRO_CC < 0x5140 #error "SunPro <= 5.13 mode not supported due to bug in move semantics." #endif #if defined(__hpux) && !(defined(__GNUC__) && ((__GNUC__ * 100) + __GNUC_MINOR__) >= 409) #error "On HP-UX we need GCC 4.9 or higher." #endif #if __cplusplus > 201103L #include int check_cxx14() { int a[] = { 0, 1, 2 }; auto ai = std::cbegin(a); int b[] = { 2, 1, 0 }; auto bi = std::cend(b); return *ai + *(bi - 1); } #else int check_cxx14() { return 0; } #endif #if (__cplusplus >= 201703L || defined(__INTEL_COMPILER) && defined(__cpp_deduction_guides)) #include template ::type = nullptr> typename T::pointer get_ptr(T& item) { return item.get(); } int check_cxx17() { // Intel compiler do not handle correctly decltype inside invoke_result std::unique_ptr u(new int(0)); get_ptr(u); std::optional oi = 0; return oi.value(); } #else int check_cxx17() { return 0; } #endif class Class { public: int Get() const { return this->Member; } private: int Member = 1; }; int main() { auto const c = std::unique_ptr(new Class); std::cout << c->Get() << check_cxx14() << check_cxx17() << std::endl; return 0; } ------------------------------------------ 100 Test succeeded Checking whether 'g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include ' supports 'make_unique'. Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_make_unique.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- #include int main() { std::unique_ptr u = std::make_unique(0); return *u; } ------------------------------------------ Test succeeded Checking whether 'g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include ' supports 'filesystem'. Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- #include int main() { std::filesystem::path p0(L"/a/b/c"); std::filesystem::path p1("/a/b/c"); std::filesystem::path p2("/a/b/c"); if (p1 != p2) { return 1; } #if defined(_WIN32) std::filesystem::path p3("//host/a/b/../c"); if (p3.lexically_normal().generic_string() != "//host/a/c") { return 1; } std::filesystem::path p4("c://a/.///b/../"); if (p4.lexically_normal().generic_string() != "c:/a/") { return 1; } #endif return 0; } ------------------------------------------ /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx: In function 'int main()': /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx:6:8: error: 'std::filesystem' has not been declared 6 | std::filesystem::path p0(L"/a/b/c"); | ^~~~~~~~~~ /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx:8:8: error: 'std::filesystem' has not been declared 8 | std::filesystem::path p1("/a/b/c"); | ^~~~~~~~~~ /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx:9:8: error: 'std::filesystem' has not been declared 9 | std::filesystem::path p2("/a/b/c"); | ^~~~~~~~~~ /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx:10:7: error: 'p1' was not declared in this scope 10 | if (p1 != p2) { | ^~ /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/Checks/cm_cxx_filesystem.cxx:10:13: error: 'p2' was not declared in this scope 10 | if (p1 != p2) { | ^~ Test failed to compile Try: gmake gmake[4]: Entering directory '/mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Bootstrap.cmk/cmake_bootstrap_19955_test_dir' "gcc" -L/mnt/gold/openwrt/trunk/staging_dir/host/lib -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include -o test test.c gmake[4]: Leaving directory '/mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Bootstrap.cmk/cmake_bootstrap_19955_test_dir' 1 gmake works Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include -DTEST_KWSYS_CXX_HAS_SETENV /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing#kwsys for details. */ #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIM # include # include # include int main() { struct stat stat1; (void)stat1.st_mtim.tv_sec; (void)stat1.st_mtim.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIMESPEC # include # include # include int main() { struct stat stat1; (void)stat1.st_mtimespec.tv_sec; (void)stat1.st_mtimespec.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_SETENV # include int main() { return setenv("A", "B", 1); } #endif #ifdef TEST_KWSYS_CXX_HAS_UNSETENV # include int main() { unsetenv("A"); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H # include int main() { char* e = environ[0]; return e ? 0 : 1; } #endif #ifdef TEST_KWSYS_CXX_HAS_GETLOADAVG // Match feature definitions from SystemInformation.cxx # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { double loadavg[3] = { 0.0, 0.0, 0.0 }; return getloadavg(loadavg, 3); } #endif #ifdef TEST_KWSYS_CXX_HAS_RLIMIT64 # include int main() { struct rlimit64 rlim; return getrlimit64(0, &rlim); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMES # include int main() { struct timeval* current_time = 0; return utimes("/example", current_time); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMENSAT # include # include # if defined(__APPLE__) # include # if MAC_OS_X_VERSION_MIN_REQUIRED < 101300 # error "utimensat not available on macOS < 10.13" # endif # endif int main() { struct timespec times[2] = { { 0, UTIME_OMIT }, { 0, UTIME_NOW } }; return utimensat(AT_FDCWD, "/example", times, AT_SYMLINK_NOFOLLOW); } #endif #ifdef TEST_KWSYS_CXX_HAS_BACKTRACE # if defined(__PATHSCALE__) || defined(__PATHCC__) || \ (defined(__LSB_VERSION__) && (__LSB_VERSION__ < 41)) backtrace does not work with this compiler or os # endif # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { void* stackSymbols[256]; backtrace(stackSymbols, 256); backtrace_symbols(&stackSymbols[0], 1); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_DLADDR # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { Dl_info info; int ierr = dladdr((void*)main, &info); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_CXXABI # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # if defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5130 && __linux && \ __SUNPRO_CC_COMPAT == 'G' # include # endif # include int main() { int status = 0; size_t bufferLen = 512; char buffer[512] = { '\0' }; const char* function = "_ZN5kwsys17SystemInformation15GetProgramStackEii"; char* demangledFunction = abi::__cxa_demangle(function, buffer, &bufferLen, &status); return status; } #endif #ifdef TEST_KWSYS_STL_HAS_WSTRING # include void f(std::wstring*) { } int main() { return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H # include int main() { return 0; } #endif ------------------------------------------ Test succeeded Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include -DTEST_KWSYS_CXX_HAS_UNSETENV /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing#kwsys for details. */ #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIM # include # include # include int main() { struct stat stat1; (void)stat1.st_mtim.tv_sec; (void)stat1.st_mtim.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIMESPEC # include # include # include int main() { struct stat stat1; (void)stat1.st_mtimespec.tv_sec; (void)stat1.st_mtimespec.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_SETENV # include int main() { return setenv("A", "B", 1); } #endif #ifdef TEST_KWSYS_CXX_HAS_UNSETENV # include int main() { unsetenv("A"); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H # include int main() { char* e = environ[0]; return e ? 0 : 1; } #endif #ifdef TEST_KWSYS_CXX_HAS_GETLOADAVG // Match feature definitions from SystemInformation.cxx # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { double loadavg[3] = { 0.0, 0.0, 0.0 }; return getloadavg(loadavg, 3); } #endif #ifdef TEST_KWSYS_CXX_HAS_RLIMIT64 # include int main() { struct rlimit64 rlim; return getrlimit64(0, &rlim); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMES # include int main() { struct timeval* current_time = 0; return utimes("/example", current_time); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMENSAT # include # include # if defined(__APPLE__) # include # if MAC_OS_X_VERSION_MIN_REQUIRED < 101300 # error "utimensat not available on macOS < 10.13" # endif # endif int main() { struct timespec times[2] = { { 0, UTIME_OMIT }, { 0, UTIME_NOW } }; return utimensat(AT_FDCWD, "/example", times, AT_SYMLINK_NOFOLLOW); } #endif #ifdef TEST_KWSYS_CXX_HAS_BACKTRACE # if defined(__PATHSCALE__) || defined(__PATHCC__) || \ (defined(__LSB_VERSION__) && (__LSB_VERSION__ < 41)) backtrace does not work with this compiler or os # endif # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { void* stackSymbols[256]; backtrace(stackSymbols, 256); backtrace_symbols(&stackSymbols[0], 1); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_DLADDR # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { Dl_info info; int ierr = dladdr((void*)main, &info); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_CXXABI # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # if defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5130 && __linux && \ __SUNPRO_CC_COMPAT == 'G' # include # endif # include int main() { int status = 0; size_t bufferLen = 512; char buffer[512] = { '\0' }; const char* function = "_ZN5kwsys17SystemInformation15GetProgramStackEii"; char* demangledFunction = abi::__cxa_demangle(function, buffer, &bufferLen, &status); return status; } #endif #ifdef TEST_KWSYS_STL_HAS_WSTRING # include void f(std::wstring*) { } int main() { return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H # include int main() { return 0; } #endif ------------------------------------------ Test succeeded Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include -DTEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing#kwsys for details. */ #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIM # include # include # include int main() { struct stat stat1; (void)stat1.st_mtim.tv_sec; (void)stat1.st_mtim.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIMESPEC # include # include # include int main() { struct stat stat1; (void)stat1.st_mtimespec.tv_sec; (void)stat1.st_mtimespec.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_SETENV # include int main() { return setenv("A", "B", 1); } #endif #ifdef TEST_KWSYS_CXX_HAS_UNSETENV # include int main() { unsetenv("A"); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H # include int main() { char* e = environ[0]; return e ? 0 : 1; } #endif #ifdef TEST_KWSYS_CXX_HAS_GETLOADAVG // Match feature definitions from SystemInformation.cxx # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { double loadavg[3] = { 0.0, 0.0, 0.0 }; return getloadavg(loadavg, 3); } #endif #ifdef TEST_KWSYS_CXX_HAS_RLIMIT64 # include int main() { struct rlimit64 rlim; return getrlimit64(0, &rlim); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMES # include int main() { struct timeval* current_time = 0; return utimes("/example", current_time); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMENSAT # include # include # if defined(__APPLE__) # include # if MAC_OS_X_VERSION_MIN_REQUIRED < 101300 # error "utimensat not available on macOS < 10.13" # endif # endif int main() { struct timespec times[2] = { { 0, UTIME_OMIT }, { 0, UTIME_NOW } }; return utimensat(AT_FDCWD, "/example", times, AT_SYMLINK_NOFOLLOW); } #endif #ifdef TEST_KWSYS_CXX_HAS_BACKTRACE # if defined(__PATHSCALE__) || defined(__PATHCC__) || \ (defined(__LSB_VERSION__) && (__LSB_VERSION__ < 41)) backtrace does not work with this compiler or os # endif # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { void* stackSymbols[256]; backtrace(stackSymbols, 256); backtrace_symbols(&stackSymbols[0], 1); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_DLADDR # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { Dl_info info; int ierr = dladdr((void*)main, &info); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_CXXABI # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # if defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5130 && __linux && \ __SUNPRO_CC_COMPAT == 'G' # include # endif # include int main() { int status = 0; size_t bufferLen = 512; char buffer[512] = { '\0' }; const char* function = "_ZN5kwsys17SystemInformation15GetProgramStackEii"; char* demangledFunction = abi::__cxa_demangle(function, buffer, &bufferLen, &status); return status; } #endif #ifdef TEST_KWSYS_STL_HAS_WSTRING # include void f(std::wstring*) { } int main() { return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H # include int main() { return 0; } #endif ------------------------------------------ /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx: In function 'int main()': /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx:53:13: error: 'environ' was not declared in this scope; did you mean 'union'? 53 | char* e = environ[0]; | ^~~~~~~ | union Test failed to compile Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include -DTEST_KWSYS_STL_HAS_WSTRING /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing#kwsys for details. */ #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIM # include # include # include int main() { struct stat stat1; (void)stat1.st_mtim.tv_sec; (void)stat1.st_mtim.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIMESPEC # include # include # include int main() { struct stat stat1; (void)stat1.st_mtimespec.tv_sec; (void)stat1.st_mtimespec.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_SETENV # include int main() { return setenv("A", "B", 1); } #endif #ifdef TEST_KWSYS_CXX_HAS_UNSETENV # include int main() { unsetenv("A"); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H # include int main() { char* e = environ[0]; return e ? 0 : 1; } #endif #ifdef TEST_KWSYS_CXX_HAS_GETLOADAVG // Match feature definitions from SystemInformation.cxx # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { double loadavg[3] = { 0.0, 0.0, 0.0 }; return getloadavg(loadavg, 3); } #endif #ifdef TEST_KWSYS_CXX_HAS_RLIMIT64 # include int main() { struct rlimit64 rlim; return getrlimit64(0, &rlim); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMES # include int main() { struct timeval* current_time = 0; return utimes("/example", current_time); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMENSAT # include # include # if defined(__APPLE__) # include # if MAC_OS_X_VERSION_MIN_REQUIRED < 101300 # error "utimensat not available on macOS < 10.13" # endif # endif int main() { struct timespec times[2] = { { 0, UTIME_OMIT }, { 0, UTIME_NOW } }; return utimensat(AT_FDCWD, "/example", times, AT_SYMLINK_NOFOLLOW); } #endif #ifdef TEST_KWSYS_CXX_HAS_BACKTRACE # if defined(__PATHSCALE__) || defined(__PATHCC__) || \ (defined(__LSB_VERSION__) && (__LSB_VERSION__ < 41)) backtrace does not work with this compiler or os # endif # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { void* stackSymbols[256]; backtrace(stackSymbols, 256); backtrace_symbols(&stackSymbols[0], 1); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_DLADDR # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { Dl_info info; int ierr = dladdr((void*)main, &info); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_CXXABI # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # if defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5130 && __linux && \ __SUNPRO_CC_COMPAT == 'G' # include # endif # include int main() { int status = 0; size_t bufferLen = 512; char buffer[512] = { '\0' }; const char* function = "_ZN5kwsys17SystemInformation15GetProgramStackEii"; char* demangledFunction = abi::__cxa_demangle(function, buffer, &bufferLen, &status); return status; } #endif #ifdef TEST_KWSYS_STL_HAS_WSTRING # include void f(std::wstring*) { } int main() { return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H # include int main() { return 0; } #endif ------------------------------------------ Test succeeded Try: g++ Line: g++ -O2 -I/mnt/gold/openwrt/trunk/staging_dir/host/include -DTEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H /mnt/gold/openwrt/trunk/build_dir/host/cmake-3.19.1/Source/kwsys/kwsysPlatformTestsCXX.cxx -o cmake_bootstrap_19955_test ---------- file ----------------------- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing#kwsys for details. */ #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIM # include # include # include int main() { struct stat stat1; (void)stat1.st_mtim.tv_sec; (void)stat1.st_mtim.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_STAT_HAS_ST_MTIMESPEC # include # include # include int main() { struct stat stat1; (void)stat1.st_mtimespec.tv_sec; (void)stat1.st_mtimespec.tv_nsec; return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_SETENV # include int main() { return setenv("A", "B", 1); } #endif #ifdef TEST_KWSYS_CXX_HAS_UNSETENV # include int main() { unsetenv("A"); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H # include int main() { char* e = environ[0]; return e ? 0 : 1; } #endif #ifdef TEST_KWSYS_CXX_HAS_GETLOADAVG // Match feature definitions from SystemInformation.cxx # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { double loadavg[3] = { 0.0, 0.0, 0.0 }; return getloadavg(loadavg, 3); } #endif #ifdef TEST_KWSYS_CXX_HAS_RLIMIT64 # include int main() { struct rlimit64 rlim; return getrlimit64(0, &rlim); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMES # include int main() { struct timeval* current_time = 0; return utimes("/example", current_time); } #endif #ifdef TEST_KWSYS_CXX_HAS_UTIMENSAT # include # include # if defined(__APPLE__) # include # if MAC_OS_X_VERSION_MIN_REQUIRED < 101300 # error "utimensat not available on macOS < 10.13" # endif # endif int main() { struct timespec times[2] = { { 0, UTIME_OMIT }, { 0, UTIME_NOW } }; return utimensat(AT_FDCWD, "/example", times, AT_SYMLINK_NOFOLLOW); } #endif #ifdef TEST_KWSYS_CXX_HAS_BACKTRACE # if defined(__PATHSCALE__) || defined(__PATHCC__) || \ (defined(__LSB_VERSION__) && (__LSB_VERSION__ < 41)) backtrace does not work with this compiler or os # endif # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { void* stackSymbols[256]; backtrace(stackSymbols, 256); backtrace_symbols(&stackSymbols[0], 1); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_DLADDR # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # include int main() { Dl_info info; int ierr = dladdr((void*)main, &info); return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_CXXABI # if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE) # define _GNU_SOURCE # endif # if defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5130 && __linux && \ __SUNPRO_CC_COMPAT == 'G' # include # endif # include int main() { int status = 0; size_t bufferLen = 512; char buffer[512] = { '\0' }; const char* function = "_ZN5kwsys17SystemInformation15GetProgramStackEii"; char* demangledFunction = abi::__cxa_demangle(function, buffer, &bufferLen, &status); return status; } #endif #ifdef TEST_KWSYS_STL_HAS_WSTRING # include void f(std::wstring*) { } int main() { return 0; } #endif #ifdef TEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H # include int main() { return 0; } #endif ------------------------------------------ Test succeeded