Sync with trunk r64222.
[reactos.git] / dll / win32 / browseui / CMakeLists.txt
1 PROJECT(SHELL)
2
3 set_cpp(WITH_RUNTIME)
4
5 remove_definitions(-D_WIN32_WINNT=0x502)
6 add_definitions(-D_WIN32_WINNT=0x600)
7
8 include_directories(${REACTOS_SOURCE_DIR}/lib/atl)
9
10 spec2def(browseui.dll browseui.spec ADD_IMPORTLIB)
11
12 list(APPEND SOURCE
13 aclmulti.cpp
14 addressband.cpp
15 addresseditbox.cpp
16 bandproxy.cpp
17 bandsite.cpp
18 bandsitemenu.cpp
19 basebar.cpp
20 basebarsite.cpp
21 brandband.cpp
22 browseui.cpp
23 browseuiord.cpp
24 commonbrowser.cpp
25 globalfoldersettings.cpp
26 internettoolbar.cpp
27 parsecmdline.cpp
28 regtreeoptions.cpp
29 shellbrowser.cpp
30 toolsband.cpp
31 travellog.cpp
32 utility.cpp
33 precomp.h)
34
35 add_library(browseui SHARED
36 ${SOURCE}
37 dllinstall.c
38 browseui.rc
39 ${CMAKE_CURRENT_BINARY_DIR}/browseui.def)
40
41 set_module_type(browseui win32dll UNICODE)
42
43 target_link_libraries(browseui
44 atlnew
45 uuid
46 wine)
47
48 add_importlibs(browseui
49 shlwapi
50 shell32
51 comctl32
52 gdi32
53 ole32
54 oleaut32
55 user32
56 advapi32
57 msvcrt
58 kernel32
59 ntdll)
60
61 add_pch(browseui precomp.h SOURCE)
62 add_cd_file(TARGET browseui DESTINATION reactos/system32 FOR all)
63
64 if(NOT MSVC)
65 if(NOT CMAKE_C_COMPILER_ID STREQUAL "Clang")
66 add_target_compile_flags(browseui "-Wno-unused-but-set-variable")
67 endif()
68
69 # Binutils linker bug
70 if(LTCG)
71 add_target_link_flags(browseui "-Wl,--allow-multiple-definition")
72 endif()
73 endif()
74
75 add_custom_command(TARGET browseui POST_BUILD
76 COMMAND "${CMAKE_COMMAND}" -E copy
77 "$<TARGET_FILE:browseui>"
78 "$<TARGET_FILE_DIR:filebrowser>/$<TARGET_FILE_NAME:browseui>"
79 COMMENT "Copying to output directory")
80
81 add_custom_command(TARGET browseui POST_BUILD
82 COMMAND "${CMAKE_COMMAND}" -E copy
83 "$<TARGET_FILE:browseui>"
84 "$<TARGET_FILE_DIR:filebrowser>/$<TARGET_FILE_NAME:browseui>"
85 COMMENT "Copying to output directory")