[CLT2012]
[reactos.git] / dll / win32 / msxml3 / CMakeLists.txt
1
2 remove_definitions(-D_WIN32_WINNT=0x502)
3 add_definitions(-D_WIN32_WINNT=0x601)
4
5 add_definitions(
6 -D__WINESRC__
7 -D_WINE
8 -DLIBXML_STATIC)
9
10 if(MSVC)
11 add_compile_flags("/FIwine/typeof.h /FImsvc.h")
12 endif(MSVC)
13
14 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
15
16 set_rc_compiler()
17
18 spec2def(msxml3.dll msxml3.spec)
19
20 add_typelib(msxml3_v1.idl)
21
22 list(APPEND SOURCE
23 attribute.c
24 comment.c
25 domdoc.c
26 element.c
27 factory.c
28 main.c
29 httprequest.c
30 node.c
31 nodelist.c
32 nodemap.c
33 parseerror.c
34 pi.c
35 queryresult.c
36 regsvr.c
37 schema.c
38 text.c
39 uuid.c
40 xmldoc.c
41 xmlelem.c
42 saxreader.c
43 bsc.c
44 cdata.c
45 dispex.c
46 docfrag.c
47 domimpl.c
48 entityref.c
49 version.rc
50 ${CMAKE_CURRENT_BINARY_DIR}/msxml3_stubs.c
51 ${CMAKE_CURRENT_BINARY_DIR}/msxml3.def)
52
53 if(MSVC)
54 list(APPEND SOURCE msvc_uuid.c)
55 endif()
56
57 add_library(msxml3 SHARED ${SOURCE})
58
59 set_module_type(msxml3 win32dll)
60
61 set_source_files_properties(version.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/msxml3_v1.tlb)
62
63 target_link_libraries(msxml3
64 libxml2
65 uuid
66 wine
67 wineldr)
68
69 if(MSVC)
70 target_link_libraries(msxml3 xml_uuids)
71 endif()
72
73 add_importlibs(msxml3
74 msvcrt
75 urlmon
76 wininet
77 ws2_32
78 comctl32
79 shell32
80 shlwapi
81 cabinet
82 oleaut32
83 ole32
84 version
85 user32
86 gdi32
87 advapi32
88 kernel32
89 ntdll)
90
91 # msxml3_v1.tlb needs stdole2.tlb
92 add_dependencies(msxml3 stdole2)
93
94 add_cd_file(TARGET msxml3 DESTINATION reactos/system32 FOR all)