You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.3 KiB
42 lines
1.3 KiB
if(TARGET glfw::glfw)
|
|
return()
|
|
endif()
|
|
|
|
message(STATUS "Third-party: creating target 'glfw::glfw'")
|
|
|
|
include(FetchContent)
|
|
FetchContent_Declare(
|
|
glfw
|
|
GIT_REPOSITORY https://github.com/glfw/glfw.git
|
|
GIT_TAG 3327050ca66ad34426a82c217c2d60ced61526b7
|
|
)
|
|
|
|
option(GLFW_BUILD_EXAMPLES "Build the GLFW example programs" OFF)
|
|
option(GLFW_BUILD_TESTS "Build the GLFW test programs" OFF)
|
|
option(GLFW_BUILD_DOCS "Build the GLFW documentation" OFF)
|
|
option(GLFW_INSTALL "Generate installation target" OFF)
|
|
option(GLFW_VULKAN_STATIC "Use the Vulkan loader statically linked into application" OFF)
|
|
FetchContent_MakeAvailable(glfw)
|
|
|
|
add_library(glfw::glfw ALIAS glfw)
|
|
|
|
set_target_properties(glfw PROPERTIES FOLDER ThirdParty)
|
|
|
|
# Warning config
|
|
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
|
|
target_compile_options(glfw PRIVATE
|
|
"-Wno-missing-field-initializers"
|
|
"-Wno-objc-multiple-method-names"
|
|
)
|
|
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
|
target_compile_options(glfw PRIVATE
|
|
"-Wno-missing-field-initializers"
|
|
"-Wno-objc-multiple-method-names"
|
|
)
|
|
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
|
target_compile_options(glfw PRIVATE
|
|
"-Wno-missing-field-initializers"
|
|
"-Wno-sign-compare"
|
|
"-Wno-unused-parameter"
|
|
)
|
|
endif()
|
|
|