blob: 582e8f2b4271c5c5e5e335a4a79b957c862b26cd [file] [log] [blame]
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -06001pkg_check_modules(XCB REQUIRED xcb)
2if (NOT XCB_FOUND)
3 message(FATAL_ERROR "xcb not found")
Chia-I Wuc19795a2014-09-13 11:12:55 +08004endif()
Courtney Goeltzenleuchter4825f6a2014-10-28 10:27:47 -06005if(NOT EXISTS /usr/include/glm/glm.hpp)
6 message(FATAL_ERROR "Necessary libglm-dev headers cannot be found: sudo apt-get install libglm-dev")
7endif()
Courtney Goeltzenleuchter17223602014-10-29 15:59:49 -06008if(NOT EXISTS /usr/include/png.h)
Mike Stroyana768fc12014-10-30 15:59:54 -06009 message(FATAL_ERROR "Necessary png12-dev headers cannot be found: sudo apt-get install libpng12-dev")
Courtney Goeltzenleuchter17223602014-10-29 15:59:49 -060010endif()
Courtney Goeltzenleuchter4825f6a2014-10-28 10:27:47 -060011
Courtney Goeltzenleuchterd72c6192014-10-29 16:25:34 -060012file(GLOB TEXTURES
13 "${PROJECT_SOURCE_DIR}/demos/*.png"
14 )
15file(COPY ${TEXTURES} DESTINATION ${CMAKE_BINARY_DIR}/demos)
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060016
Mark Lobodzinski953a1692015-01-09 15:12:03 -060017set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DXGL_PROTOTYPES")
18
Courtney Goeltzenleuchter7e334982014-10-30 15:14:16 -060019add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.bil
20 COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -b ${PROJECT_SOURCE_DIR}/demos/cube.vert
21 COMMAND mv vert.bil ${CMAKE_BINARY_DIR}/demos/cube-vert.bil
22 DEPENDS cube.vert ${GLSLANG_PREFIX}/build/install/bin/glslangValidator
23 )
24
25add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.bil
26 COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -b ${PROJECT_SOURCE_DIR}/demos/cube.frag
27 COMMAND mv frag.bil ${CMAKE_BINARY_DIR}/demos/cube-frag.bil
28 DEPENDS cube.frag ${GLSLANG_PREFIX}/build/install/bin/glslangValidator
29 )
30
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060031include_directories (
32 ${XCB_INCLUDE_DIRS}
33 "${PROJECT_SOURCE_DIR}/icd/common"
34 )
35
36link_directories(${XCB_LIBRARY_DIRS})
Courtney Goeltzenleuchter17223602014-10-29 15:59:49 -060037link_libraries(${XCB_LIBRARIES} XGL png m)
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060038
Chia-I Wua4933f12014-12-02 22:08:35 +080039add_executable(xglinfo xglinfo.c)
40
Courtney Goeltzenleuchter3f2606d2014-10-13 17:51:58 -060041add_executable(tri tri.c)
42target_link_libraries(tri)
Courtney Goeltzenleuchter4e8246e2014-10-23 13:16:59 -060043
Courtney Goeltzenleuchter7e334982014-10-30 15:14:16 -060044add_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 -060045target_link_libraries(cube)