Skip to content

Commit aebadb1

Browse files
committed
Clean up CMakeLists.txt for gui-osg
1 parent e18ea4b commit aebadb1

File tree

3 files changed

+32
-37
lines changed

3 files changed

+32
-37
lines changed

cmake/DARTFindOpenSceneGraph.cmake

+12-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,18 @@
66
#
77
# This file is provided under the "BSD-style" License
88

9-
find_package(OpenSceneGraph 3.6.5 QUIET
9+
set(min_osg_version 3.0.0)
10+
# OpenSceneGraph 3.6.5 or less are not compatible with macOS 10.15 (Catalina) or greater
11+
# See:
12+
# - https://github.com/openscenegraph/OpenSceneGraph/issues/926
13+
# - https://github.com/dartsim/dart/issues/1439
14+
if(APPLE)
15+
if(NOT ${CMAKE_SYSTEM_VERSION} VERSION_LESS 19)
16+
set(min_osg_version 3.7.0)
17+
endif()
18+
endif()
19+
20+
find_package(OpenSceneGraph ${min_osg_version} QUIET
1021
COMPONENTS osg osgViewer osgManipulator osgGA osgDB osgShadow osgUtil
1122
)
1223

dart/gui/CMakeLists.txt

+1-2
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,7 @@ add_component_dependencies(
6262
utils
6363
external-lodepng
6464
)
65-
add_component_dependency_packages(${PROJECT_NAME} ${component_name} OpenGL)
66-
add_component_dependency_packages(${PROJECT_NAME} ${component_name} GLUT)
65+
add_component_dependency_packages(${PROJECT_NAME} ${component_name} OpenGL GLUT)
6766

6867
# Add subdirectories
6968
add_subdirectory(osg)

dart/gui/osg/CMakeLists.txt

+19-34
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,32 @@
1+
if(NOT DART_BUILD_GUI_OSG)
2+
message(STATUS "Skipping OpenSceneGraph (DART_BUILD_GUI_OSG == ${DART_BUILD_GUI_OSG})")
3+
return()
4+
endif()
5+
16
# Set local target name
27
set(target_name ${PROJECT_NAME}-gui-osg)
38
set(component_name gui-osg)
9+
set(component_dependencies )
10+
set(component_dependency_packages )
11+
set(link_libraries )
412

513
# Dependency checks
614
dart_check_dependent_target(${target_name} dart-gui)
715

8-
# Minimum required OSG version
9-
set(min_osg_version 3.0.0)
10-
# OpenSceneGraph 3.6.5 or less are not compatible with macOS 10.15 (Catalina) or greater
11-
# See:
12-
# - https://github.com/openscenegraph/OpenSceneGraph/issues/926
13-
# - https://github.com/dartsim/dart/issues/1439
14-
if(APPLE)
15-
if(NOT ${CMAKE_SYSTEM_VERSION} VERSION_LESS 19)
16-
set(min_osg_version 3.7.0)
17-
endif()
18-
endif()
19-
20-
set(component_dependency_packages )
21-
2216
# OpenSceneGraph
23-
if(DART_BUILD_GUI_OSG)
24-
dart_find_package(OpenSceneGraph)
25-
dart_check_required_package(OpenSceneGraph "dart-gui-osg" "OpenSceneGraph" "3.0")
26-
list(APPEND component_dependency_packages OpenSceneGraph)
17+
dart_find_package(OpenSceneGraph)
18+
dart_check_required_package(OpenSceneGraph "dart-gui-osg" "OpenSceneGraph")
19+
list(APPEND component_dependency_packages OpenSceneGraph)
2720

28-
# ImGui
29-
if(DART_USE_SYSTEM_IMGUI)
30-
dart_find_package(imgui)
31-
dart_check_required_package(imgui "imgui")
32-
list(APPEND component_dependency_packages imgui)
33-
endif()
21+
# ImGui
22+
if(DART_USE_SYSTEM_IMGUI)
23+
dart_find_package(imgui)
24+
dart_check_required_package(imgui "imgui")
25+
list(APPEND component_dependency_packages imgui)
26+
list(APPEND link_libraries imgui::imgui)
3427
else()
35-
message(STATUS "Skipping OpenSceneGraph (DART_BUILD_GUI_OSG == ${DART_BUILD_GUI_OSG})")
36-
return()
28+
list(APPEND component_dependencies external-imgui)
29+
list(APPEND link_libraries ${PROJECT_NAME}-external-imgui)
3730
endif()
3831

3932
# Search all header and source files
@@ -48,18 +41,10 @@ set(dart_gui_osg_srcs ${srcs} ${detail_srcs})
4841
add_subdirectory(render)
4942

5043
# Add target
51-
if(DART_USE_SYSTEM_IMGUI)
52-
set(link_libraries imgui::imgui)
53-
else()
54-
set(link_libraries ${PROJECT_NAME}-external-imgui)
55-
endif()
5644
dart_add_library(${target_name} ${hdrs} ${srcs} ${dart_gui_osg_hdrs} ${dart_gui_osg_srcs})
5745
target_link_libraries(${target_name} dart-gui osg::osg ${link_libraries})
5846

5947
# Component
60-
if(NOT DART_USE_SYSTEM_IMGUI)
61-
set(component_dependencies external-imgui)
62-
endif()
6348
add_component(${PROJECT_NAME} ${component_name})
6449
add_component_targets(${PROJECT_NAME} ${component_name} ${target_name})
6550
add_component_dependencies(${PROJECT_NAME} ${component_name} gui ${component_dependencies})

0 commit comments

Comments
 (0)