b0cc60b64882984d1711121bb951d008e6f347be
[reactos.git] / reactos / dll / win32 / browseui / CMakeLists.txt
1 PROJECT(SHELL)
2
3 set_cpp(WITH_RUNTIME)
4
5 include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/atl)
6 spec2def(browseui.dll browseui.spec ADD_IMPORTLIB)
7
8 list(APPEND SOURCE
9 aclistisf.cpp
10 aclmulti.cpp
11 addressband.cpp
12 addresseditbox.cpp
13 bandproxy.cpp
14 bandsite.cpp
15 bandsitemenu.cpp
16 basebar.cpp
17 basebarsite.cpp
18 brandband.cpp
19 browseui.cpp
20 browseuiord.cpp
21 CAutoComplete.cpp
22 commonbrowser.cpp
23 desktopipc.cpp
24 explorerband.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 CProgressDialog.cpp
34 comcat.cpp
35 precomp.h)
36
37 add_library(browseui SHARED
38 ${SOURCE}
39 dllinstall.c
40 browseui.rc
41 ${CMAKE_CURRENT_BINARY_DIR}/browseui.def)
42
43 set_module_type(browseui win32dll UNICODE)
44 target_link_libraries(browseui atlnew uuid wine)
45 add_importlibs(browseui shlwapi shell32 comctl32 gdi32 ole32 oleaut32 user32 advapi32 msvcrt kernel32 ntdll)
46 add_pch(browseui precomp.h SOURCE)
47 add_cd_file(TARGET browseui DESTINATION reactos/system32 FOR all)
48
49 if(NOT MSVC)
50 if(NOT CMAKE_C_COMPILER_ID STREQUAL "Clang")
51 add_target_compile_flags(browseui "-Wno-unused-but-set-variable")
52 endif()
53
54 # Binutils linker bug
55 if(LTCG)
56 add_target_link_flags(browseui "-Wl,--allow-multiple-definition")
57 endif()
58 endif()
59
60 add_custom_command(TARGET browseui POST_BUILD
61 COMMAND "${CMAKE_COMMAND}" -E copy
62 "$<TARGET_FILE:browseui>"
63 "$<TARGET_FILE_DIR:filebrowser>/$<TARGET_FILE_NAME:browseui>"
64 COMMENT "Copying to output directory")
65
66 add_custom_command(TARGET browseui POST_BUILD
67 COMMAND "${CMAKE_COMMAND}" -E copy
68 "$<TARGET_FILE:browseui>"
69 "$<TARGET_FILE_DIR:filebrowser>/$<TARGET_FILE_NAME:browseui>"
70 COMMENT "Copying to output directory")