[CMAKE]
[reactos.git] / dll / win32 / ole32 / CMakeLists.txt
1 list(APPEND SOURCE
2 antimoniker.c
3 bindctx.c
4 classmoniker.c
5 clipboard.c
6 comcat.c
7 compobj.c
8 compositemoniker.c
9 datacache.c
10 defaulthandler.c
11 dictionary.c
12 enumx.c
13 errorinfo.c
14 filelockbytes.c
15 filemoniker.c
16 ftmarshal.c
17 git.c
18 hglobalstream.c
19 ifs.c
20 itemmoniker.c
21 marshal.c
22 memlockbytes.c
23 moniker.c
24 ole2.c
25 ole2stubs.c
26 ole2impl.c
27 ole32_main.c
28 oleobj.c
29 oleproxy.c
30 pointermoniker.c
31 regsvr.c
32 rpc.c
33 stg_prop.c
34 stg_stream.c
35 storage32.c
36 stubmanager.c
37 usrmarshal.c
38 ole32res.rc)
39
40 remove_definitions(-D_WIN32_WINNT=0x502)
41 add_definitions(-D_WIN32_WINNT=0x600)
42 add_definitions(-D__WINESRC__)
43 add_definitions(-D_OLE32_)
44 add_definitions(-DENTRY_PREFIX=OLE32_)
45 add_definitions(-DPROXY_CLSID=CLSID_PSFactoryBuffer)
46 add_definitions(-DREGISTER_PROXY_DLL)
47 add_definitions(-DCOM_NO_WINDOWS_H)
48
49 include_directories(${CMAKE_CURRENT_BINARY_DIR})
50 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
51
52 ADD_INTERFACE_DEFINITIONS(ole32idl dcom.idl irot.idl)
53 rpcproxy(ole32
54 dcom.idl
55 ole32_unknwn.idl
56 ole32_objidl.idl
57 ole32_oleidl.idl)
58
59 spec2def(ole32 ${CMAKE_CURRENT_SOURCE_DIR}/ole32.spec ${CMAKE_CURRENT_BINARY_DIR}/ole32.def)
60
61 add_library(ole32 SHARED ${SOURCE})
62
63 set_module_type(ole32 win32dll)
64
65 target_link_libraries(ole32
66 ${CMAKE_CURRENT_BINARY_DIR}/ole32.def
67 wine
68 irot_client
69 ole32_proxy
70 uuid
71 pseh)
72
73 add_importlibs(ole32 advapi32 user32 gdi32 rpcrt4 msvcrt kernel32 ntdll)
74
75 add_dependencies(ole32 ole32_def ole32idl)
76 add_cab_target(ole32 1)