[CMAKE]
[reactos.git] / reactos / base / shell / explorer / CMakeLists.txt
1
2 add_subdirectory(notifyhook)
3
4 set_cpp(WITH_RTTI WITH_EXCEPTIONS WITH_STL)
5
6 add_definitions(
7 -DWIN32
8 -D__WINDRES__)
9
10 include_directories(${CMAKE_CURRENT_SOURCE_DIR})
11
12 list(APPEND SOURCE
13 shell/mainframe.cpp
14 shell/unixfs.cpp
15 shell/ntobjfs.cpp
16 shell/filechild.cpp
17 shell/shellfs.cpp
18 shell/fatfs.cpp
19 shell/pane.cpp
20 shell/regfs.cpp
21 shell/webchild.cpp
22 shell/entries.cpp
23 shell/shellbrowser.cpp
24 shell/winfs.cpp
25 dialogs/searchprogram.cpp
26 dialogs/settings.cpp
27 taskbar/taskbar.cpp
28 taskbar/favorites.cpp
29 taskbar/quicklaunch.cpp
30 taskbar/desktopbar.cpp
31 taskbar/startmenu.cpp
32 taskbar/traynotify.cpp
33 services/shellservices.cpp
34 desktop/desktop.cpp
35 explorer.cpp
36 utility/xs-native.cpp
37 utility/shellclasses.cpp
38 utility/dragdropimpl.cpp
39 utility/utility.cpp
40 utility/xmlstorage.cpp
41 utility/window.cpp
42 utility/shellbrowserimpl.cpp
43 precomp.h) # utility/shelltests.cpp
44
45 if(ARCH STREQUAL "i386")
46 list(APPEND I386_SOURCE i386-stub-win32.c)
47 endif()
48
49 add_executable(explorer
50 ${SOURCE}
51 ${I386_SOURCE}
52 services/startup.c
53 explorer.rc)
54
55 target_link_libraries(explorer comsupp wine uuid)
56 set_module_type(explorer win32gui UNICODE)
57 add_importlibs(explorer advapi32 gdi32 user32 ws2_32 msimg32 comctl32 ole32 oleaut32 shell32 shlwapi notifyhook msvcrt kernel32 ntdll)
58 add_pch(explorer precomp.h SOURCE)
59 add_dependencies(explorer psdk)
60 add_cd_file(TARGET explorer DESTINATION reactos FOR all)
61 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/explorer-cfg-template.xml DESTINATION reactos FOR all)
62
63 if(NOT MSVC)
64 add_compile_flags("-Wno-error=narrowing")
65
66 # GCC bug #59472
67 if(LTCG)
68 add_target_link_flags(explorer "-Wno-error")
69 endif()
70 endif()