Merge branch 'shawnz_bug_fix_cuda_a' into 'cuda_a_dev'

Bug 5376426: Update README and CMakeLists.txt for freeglut and glew on WOA

See merge request cuda-samples/cuda-samples!120
This commit is contained in:
Rob Armstrong 2025-07-11 10:04:29 -07:00
commit eb8891b839
22 changed files with 178 additions and 43 deletions

View File

@ -390,11 +390,20 @@ OpenGL is a graphics library used for 2D and 3D rendering. On systems which supp
OpenGL ES is an embedded systems graphics library used for 2D and 3D rendering. On systems which support OpenGL ES, NVIDIA's OpenGL ES implementation is provided with the CUDA Driver. OpenGL ES is an embedded systems graphics library used for 2D and 3D rendering. On systems which support OpenGL ES, NVIDIA's OpenGL ES implementation is provided with the CUDA Driver.
#### Freeglut
Freeglut is an open-source software library that serves as a replacement for the original OpenGL Utility Toolkit (GLUT). Its primary purpose is to make it easier for developers to create and manage windows containing OpenGL contexts, as well as handle input from devices like the mouse, keyboard, and joystick, across a wide range of platforms. To set up Freeglut on a Windowson on ARM system, you need to download the source from [Freeglut website](https://freeglut.sourceforge.net/), build freeglut on your system, and copy the freeglut.lib into the folder `./Common/lib/x64` and copy the freeglut.dll file into the `./bin/win64/${BUILD_TYPE}` execution folder.
#### Vulkan #### Vulkan
Vulkan is a low-overhead, cross-platform 3D graphics and compute API. Vulkan targets high-performance realtime 3D graphics applications such as video games and interactive media across all platforms. On systems which support Vulkan, NVIDIA's Vulkan implementation is provided with the CUDA Driver. For building and running Vulkan applications one needs to install the [Vulkan SDK](https://www.lunarg.com/vulkan-sdk/). Vulkan is a low-overhead, cross-platform 3D graphics and compute API. Vulkan targets high-performance realtime 3D graphics applications such as video games and interactive media across all platforms. On systems which support Vulkan, NVIDIA's Vulkan implementation is provided with the CUDA Driver. For building and running Vulkan applications one needs to install the [Vulkan SDK](https://www.lunarg.com/vulkan-sdk/).
#### GLEW
GLEW (OpenGL Extension Wrangler Library) is a cross-platform, open-source C/C++ library designed to simplify the process of using modern OpenGL features and extensions. Its main function is to dynamically load OpenGL function pointers at runtime, allowing developers to access both core OpenGL functions and additional features provided by hardware vendors, known as extensions. To set up GLEW on a Windows on ARM system, you need to download the source from [GLEW website](https://glew.sourceforge.net/), build GLEW on your system, and copy the glew32.lib into the folder `./Common/lib/x64` and the glew32.dll into the `./bin/win64/${BUILD_TYPE}` execution folder.
#### GLFW #### GLFW
GLFW is a lightweight, open-source library designed for managing OpenGL, OpenGL ES, and Vulkan contexts. It simplifies the process of creating and managing windows, handling user input (keyboard, mouse, and joystick), and working with multiple monitors in a cross-platform manner. GLFW is a lightweight, open-source library designed for managing OpenGL, OpenGL ES, and Vulkan contexts. It simplifies the process of creating and managing windows, handling user input (keyboard, mouse, and joystick), and working with multiple monitors in a cross-platform manner.
To set up GLFW on a Windows system, Download the pre-built binaries from [GLFW website](https://www.glfw.org/download.html) and extract the zip file into the folder, pass the GLFW include header folder as `-DGLFW_INCLUDE_DIR` and lib folder as `-DGLFW_LIB_DIR` for cmake configuring. To set up GLFW on a Windows system, Download the pre-built binaries from [GLFW website](https://www.glfw.org/download.html) and extract the zip file into the folder, pass the GLFW include header folder as `-DGLFW_INCLUDE_DIR` and lib folder as `-DGLFW_LIB_DIR` for cmake configuring.

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
@ -56,7 +62,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(simpleCUDA2GL target_link_libraries(simpleCUDA2GL
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET simpleCUDA2GL add_custom_command(TARGET simpleCUDA2GL
@ -69,7 +75,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET simpleCUDA2GL add_custom_command(TARGET simpleCUDA2GL
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E COMMAND ${CMAKE_COMMAND} -E
copy ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll copy ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(simpleTexture3D target_link_libraries(simpleTexture3D
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET simpleTexture3D add_custom_command(TARGET simpleTexture3D
@ -73,7 +79,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET simpleTexture3D add_custom_command(TARGET simpleTexture3D
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(FunctionPointers target_link_libraries(FunctionPointers
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET FunctionPointers add_custom_command(TARGET FunctionPointers
@ -73,7 +79,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET FunctionPointers add_custom_command(TARGET FunctionPointers
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -74,7 +80,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(boxFilter target_link_libraries(boxFilter
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET boxFilter add_custom_command(TARGET boxFilter
@ -87,7 +93,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET boxFilter add_custom_command(TARGET boxFilter
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
@ -61,7 +67,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(imageDenoising target_link_libraries(imageDenoising
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET imageDenoising add_custom_command(TARGET imageDenoising
@ -74,7 +80,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET imageDenoising add_custom_command(TARGET imageDenoising
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ target_compile_features(particles PRIVATE cxx_std_17 cuda_std_17)
if(WIN32) if(WIN32)
target_link_libraries(particles target_link_libraries(particles
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET particles add_custom_command(TARGET particles
@ -73,7 +79,7 @@ target_compile_features(particles PRIVATE cxx_std_17 cuda_std_17)
add_custom_command(TARGET particles add_custom_command(TARGET particles
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ target_compile_features(bindlessTexture PRIVATE cxx_std_17 cuda_std_17)
if(WIN32) if(WIN32)
target_link_libraries(bindlessTexture target_link_libraries(bindlessTexture
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET bindlessTexture add_custom_command(TARGET bindlessTexture
@ -73,7 +79,7 @@ target_compile_features(bindlessTexture PRIVATE cxx_std_17 cuda_std_17)
add_custom_command(TARGET bindlessTexture add_custom_command(TARGET bindlessTexture
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
@ -62,7 +68,7 @@ target_compile_features(oceanFFT PRIVATE cxx_std_17 cuda_std_17)
if(WIN32) if(WIN32)
target_link_libraries(oceanFFT target_link_libraries(oceanFFT
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET oceanFFT add_custom_command(TARGET oceanFFT
@ -75,7 +81,7 @@ target_compile_features(oceanFFT PRIVATE cxx_std_17 cuda_std_17)
add_custom_command(TARGET oceanFFT add_custom_command(TARGET oceanFFT
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -62,7 +68,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(randomFog target_link_libraries(randomFog
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET randomFog add_custom_command(TARGET randomFog
@ -75,7 +81,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET randomFog add_custom_command(TARGET randomFog
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ target_compile_features(Mandelbrot PRIVATE cxx_std_17 cuda_std_17)
if(WIN32) if(WIN32)
target_link_libraries(Mandelbrot target_link_libraries(Mandelbrot
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET Mandelbrot add_custom_command(TARGET Mandelbrot
@ -73,7 +79,7 @@ target_compile_features(Mandelbrot PRIVATE cxx_std_17 cuda_std_17)
add_custom_command(TARGET Mandelbrot add_custom_command(TARGET Mandelbrot
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -59,7 +65,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(SobelFilter target_link_libraries(SobelFilter
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET SobelFilter add_custom_command(TARGET SobelFilter
@ -72,7 +78,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET SobelFilter add_custom_command(TARGET SobelFilter
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(bicubicTexture target_link_libraries(bicubicTexture
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET bicubicTexture add_custom_command(TARGET bicubicTexture
@ -73,7 +79,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET bicubicTexture add_custom_command(TARGET bicubicTexture
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -60,7 +66,7 @@ target_compile_features(bilateralFilter PRIVATE cxx_std_17 cuda_std_17)
if(WIN32) if(WIN32)
target_link_libraries(bilateralFilter target_link_libraries(bilateralFilter
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET bilateralFilter add_custom_command(TARGET bilateralFilter
@ -73,7 +79,7 @@ target_compile_features(bilateralFilter PRIVATE cxx_std_17 cuda_std_17)
add_custom_command(TARGET bilateralFilter add_custom_command(TARGET bilateralFilter
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -61,7 +67,7 @@ target_compile_features(fluidsGL PRIVATE cxx_std_17 cuda_std_17)
if(WIN32) if(WIN32)
target_link_libraries(fluidsGL target_link_libraries(fluidsGL
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET fluidsGL add_custom_command(TARGET fluidsGL
@ -74,7 +80,7 @@ target_compile_features(fluidsGL PRIVATE cxx_std_17 cuda_std_17)
add_custom_command(TARGET fluidsGL add_custom_command(TARGET fluidsGL
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -53,7 +59,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(nbody target_link_libraries(nbody
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET nbody add_custom_command(TARGET nbody
@ -66,7 +72,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET nbody add_custom_command(TARGET nbody
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -59,7 +65,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(postProcessGL target_link_libraries(postProcessGL
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET postProcessGL add_custom_command(TARGET postProcessGL
@ -72,7 +78,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET postProcessGL add_custom_command(TARGET postProcessGL
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -59,7 +65,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(recursiveGaussian target_link_libraries(recursiveGaussian
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET recursiveGaussian add_custom_command(TARGET recursiveGaussian
@ -72,7 +78,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET recursiveGaussian add_custom_command(TARGET recursiveGaussian
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -53,7 +59,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(simpleGL target_link_libraries(simpleGL
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET simpleGL add_custom_command(TARGET simpleGL
@ -66,7 +72,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET simpleGL add_custom_command(TARGET simpleGL
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E COMMAND ${CMAKE_COMMAND} -E
copy ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll copy ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -59,7 +65,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(smokeParticles target_link_libraries(smokeParticles
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET smokeParticles add_custom_command(TARGET smokeParticles
@ -72,7 +78,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET smokeParticles add_custom_command(TARGET smokeParticles
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -59,7 +65,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(volumeFiltering target_link_libraries(volumeFiltering
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET volumeFiltering add_custom_command(TARGET volumeFiltering
@ -72,7 +78,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET volumeFiltering add_custom_command(TARGET volumeFiltering
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION > ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION >
) )
endif() endif()

View File

@ -22,6 +22,12 @@ include_directories(../../../Common)
if(WIN32) if(WIN32)
set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common") set(PC_GLUT_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common")
set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64") set(PC_GLUT_LIBRARY_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/../../../Common/lib/x64")
# The GLEW library built on Windows on Arm system is named as glew32.lib/glew32.dll by default.
if(EXISTS "${PC_GLUT_LIBRARY_DIRS}/glew32.lib")
set(GLEW_LIB_NAME "glew32")
else()
set(GLEW_LIB_NAME "glew64")
endif()
endif() endif()
find_package(OpenGL) find_package(OpenGL)
@ -59,7 +65,7 @@ if(${OpenGL_FOUND})
if(WIN32) if(WIN32)
target_link_libraries(volumeRender target_link_libraries(volumeRender
${PC_GLUT_LIBRARY_DIRS}/freeglut.lib ${PC_GLUT_LIBRARY_DIRS}/freeglut.lib
${PC_GLUT_LIBRARY_DIRS}/glew64.lib ${PC_GLUT_LIBRARY_DIRS}/${GLEW_LIB_NAME}.lib
) )
add_custom_command(TARGET volumeRender add_custom_command(TARGET volumeRender
@ -72,7 +78,7 @@ if(${OpenGL_FOUND})
add_custom_command(TARGET volumeRender add_custom_command(TARGET volumeRender
POST_BUILD POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/glew64.dll ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/win64/$<CONFIGURATION>/${GLEW_LIB_NAME}.dll
${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>
) )
endif() endif()