blob: 59118ba306a29d7156a1ba15805bfe961eea5789 [file] [log] [blame]
Courtney Goeltzenleuchtere06e72d2014-08-01 12:44:23 -06001# Create the i965 XGL DRI library
Cody Northrop0eb5eea2014-09-19 15:11:52 -06002
Courtney Goeltzenleuchter9cc421e2015-04-08 15:36:08 -06003set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DVK_PROTOTYPES -Wno-sign-compare")
Ian Elliott3fdadc82015-02-13 14:04:01 -07004set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-sign-compare")
Cody Northrope8455b12014-09-17 16:18:12 -06005
Chia-I Wu6fffb3f2015-02-25 12:45:34 +08006add_subdirectory(kmd)
Ian Elliott3fdadc82015-02-13 14:04:01 -07007add_subdirectory(compiler)
Mark Lobodzinski953a1692015-01-09 15:12:03 -06008
Chia-I Wu32e43ad2015-02-20 15:08:31 -07009add_custom_command(OUTPUT gpa.c
10 COMMAND ${PROJECT_SOURCE_DIR}/xgl-generate.py icd-get-proc-addr > gpa.c
Chia-I Wuf77c2902015-01-04 00:34:44 +080011 DEPENDS ${PROJECT_SOURCE_DIR}/xgl-generate.py ${PROJECT_SOURCE_DIR}/xgl.py)
12
Chia-I Wu464207a2015-01-11 00:08:21 +080013set(sources
Chia-I Wu714df452015-01-01 07:55:04 +080014 buf.c
Chia-I Wu09142132014-08-11 15:42:55 +080015 cmd.c
Chia-I Wu00b51a82014-09-09 12:07:37 +080016 cmd_decode.c
Chia-I Wuc14d1562014-10-17 09:49:22 +080017 cmd_meta.c
Chia-I Wu31ecdc72014-08-31 12:58:56 +080018 cmd_mi.c
Chia-I Wub0ca3a12015-02-18 15:54:05 -070019 cmd_barrier.c
Chia-I Wub2755562014-08-20 13:38:52 +080020 cmd_pipeline.c
Chia-I Wuf8385062015-01-04 16:27:24 +080021 desc.c
Chia-I Wue54854a2014-08-05 10:23:50 +080022 dev.c
Chia-I Wu856af0c2015-02-20 15:09:11 -070023 instance.c
Chia-I Wu9737a102014-08-07 07:59:51 +080024 event.c
Jon Ashburnc6f4a412014-12-24 12:38:36 -070025 fb.c
Chia-I Wubdf4c562014-08-07 06:36:33 +080026 fence.c
Chia-I Wuac6ba132014-08-07 14:21:43 +080027 format.c
Chia-I Wu32e43ad2015-02-20 15:08:31 -070028 gpa.c
Chia-I Wu214dac62014-08-05 11:07:40 +080029 gpu.c
Chia-I Wufeb441f2014-08-08 21:27:38 +080030 img.c
Chia-I Wu8a8d8b62014-08-14 13:26:26 +080031 layout.c
Chia-I Wuf9911eb2014-08-06 13:50:31 +080032 mem.c
Chia-I Wu82f50aa2014-08-05 10:43:03 +080033 obj.c
Courtney Goeltzenleuchter05a60542014-08-15 14:54:34 -060034 pipeline.c
Chia-I Wue18ff1b2014-08-07 13:38:51 +080035 query.c
Chia-I Wue09b5362014-08-07 09:25:14 +080036 queue.c
Chia-I Wu28b89962014-08-18 14:40:49 +080037 sampler.c
Courtney Goeltzenleuchter52ec3362014-08-19 11:52:02 -060038 shader.c
Chia-I Wua5714e82014-08-11 15:33:42 +080039 state.c
Chia-I Wu5a323262014-08-11 10:31:53 +080040 view.c
Courtney Goeltzenleuchtercec72952014-08-01 18:06:40 -060041 )
42
Chia-I Wu464207a2015-01-11 00:08:21 +080043set(definitions "")
Chia-I Wu6fffb3f2015-02-25 12:45:34 +080044set(include_dirs "")
Chia-I Wu44b92552015-01-10 23:16:41 +080045
Chia-I Wu464207a2015-01-11 00:08:21 +080046set(libraries
Chia-I Wu464207a2015-01-11 00:08:21 +080047 m
48 icd
Chia-I Wu6fffb3f2015-02-25 12:45:34 +080049 intelkmd
Chia-I Wu464207a2015-01-11 00:08:21 +080050 intelcompiler)
51
52find_package(XCB COMPONENTS xcb xcb-dri3 xcb-present)
53if(XCB_FOUND)
Chia-I Wu464207a2015-01-11 00:08:21 +080054 list(APPEND include_dirs ${XCB_INCLUDE_DIRS})
55 list(APPEND libraries ${XCB_LIBRARIES})
56 list(APPEND sources wsi_x11.c)
Chia-I Wu8635e912015-04-09 14:13:57 +080057
Courtney Goeltzenleuchter5f3f4f22015-04-13 14:29:13 -060058 set_source_files_properties(wsi_x11.c PROPERTIES COMPILE_FLAGS "-I${PROJECT_SOURCE_DIR}/icd/intel/kmd/libdrm/include/drm")
Chia-I Wu41858c82015-04-04 16:39:25 +080059else()
60 list(APPEND sources wsi_null.c)
Chia-I Wu1db76e02014-09-15 14:21:14 +080061endif()
62
Courtney Goeltzenleuchter9cc421e2015-04-08 15:36:08 -060063add_library(VK_i965 SHARED ${sources})
64target_compile_definitions(VK_i965 PRIVATE ${definitions})
65target_include_directories(VK_i965 PRIVATE ${include_dirs})
66target_link_libraries(VK_i965 ${libraries})
Cody Northrope8455b12014-09-17 16:18:12 -060067
GregFa2ff5b32015-01-20 11:51:00 -070068# set -Bsymbolic for xglGetProcAddr()
Courtney Goeltzenleuchter9cc421e2015-04-08 15:36:08 -060069set_target_properties(VK_i965 PROPERTIES
Chia-I Wu507b40a2015-01-18 11:22:13 +080070 COMPILE_FLAGS "-Wmissing-declarations"
Chia-I Wucbd8ddf2015-01-18 11:11:42 +080071 LINK_FLAGS "-Wl,-Bsymbolic -Wl,-no-undefined -Wl,--exclude-libs,ALL")