[CMAKE]
[reactos.git] / 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
72 add_typelib(msi_tlb msiserver.idl)
73
74 set_module_type(msi win32dll)
75
76 target_link_libraries(msi uuid ${PSEH_LIB} wine)
77
78 add_dependencies(msi msi_idlheader msi_tlb)
79
80 add_importlibs(msi
81 advapi32
82 cabinet
83 comctl32
84 gdi32
85 odbccp32
86 ole32
87 oleaut32
88 shell32
89 shlwapi
90 urlmon
91 user32
92 version
93 wininet
94 msvcrt
95 kernel32
96 ntdll)
97
98 add_cd_file(TARGET msi DESTINATION reactos/system32 FOR all)
99 add_importlib_target(msi.spec)