1
2add_definitions(
3    -D__WINESRC__
4    -D__ROS_LONG64__
5    -DDIRECT3D_VERSION=0x0900)
6
7include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine)
8spec2def(d3dcompiler_43.dll d3dcompiler_43.spec ADD_IMPORTLIB)
9
10list(APPEND SOURCE
11    asmparser.c
12    blob.c
13    bytecodewriter.c
14    compiler.c
15    main.c
16    preproc.c
17    reflection.c
18    utils.c)
19
20FLEX_TARGET(asmshader_scanner asmshader.l ${CMAKE_CURRENT_BINARY_DIR}/asmshader.yy.c)
21BISON_TARGET(asmshader_parser asmshader.y ${CMAKE_CURRENT_BINARY_DIR}/asmshader.tab.c COMPILE_FLAGS "-p asmshader_")
22ADD_FLEX_BISON_DEPENDENCY(asmshader_scanner asmshader_parser)
23
24FLEX_TARGET(hlsl_scanner hlsl.l ${CMAKE_CURRENT_BINARY_DIR}/hlsl.yy.c)
25BISON_TARGET(hlsl_parser hlsl.y ${CMAKE_CURRENT_BINARY_DIR}/hlsl.tab.c COMPILE_FLAGS "-p hlsl_")
26ADD_FLEX_BISON_DEPENDENCY(hlsl_scanner hlsl_parser)
27
28FLEX_TARGET(pp_scanner ppl.l ${CMAKE_CURRENT_BINARY_DIR}/ppl.yy.c)
29BISON_TARGET(pp_parser ppy.y ${CMAKE_CURRENT_BINARY_DIR}/ppy.tab.c COMPILE_FLAGS "-p ppy_")
30ADD_FLEX_BISON_DEPENDENCY(pp_scanner pp_parser)
31
32list(APPEND PCH_SKIP_SOURCE
33    ${FLEX_asmshader_scanner_OUTPUTS}
34    ${BISON_asmshader_parser_OUTPUTS}
35    ${FLEX_hlsl_scanner_OUTPUTS}
36    ${BISON_hlsl_parser_OUTPUTS}
37    ${FLEX_pp_scanner_OUTPUTS}
38    ${BISON_pp_parser_OUTPUTS})
39
40add_library(d3dcompiler_43 MODULE
41    ${SOURCE}
42    ${PCH_SKIP_SOURCE}
43    version.rc
44    ${CMAKE_CURRENT_BINARY_DIR}/d3dcompiler_43_stubs.c
45    ${CMAKE_CURRENT_BINARY_DIR}/d3dcompiler_43.def)
46
47set_module_type(d3dcompiler_43 win32dll)
48target_link_libraries(d3dcompiler_43 dx10guid uuid wine wpp)
49add_importlibs(d3dcompiler_43 msvcrt kernel32 ntdll)
50add_dependencies(d3dcompiler_43 d3d_idl_headers)
51add_pch(d3dcompiler_43 precomp.h "${PCH_SKIP_SOURCE}")
52add_cd_file(TARGET d3dcompiler_43 DESTINATION reactos/system32 FOR all)
53