Courtney Goeltzenleuchter | e06e72d | 2014-08-01 12:44:23 -0600 | [diff] [blame] | 1 | # Create the i965 XGL DRI library |
Cody Northrop | 0eb5eea | 2014-09-19 15:11:52 -0600 | [diff] [blame] | 2 | |
Chia-I Wu | 464207a | 2015-01-11 00:08:21 +0800 | [diff] [blame] | 3 | add_subdirectory(compiler) |
Cody Northrop | e8455b1 | 2014-09-17 16:18:12 -0600 | [diff] [blame] | 4 | |
Mark Lobodzinski | 953a169 | 2015-01-09 15:12:03 -0600 | [diff] [blame] | 5 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DXGL_PROTOTYPES") |
6 | |||||
Chia-I Wu | 22670d7 | 2015-01-10 23:59:54 +0800 | [diff] [blame] | 7 | find_package(DRM REQUIRED COMPONENTS libdrm libdrm_intel) |
Chia-I Wu | ddbc8e2 | 2014-09-18 17:05:09 +0800 | [diff] [blame] | 8 | |
Chia-I Wu | f77c290 | 2015-01-04 00:34:44 +0800 | [diff] [blame] | 9 | add_custom_command(OUTPUT intel_gpa.c |
10 | COMMAND ${PROJECT_SOURCE_DIR}/xgl-generate.py icd-get-proc-addr > intel_gpa.c | ||||
11 | DEPENDS ${PROJECT_SOURCE_DIR}/xgl-generate.py ${PROJECT_SOURCE_DIR}/xgl.py) | ||||
12 | |||||
Chia-I Wu | 464207a | 2015-01-11 00:08:21 +0800 | [diff] [blame] | 13 | set(sources |
Chia-I Wu | 0914213 | 2014-08-11 15:42:55 +0800 | [diff] [blame] | 14 | cmd.c |
Chia-I Wu | 00b51a8 | 2014-09-09 12:07:37 +0800 | [diff] [blame] | 15 | cmd_decode.c |
Chia-I Wu | c14d156 | 2014-10-17 09:49:22 +0800 | [diff] [blame] | 16 | cmd_meta.c |
Chia-I Wu | 31ecdc7 | 2014-08-31 12:58:56 +0800 | [diff] [blame] | 17 | cmd_mi.c |
Chia-I Wu | 525c660 | 2014-08-27 10:22:34 +0800 | [diff] [blame] | 18 | cmd_prepare.c |
Chia-I Wu | b275556 | 2014-08-20 13:38:52 +0800 | [diff] [blame] | 19 | cmd_pipeline.c |
Chia-I Wu | e54854a | 2014-08-05 10:23:50 +0800 | [diff] [blame] | 20 | dev.c |
Chia-I Wu | 75577d9 | 2014-08-11 10:54:33 +0800 | [diff] [blame] | 21 | dset.c |
Chia-I Wu | 41be94b | 2014-08-19 14:46:02 +0800 | [diff] [blame] | 22 | intel.c |
Chia-I Wu | f77c290 | 2015-01-04 00:34:44 +0800 | [diff] [blame] | 23 | intel_gpa.c |
Chia-I Wu | 9737a10 | 2014-08-07 07:59:51 +0800 | [diff] [blame] | 24 | event.c |
Chia-I Wu | bdf4c56 | 2014-08-07 06:36:33 +0800 | [diff] [blame] | 25 | fence.c |
Chia-I Wu | ac6ba13 | 2014-08-07 14:21:43 +0800 | [diff] [blame] | 26 | format.c |
Chia-I Wu | 214dac6 | 2014-08-05 11:07:40 +0800 | [diff] [blame] | 27 | gpu.c |
Chia-I Wu | feb441f | 2014-08-08 21:27:38 +0800 | [diff] [blame] | 28 | img.c |
Chia-I Wu | 8a8d8b6 | 2014-08-14 13:26:26 +0800 | [diff] [blame] | 29 | layout.c |
Chia-I Wu | f9911eb | 2014-08-06 13:50:31 +0800 | [diff] [blame] | 30 | mem.c |
Chia-I Wu | 82f50aa | 2014-08-05 10:43:03 +0800 | [diff] [blame] | 31 | obj.c |
Courtney Goeltzenleuchter | 05a6054 | 2014-08-15 14:54:34 -0600 | [diff] [blame] | 32 | pipeline.c |
Chia-I Wu | e18ff1b | 2014-08-07 13:38:51 +0800 | [diff] [blame] | 33 | query.c |
Chia-I Wu | e09b536 | 2014-08-07 09:25:14 +0800 | [diff] [blame] | 34 | queue.c |
Chia-I Wu | 28b8996 | 2014-08-18 14:40:49 +0800 | [diff] [blame] | 35 | sampler.c |
Courtney Goeltzenleuchter | 52ec336 | 2014-08-19 11:52:02 -0600 | [diff] [blame] | 36 | shader.c |
Chia-I Wu | a5714e8 | 2014-08-11 15:33:42 +0800 | [diff] [blame] | 37 | state.c |
Chia-I Wu | 5a32326 | 2014-08-11 10:31:53 +0800 | [diff] [blame] | 38 | view.c |
Chia-I Wu | 770b309 | 2014-08-05 14:22:03 +0800 | [diff] [blame] | 39 | kmd/winsys_drm.c |
Courtney Goeltzenleuchter | cec7295 | 2014-08-01 18:06:40 -0600 | [diff] [blame] | 40 | ) |
41 | |||||
Chia-I Wu | 464207a | 2015-01-11 00:08:21 +0800 | [diff] [blame] | 42 | set(definitions "") |
43 | set(include_dirs ${DRM_INCLUDE_DIRS}) | ||||
Chia-I Wu | 44b9255 | 2015-01-10 23:16:41 +0800 | [diff] [blame] | 44 | |
Chia-I Wu | 464207a | 2015-01-11 00:08:21 +0800 | [diff] [blame] | 45 | set(libraries |
46 | ${DRM_LIBRARIES} | ||||
47 | m | ||||
48 | icd | ||||
49 | intelcompiler) | ||||
50 | |||||
51 | find_package(XCB COMPONENTS xcb xcb-dri3 xcb-present) | ||||
52 | if(XCB_FOUND) | ||||
53 | list(APPEND definitions -DENABLE_WSI_X11) | ||||
54 | list(APPEND include_dirs ${XCB_INCLUDE_DIRS}) | ||||
55 | list(APPEND libraries ${XCB_LIBRARIES}) | ||||
56 | list(APPEND sources wsi_x11.c) | ||||
Chia-I Wu | 1db76e0 | 2014-09-15 14:21:14 +0800 | [diff] [blame] | 57 | endif() |
58 | |||||
Chia-I Wu | 464207a | 2015-01-11 00:08:21 +0800 | [diff] [blame] | 59 | add_library(XGL_i965 SHARED ${sources}) |
60 | target_compile_definitions(XGL_i965 PRIVATE ${definitions}) | ||||
61 | target_include_directories(XGL_i965 PRIVATE ${include_dirs}) | ||||
62 | target_link_libraries(XGL_i965 ${libraries}) | ||||
Cody Northrop | e8455b1 | 2014-09-17 16:18:12 -0600 | [diff] [blame] | 63 | |
GregF | a2ff5b3 | 2015-01-20 11:51:00 -0700 | [diff] [blame] | 64 | # set -Bsymbolic for xglGetProcAddr() |
Chia-I Wu | 9617727 | 2015-01-03 15:27:41 +0800 | [diff] [blame] | 65 | set_target_properties(XGL_i965 PROPERTIES |
Chia-I Wu | 507b40a | 2015-01-18 11:22:13 +0800 | [diff] [blame] | 66 | COMPILE_FLAGS "-Wmissing-declarations" |
Chia-I Wu | cbd8ddf | 2015-01-18 11:11:42 +0800 | [diff] [blame] | 67 | LINK_FLAGS "-Wl,-Bsymbolic -Wl,-no-undefined -Wl,--exclude-libs,ALL") |