212231a3a248e1506e0bfff054c5e6c9014ce472
[reactos.git] / dll / win32 / rpcrt4 / CMakeLists.txt
1
2 remove_definitions(-D_WIN32_WINNT=0x502)
3 add_definitions(-D_WIN32_WINNT=0x600)
4
5 add_definitions(
6 -D__WINESRC__
7 -D_RPCRT4_
8 -DCOM_NO_WINDOWS_H
9 -DMSWMSG)
10
11 include_directories(BEFORE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine)
12 spec2def(rpcrt4.dll rpcrt4.spec ADD_IMPORTLIB)
13
14 add_rpc_files(client epm.idl)
15 add_idl_headers(ndr_types_header ndr_types.idl)
16
17 set(IDL_FLAGS ${IDL_FLAGS} -Oicf)
18 add_rpcproxy_files(ndr_types.idl)
19 unset(IDL_FLAGS)
20
21 list(APPEND SOURCE
22 cproxy.c
23 cpsf.c
24 cstub.c
25 ndr_clientserver.c
26 ndr_contexthandle.c
27 ndr_es.c
28 ndr_fullpointer.c
29 ndr_marshall.c
30 ndr_ole.c
31 ndr_stubless.c
32 rpc_assoc.c
33 rpc_async.c
34 rpc_binding.c
35 rpc_epmap.c
36 rpc_message.c
37 rpcrt4_main.c
38 rpc_server.c
39 rpc_transport.c
40 unix_func.c
41 precomp.h
42 ${CMAKE_CURRENT_BINARY_DIR}/epm_c.c)
43
44 if(MSVC AND NOT ARCH STREQUAL "arm")
45 add_asm_files(rpcrt4_asm msvc.S)
46 endif()
47
48 add_library(rpcrt4 SHARED
49 ${SOURCE}
50 ndr_typelib.c
51 ${CMAKE_CURRENT_BINARY_DIR}/ndr_types_p.c
52 ${CMAKE_CURRENT_BINARY_DIR}/proxy.dlldata.c
53 ${rpcrt4_asm}
54 rpcrt4.rc
55 ${CMAKE_CURRENT_BINARY_DIR}/rpcrt4_stubs.c
56 ${CMAKE_CURRENT_BINARY_DIR}/rpcrt4.def)
57
58 set_module_type(rpcrt4 win32dll)
59 target_link_libraries(rpcrt4 wine uuid ${PSEH_LIB})
60 add_delay_importlibs(rpcrt4 iphlpapi wininet secur32 user32 oleaut32)
61 add_importlibs(rpcrt4 advapi32 advapi32_vista kernel32_vista ws2_32 msvcrt kernel32 ntdll)
62 add_dependencies(rpcrt4 ndr_types_header)
63 add_pch(rpcrt4 precomp.h SOURCE)
64 add_cd_file(TARGET rpcrt4 DESTINATION reactos/system32 FOR all)