blob: 98c611d49f91e9e7a21322c2ee57109ed46f2ad6 [file] [log] [blame]
Chia-I Wu44b92552015-01-10 23:16:41 +08001find_package(XCB REQUIRED)
2
Courtney Goeltzenleuchter4825f6a2014-10-28 10:27:47 -06003if(NOT EXISTS /usr/include/glm/glm.hpp)
4 message(FATAL_ERROR "Necessary libglm-dev headers cannot be found: sudo apt-get install libglm-dev")
5endif()
Courtney Goeltzenleuchter17223602014-10-29 15:59:49 -06006if(NOT EXISTS /usr/include/png.h)
Mike Stroyana768fc12014-10-30 15:59:54 -06007 message(FATAL_ERROR "Necessary png12-dev headers cannot be found: sudo apt-get install libpng12-dev")
Courtney Goeltzenleuchter17223602014-10-29 15:59:49 -06008endif()
Courtney Goeltzenleuchter4825f6a2014-10-28 10:27:47 -06009
Courtney Goeltzenleuchterd72c6192014-10-29 16:25:34 -060010file(GLOB TEXTURES
11 "${PROJECT_SOURCE_DIR}/demos/*.png"
12 )
13file(COPY ${TEXTURES} DESTINATION ${CMAKE_BINARY_DIR}/demos)
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060014
Mark Lobodzinski953a1692015-01-09 15:12:03 -060015set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DXGL_PROTOTYPES")
16
Courtney Goeltzenleuchter7e334982014-10-30 15:14:16 -060017add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.bil
18 COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -b ${PROJECT_SOURCE_DIR}/demos/cube.vert
19 COMMAND mv vert.bil ${CMAKE_BINARY_DIR}/demos/cube-vert.bil
20 DEPENDS cube.vert ${GLSLANG_PREFIX}/build/install/bin/glslangValidator
21 )
22
23add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.bil
24 COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -b ${PROJECT_SOURCE_DIR}/demos/cube.frag
25 COMMAND mv frag.bil ${CMAKE_BINARY_DIR}/demos/cube-frag.bil
26 DEPENDS cube.frag ${GLSLANG_PREFIX}/build/install/bin/glslangValidator
27 )
28
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060029include_directories (
30 ${XCB_INCLUDE_DIRS}
31 "${PROJECT_SOURCE_DIR}/icd/common"
32 )
33
Courtney Goeltzenleuchter17223602014-10-29 15:59:49 -060034link_libraries(${XCB_LIBRARIES} XGL png m)
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060035
Chia-I Wua4933f12014-12-02 22:08:35 +080036add_executable(xglinfo xglinfo.c)
37
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060038add_executable(tri tri.c)
39target_link_libraries(tri)
Courtney Goeltzenleuchter4e8246e2014-10-23 13:16:59 -060040
Courtney Goeltzenleuchter7e334982014-10-30 15:14:16 -060041add_executable(cube cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.bil ${CMAKE_BINARY_DIR}/demos/cube-frag.bil)
Courtney Goeltzenleuchter4e8246e2014-10-23 13:16:59 -060042target_link_libraries(cube)