Skip to content
Snippets Groups Projects
Commit c4c0b6fb authored by Rashad Kanavath's avatar Rashad Kanavath
Browse files

MSVC: superbuilding freeglut for Ice viewer

parent a30f3ac4
No related branches found
No related tags found
No related merge requests found
......@@ -3,7 +3,7 @@ include(External_glew)
if(BUILD_ICE_APPLICATION)
include(External_glfw)
#TODO.. include(External_glut)
include(External_glut)
endif()
message(STATUS "Setup Ice...")
......
message(STATUS "Setup glut...")
set(proj GLUT)
set(DEFAULT_USE_SYSTEM_GLUT ON)
option(USE_SYSTEM_GLUT " Use system installed GLUT." ${DEFAULT_USE_SYSTEM_GLUT})
mark_as_advanced(USE_SYSTEM_GLUT)
if(USE_SYSTEM_GLUT)
message(STATUS " Using glut system version")
else()
set(${proj}_DEPENDENCIES)
set(GLUT_SB_BUILD_DIR ${CMAKE_BINARY_DIR}/${proj}/build)
set(GLUT_SB_SRC ${CMAKE_BINARY_DIR}/${proj}/src/${proj})
ExternalProject_Add(${proj}
PREFIX ${proj}
URL "http://heanet.dl.sourceforge.net/project/freeglut/freeglut/2.8.1/freeglut-2.8.1.tar.gz"
URL_MD5 918ffbddcffbac83c218bc52355b6d5a
BINARY_DIR ${GLUT_SB_BUILD_DIR}
INSTALL_DIR ${CMAKE_INSTALL_PREFIX}
PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/patches/${proj}/CMakeLists.txt ${GLUT_SB_SRC}
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=Release
-DBUILD_SHARED_LIBS:BOOL=ON
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_INSTALL_PREFIX}
)
message(STATUS " Using glut SuperBuild version")
endif()
cmake_minimum_required(VERSION 2.8.3)
project(freeglut)
set(FREEGLUT_INC_DIR ${CMAKE_SOURCE_DIR}/include)
set(FREEGLUT_SRC_DIR ${CMAKE_SOURCE_DIR}/src)
option(BUILD_SHARED_LIBS "Building shared libs. Default is ON" ON)
if(BUILD_SHARED_LIBS)
add_definitions(-DFREEGLUT_EXPORTS)
else()
add_definitions(-DFREEGLUT_STATIC)
endif()
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
set(FREEGLUT_SRCS ${FREEGLUT_SRC_DIR}/freeglut_callbacks.c
${FREEGLUT_SRC_DIR}/freeglut_cursor.c
${FREEGLUT_SRC_DIR}/freeglut_display.c
${FREEGLUT_SRC_DIR}/freeglut_ext.c
${FREEGLUT_SRC_DIR}/freeglut_font.c
${FREEGLUT_SRC_DIR}/freeglut_font_data.c
${FREEGLUT_SRC_DIR}/freeglut_gamemode.c
${FREEGLUT_SRC_DIR}/freeglut_geometry.c
${FREEGLUT_SRC_DIR}/freeglut_glutfont_definitions.c
${FREEGLUT_SRC_DIR}/freeglut_init.c
${FREEGLUT_SRC_DIR}/freeglut_input_devices.c
${FREEGLUT_SRC_DIR}/freeglut_joystick.c
${FREEGLUT_SRC_DIR}/freeglut_main.c
${FREEGLUT_SRC_DIR}/freeglut_menu.c
${FREEGLUT_SRC_DIR}/freeglut_misc.c
${FREEGLUT_SRC_DIR}/freeglut_overlay.c
${FREEGLUT_SRC_DIR}/freeglut_spaceball.c
${FREEGLUT_SRC_DIR}/freeglut_state.c
${FREEGLUT_SRC_DIR}/freeglut_stroke_mono_roman.c
${FREEGLUT_SRC_DIR}/freeglut_stroke_roman.c
${FREEGLUT_SRC_DIR}/freeglut_structure.c
${FREEGLUT_SRC_DIR}/freeglut_teapot.c
${FREEGLUT_SRC_DIR}/freeglut_videoresize.c
${FREEGLUT_SRC_DIR}/freeglut_window.c)
set(FREEGLUT_INCLUDES
${FREEGLUT_INC_DIR}/GL/glut.h
${FREEGLUT_INC_DIR}/GL/freeglut.h
${FREEGLUT_INC_DIR}/GL/freeglut_ext.h
${FREEGLUT_INC_DIR}/GL/freeglut_std.h
)
include_directories(${FREEGLUT_INC_DIR})
add_library(freeglut ${FREEGLUT_SRCS})
install(TARGETS freeglut
RUNTIME DESTINATION bin COMPONENT RuntimeLibraries
LIBRARY DESTINATION lib COMPONENT RuntimeLibraries
ARCHIVE DESTINATION lib COMPONENT Development)
install(FILES ${FREEGLUT_INCLUDES}
DESTINATION include/GL/
COMPONENT Development)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment