CMakeLists.txt 1.44 KB
Newer Older
1 2 3
cmake_minimum_required(VERSION 3.0)
project(glow-extras)

4 5 6 7 8 9
if(MSVC)
    set(GLOW_EXTRAS_DEF_OPTIONS /MP)
else()
    set(GLOW_EXTRAS_DEF_OPTIONS -Wall -Werror -std=c++11)
endif()

10
# all glow-extras
11 12 13 14 15
add_library(glow-extras ${GLOW_LINK_TYPE} glow-extras.cc)

# Camera
add_subdirectory(camera)
target_link_libraries(glow-extras PUBLIC glow-extras-camera)
16 17 18 19 20 21 22 23

# Shader
add_subdirectory(shader)
target_link_libraries(glow-extras PUBLIC glow-extras-shader)

# Geometry
add_subdirectory(geometry)
target_link_libraries(glow-extras PUBLIC glow-extras-geometry)
24

25 26 27 28
# Rendering Pipeline
add_subdirectory(pipeline)
target_link_libraries(glow-extras PUBLIC glow-extras-pipeline)

Philip Trettner's avatar
Philip Trettner committed
29 30 31 32
# Material shading library
add_subdirectory(material)
target_link_libraries(glow-extras PUBLIC glow-extras-material)

33 34 35 36 37 38
# Timing
# requires 'aion'
if (TARGET aion)
    add_subdirectory(timing)
    target_link_libraries(glow-extras PUBLIC glow-extras-timing)
else()
39
    message(STATUS "target 'aion' not found, disabling glow-extras-timing")
40 41 42 43 44 45 46 47
endif()

# Assimp
# requires 'assimp'
if (TARGET assimp)
    add_subdirectory(assimp)
    target_link_libraries(glow-extras PUBLIC glow-extras-assimp)
else()
48
    message(STATUS "target 'assimp' not found, disabling glow-extras-assimp")
49
endif()
Philip Trettner's avatar
Philip Trettner committed
50 51 52 53 54 55 56 57 58

# GLFW App
# requires 'aion'
if (TARGET aion)
    add_subdirectory(glfw)
    target_link_libraries(glow-extras PUBLIC glow-extras-glfw)
else()
    message(STATUS "target 'aion' not found, disabling glow-extras-glfw")
endif()