[CMAKE]
[reactos.git] / reactos / dll / win32 / msi / CMakeLists.txt
1
2 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
3 add_definitions(-D__WINESRC__ -DMSIRUNMODE=MSIRUNMODE_T)
4
5 remove_definitions(-D_WIN32_WINNT=0x502)
6 add_definitions(-D_WIN32_WINNT=0x600)
7
8 set_rc_compiler()
9 spec2def(msi.dll msi.spec)
10
11 generate_idl_iids(msiserver.idl)
12
13 list(APPEND SOURCE
14 action.c
15 alter.c
16 appsearch.c
17 assembly.c
18 automation.c
19 classes.c
20 cond.tab.c
21 create.c
22 custom.c
23 database.c
24 delete.c
25 dialog.c
26 distinct.c
27 drop.c
28 events.c
29 files.c
30 font.c
31 format.c
32 handle.c
33 helpers.c
34 insert.c
35 install.c
36 join.c
37 media.c
38 msi.c
39 msi_main.c
40 msiquery.c
41 package.c
42 preview.c
43 record.c
44 registry.c
45 regsvr.c
46 script.c
47 select.c
48 source.c
49 sql.tab.c
50 storages.c
51 streams.c
52 string.c
53 suminfo.c
54 table.c
55 tokenize.c
56 update.c
57 upgrade.c
58 where.c
59 msi.rc
60 ${CMAKE_CURRENT_BINARY_DIR}/msiserver_i.c
61 ${CMAKE_CURRENT_BINARY_DIR}/msi_stubs.c
62 ${CMAKE_CURRENT_BINARY_DIR}/msi.def)
63
64 if(MSVC)
65 set_source_files_properties(custom.c PROPERTIES COMPILE_FLAGS /FImsvchelper.h)
66 endif()
67
68 add_library(msi SHARED ${SOURCE})
69
70 add_idl_Headers(msi_idlheader msiserver.idl)
71 add_typelib(msi_tlb msiserver.idl)
72 set_module_type(msi win32dll)
73 target_link_libraries(msi uuid ${PSEH_LIB} wine)
74 add_dependencies(msi msi_idlheader msi_tlb)
75
76 add_importlibs(msi
77 advapi32
78 cabinet
79 comctl32
80 gdi32
81 odbccp32
82 ole32
83 oleaut32
84 shell32
85 shlwapi
86 urlmon
87 user32
88 version
89 wininet
90 msvcrt
91 kernel32
92 ntdll)
93
94 add_cd_file(TARGET msi DESTINATION reactos/system32 FOR all)
95 add_importlib_target(msi.spec)