imgui: fix required macOS frameworks

This commit is contained in:
Martin Valgur
2024-09-23 12:32:54 +03:00
parent 293df93c92
commit 989430c2c8
2 changed files with 14 additions and 4 deletions

View File

@@ -94,7 +94,11 @@ if(IMGUI_IMPL_METAL)
enable_language(OBJCXX)
add_library(imgui-metal backends/imgui_impl_metal.mm)
set_source_files_properties(backends/imgui_impl_metal.mm PROPERTIES COMPILE_FLAGS -fobjc-weak)
target_link_libraries(imgui-metal PRIVATE "-framework Metal" "-framework Cocoa" "-framework QuartzCore")
target_link_libraries(imgui-metal PRIVATE
"-framework Foundation"
"-framework Metal"
"-framework QuartzCore"
)
install(FILES backends/imgui_impl_metal.h DESTINATION include)
list(APPEND IMGUI_COMPONENTS imgui-metal)
endif()
@@ -119,7 +123,13 @@ endif()
if(IMGUI_IMPL_OSX)
enable_language(OBJCXX)
add_library(imgui-osx backends/imgui_impl_osx.mm)
target_link_libraries(imgui-osx INTERFACE "-framework Cocoa" "-framework AppKit")
target_link_libraries(imgui-osx PRIVATE
"-framework AppKit"
"-framework Carbon"
"-framework Cocoa"
"-framework Foundation"
"-framework GameController"
)
install(FILES backends/imgui_impl_osx.h DESTINATION include)
list(APPEND IMGUI_COMPONENTS imgui-osx)
endif()

View File

@@ -289,10 +289,10 @@ class ImguiConan(ConanFile):
_add_binding("dx12", system_libs=["d3d12"])
_add_binding("glfw", requires=["glfw::glfw"] if self.settings.os != "Emscripten" else [])
_add_binding("glut", requires=["freeglut::freeglut"] if self.settings.os != "Emscripten" else [])
_add_binding("metal", frameworks=["Metal", "Cocoa", "QuartzCore"])
_add_binding("metal", frameworks=["Foundation", "Metal", "QuartzCore"])
_add_binding("opengl2", requires=["opengl::opengl"])
_add_binding("opengl3", requires=["opengl::opengl"])
_add_binding("osx", frameworks=["Cocoa", "AppKit"])
_add_binding("osx", frameworks=["AppKit", "Carbon", "Cocoa", "Foundation", "GameController"])
_add_binding("sdl2", requires=["sdl::sdl"])
_add_binding("sdlrenderer2", requires=["sdl::sdl"])
# _add_binding("sdlrenderer3", requires=["sdl::sdl"])