[URLMON] Sync with Wine Staging 3.3. CORE-14434
[reactos.git] / dll / win32 / urlmon / CMakeLists.txt
1
2 add_definitions(
3 -D__WINESRC__
4 -D_URLMON_
5 -DENTRY_PREFIX=URLMON_
6 -DPROXY_DELEGATION
7 -DWINE_REGISTER_DLL
8 -DPROXY_CLSID_IS="{0x79EAC9F1,0xBAF9,0x11CE,{0x8C,0x82,0x00,0xAA,0x00,0x4B,0xA9,0x0B}}")
9
10 include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine)
11 spec2def(urlmon.dll urlmon.spec ADD_IMPORTLIB)
12 add_rpcproxy_files(urlmon_urlmon.idl)
13
14 set(_source_file ${CMAKE_CURRENT_SOURCE_DIR}/urlmon.inf)
15 set(_converted_file ${CMAKE_CURRENT_BINARY_DIR}/urlmon_utf16.inf)
16 add_custom_command(
17 OUTPUT "${_converted_file}"
18 COMMAND native-utf16le "${_source_file}" "${_converted_file}"
19 DEPENDS native-utf16le "${_source_file}")
20
21 set_source_files_properties(${_converted_file} PROPERTIES GENERATED TRUE)
22 set_source_files_properties(urlmon.rc PROPERTIES OBJECT_DEPENDS "${_converted_file}")
23
24 list(APPEND SOURCE
25 axinstall.c
26 bindctx.c
27 binding.c
28 bindprot.c
29 download.c
30 file.c
31 format.c
32 ftp.c
33 gopher.c
34 http.c
35 internet.c
36 mimefilter.c
37 mk.c
38 protocol.c
39 sec_mgr.c
40 session.c
41 umon.c
42 umstream.c
43 uri.c
44 urlmon_main.c
45 usrmarshal.c
46 precomp.h)
47
48 add_library(urlmon SHARED
49 ${SOURCE}
50 urlmon.rc
51 ${CMAKE_CURRENT_BINARY_DIR}/proxy.dlldata.c
52 ${CMAKE_CURRENT_BINARY_DIR}/urlmon_urlmon_p.c
53 ${CMAKE_CURRENT_BINARY_DIR}/urlmon_stubs.c
54 ${CMAKE_CURRENT_BINARY_DIR}/urlmon.def)
55
56 set_module_type(urlmon win32dll)
57 target_link_libraries(urlmon uuid wine ${PSEH_LIB})
58 add_importlibs(urlmon rpcrt4 propsys ole32 oleaut32 shlwapi shell32 wininet user32 advapi32 advpack kernel32_vista msvcrt kernel32 ntdll)
59 add_pch(urlmon precomp.h SOURCE)
60 add_cd_file(TARGET urlmon DESTINATION reactos/system32 FOR all)