RealSR-NCNN-Android
34 строки · 1020.0 Байт
1set(TMP_DIR ${PROJECT_BINARY_DIR}/tmp)
2set(DetectionSample_DIR ${TOP_DIR}/cmake/DetectionSample)
3
4set(has_filesystem_cpp
5"#include <filesystem>
6
7int main()
8{
9std::filesystem::path hasFS(\"./\")\;
10return 0\;
11}
12")
13
14if(NOT EXISTS ${DetectionSample_DIR}/has_filesystem.cpp)
15file(MAKE_DIRECTORY ${DetectionSample_DIR})
16file(WRITE ${DetectionSample_DIR}/has_filesystem.cpp ${has_filesystem_cpp})
17endif()
18
19# check std::filesystem
20if(CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9.0)
21try_compile(HAS_FILESYSTEM
22${TMP_DIR}
23${DetectionSample_DIR}/has_filesystem.cpp
24CMAKE_FLAGS -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD_REQUIRED=ON -DLINK_LIBRARIES=stdc++fs
25OUTPUT_VARIABLE HAS_FILESYSTEM_MSG
26)
27else()
28try_compile(HAS_FILESYSTEM
29${TMP_DIR}
30${DetectionSample_DIR}/has_filesystem.cpp
31CMAKE_FLAGS -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD_REQUIRED=ON
32OUTPUT_VARIABLE HAS_FILESYSTEM_MSG
33)
34endif()
35