Files
Hoops_Exchange/exchange/exchangesource/Viewer/glut/CMakeLists.txt
2025-12-15 23:22:33 +08:00

28 lines
1.0 KiB
CMake

add_library(glut INTERFACE)
add_library(glut::glut ALIAS glut)
if(WIN32)
target_include_directories(glut INTERFACE include)
if (${CMAKE_SIZEOF_VOID_P} EQUAL 8)
target_link_libraries(glut INTERFACE glut64)
target_link_directories(glut INTERFACE ${CMAKE_CURRENT_LIST_DIR}/lib/)
else()
target_link_libraries(glut INTERFACE glut32)
target_link_directories(glut INTERFACE ${CMAKE_CURRENT_LIST_DIR}/lib/)
endif()
get_target_property(glut_lib glut INTERFACE_LINK_LIBRARIES)
add_custom_target( #copy the dll inside the bin dir to be able to launch the sample
copy_glut_shared
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIG>
COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_LIST_DIR}/dll/${glut_lib}.dll ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIG>
)
add_dependencies(glut copy_glut_shared)
else()
find_package(GLUT)
if(APPLE)
target_link_options(glut INTERFACE -L/System/Library/Frameworks -framework GLUT)
else()
target_link_libraries(glut INTERFACE GLUT::GLUT)
endif()
endif()