xref: /reactos/dll/win32/browseui/CMakeLists.txt (revision f986527d)
1PROJECT(SHELL)
2
3add_subdirectory(shellbars)
4add_subdirectory(shellfind)
5
6set_cpp(WITH_RUNTIME)
7
8add_definitions(
9    -D_ATL_NO_EXCEPTIONS)
10
11include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/atl)
12spec2def(browseui.dll browseui.spec ADD_IMPORTLIB)
13
14list(APPEND SOURCE
15    ACLCustomMRU.cpp
16    ACLCustomMRU.h
17    aclistisf.cpp
18    aclmulti.cpp
19    addressband.cpp
20    addresseditbox.cpp
21    bandproxy.cpp
22    basebarsite.cpp
23    brandband.cpp
24    browseui.cpp
25    browseuiord.cpp
26    CAutoComplete.cpp
27    CTaskbarList.cpp
28    CTaskbarList.h
29    commonbrowser.cpp
30    desktopipc.cpp
31    explorerband.cpp
32    globalfoldersettings.cpp
33    internettoolbar.cpp
34    parsecmdline.cpp
35    regtreeoptions.cpp
36    shellbrowser.cpp
37    toolsband.cpp
38    travellog.cpp
39    utility.cpp
40    CProgressDialog.cpp
41    precomp.h)
42
43add_library(browseui MODULE
44    ${SOURCE}
45    dllinstall.c
46    browseui.rc
47    ${CMAKE_CURRENT_BINARY_DIR}/browseui.def)
48
49set_module_type(browseui win32dll UNICODE)
50target_link_libraries(browseui shellbars shellfind uuid wine)
51add_importlibs(browseui uxtheme shlwapi shell32 comctl32 gdi32 ole32 oleaut32 user32 advapi32 mpr msvcrt kernel32 ntdll)
52add_pch(browseui precomp.h SOURCE)
53add_cd_file(TARGET browseui DESTINATION reactos/system32 FOR all)
54
55if(NOT MSVC)
56    add_target_compile_flags(browseui "-Wno-unused-but-set-variable")
57    # Binutils linker bug
58    if(LTCG)
59        add_target_link_flags(browseui "-Wl,--allow-multiple-definition")
60    endif()
61endif()
62
63add_custom_command(TARGET browseui POST_BUILD
64  COMMAND "${CMAKE_COMMAND}" -E copy
65     "$<TARGET_FILE:browseui>"
66     "$<TARGET_FILE_DIR:filebrowser>/$<TARGET_FILE_NAME:browseui>"
67  COMMENT "Copying to output directory")
68