Files
ox/CMakeLists.txt
T
gary 5461f6700d Squashed 'deps/nfde/' changes from 28ade5a5c..5786fabce
5786fabce Release: v1.1.1
cdbc9e9df Build: Update minimum CMake version to 3.5 (#113)
a6d93cb12 CI: Downgrade from C++23 to C++20 on Ubuntu (#116)
f4bf38915 CI: Remove CircleCI config file (#114)
75cbdf819 Build: Add support for building shared libraries on Windows (#109)
800f58283 Release: v1.1.0
210ae0e76 Portal: Support defaultPath for OpenDialog, OpenDialogMultiple, and PickFolder (#108)
dbd7139b4 Build: Generate and install CMake config (#100)
1fde8a5aa CI: Update MacOS 10.15 to MacOS 11 (#101)
06a5c1f0a Release: v1.0.3
ae6718b68 Portal: Make `PickFolder()` check that portal interface version is >=3 (#94)
08216013f Portal: Support formatted error messages using sprintf() (#97)
da81bb077 README: Remove untested portal warning and link current_folder PR (#96)
2b55a1f83 CI: Upgrade Ubuntu 18.04 to Ubuntu 20.04 (#95)
7909f55d9 Release: v1.0.2
d1b80e3a6 MacOS: Add NFD_ClearError() definition (#88)
44e63d5e5 Portal: Add `getrandom` fallback for old versions of GLIBC (#86)
43fe9cf95 Build: Use XXX_LINK_LIBRARIES for linking to support *BSD (#85)
dd46d2a05 ClangFormat: Force ClangFormat 13 for now (#84)
699bb6f82 Build: Set target_include_directories correctly when NFDe is added as a subdirectory (#83)
6efc82407 Release: v1.0.1
74923e7c0 README: Add missing Windows shell32.lib dependency
31df8e30c README: Update NFD_BUILD_TESTS and add NFD_INSTALL flags (#78)
dee61e555 Add NFD_INSTALL option + disable install when in subproject (#77)
e018ec82b Option to generate shared library & use GNUInstallDirs (#76)
d4df2b6ad README: Add NFD_USE_ALLOWEDCONTENTTYPES_IF_AVAILABLE flag
6967d28b0 MacOS: Perform CMake check if allowedContentTypes will be used
f397884eb MacOS: Rename flag to NFD_USE_ALLOWEDCONTENTTYPES_IF_AVAILABLE
89a67f8a5 MacOS: Add CMake flag to avoid using and linking the UniformTypeIdentifiers framework (#72)
331159281 Portal: Don't automatically append file extension in SaveDialog()
008da08d0 Portal: Decode returned URIs
c886650bd README: Update MacOS quirk
eb465a366 Build: Choose latest C++ version based on CMake version
957cf8b0a CI: Build MacOS 10.15 and name things more properly
ff7c3e7cb MacOS:  Remove runtime version check and use deployment target version instead
800060ddb Portal: Fix typo in error messages
aa1debf5e README: Add dark mode images
b0e3db8b1 README: Mention the wiki
2f5732c12 GitHub CI: Fix Linux artefact naming
31f8a5c80 CI: Add stricter C compiler flags
6aba31f38 Circle CI: Initial config
70c11d4d0 MacOS: Use allowedContentTypes on >=12.0 instead of allowedFileTypes

git-subtree-dir: deps/nfde
git-subtree-split: 5786fabceeaee4d892f3c7a16b243796244cdddc
2024-05-31 19:29:33 -05:00

54 lines
1.6 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(nativefiledialog-extended VERSION 1.1.1)
set(nfd_ROOT_PROJECT OFF)
if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
set(nfd_ROOT_PROJECT ON)
endif ()
option(BUILD_SHARED_LIBS "Build a shared library instead of static" OFF)
option(NFD_BUILD_TESTS "Build tests for nfd" ${nfd_ROOT_PROJECT})
option(NFD_INSTALL "Generate install target for nfd" ${nfd_ROOT_PROJECT})
set(nfd_PLATFORM Undefined)
if(WIN32)
set(nfd_PLATFORM PLATFORM_WIN32)
elseif(APPLE)
set(nfd_PLATFORM PLATFORM_MACOS)
elseif(UNIX AND NOT APPLE)
set(nfd_PLATFORM PLATFORM_LINUX)
endif()
message("nfd Platform: ${nfd_PLATFORM}")
set(nfd_COMPILER Undefined)
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
# This is clang-cl, which has different compiler options
set(nfd_COMPILER COMPILER_CLANGCL)
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
set(nfd_COMPILER COMPILER_MSVC)
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
set(nfd_COMPILER COMPILER_GNU)
endif()
message("nfd Compiler: ${nfd_COMPILER}")
# Use latest C++ by default (should be the best one), but let user override it
if(NOT DEFINED CMAKE_CXX_STANDARD)
if(CMAKE_VERSION VERSION_LESS "3.8")
set (CMAKE_CXX_STANDARD 14)
elseif(CMAKE_VERSION VERSION_LESS "3.12")
set (CMAKE_CXX_STANDARD 17)
elseif(CMAKE_VERSION VERSION_LESS "3.20")
set (CMAKE_CXX_STANDARD 20)
else()
set (CMAKE_CXX_STANDARD 23)
endif()
endif()
add_subdirectory(src)
if(${NFD_BUILD_TESTS})
add_subdirectory(test)
endif()