3 add_subdirectory(shelldesktop)
4 add_subdirectory(shellmenu)
5 add_subdirectory(shellrecyclebin)
7 spec2def(shell32.dll shell32.spec ADD_IMPORTLIB)
9 remove_definitions(-D_WIN32_WINNT=0x502)
10 add_definitions(-D_WIN32_WINNT=0x600)
17 add_definitions(-D_DEBUG=1) # CORE-17505
24 CQueryAssociations.cpp
30 dialogs/filedefext.cpp
32 dialogs/folder_options.cpp
35 dialogs/recycler_prop.cpp
46 folders/CDesktopFolder.cpp
48 folders/CDrivesFolder.cpp
49 folders/CMyDocsFolder.cpp
50 folders/CPrinterFolder.cpp
51 folders/CAdminToolsFolder.cpp
52 folders/CNetFolder.cpp
53 folders/CFontsFolder.cpp
54 folders/CControlPanelFolder.cpp
55 folders/CRecycleBin.cpp
56 folders/CRegFolder.cpp
57 droptargets/CexeDropHandler.cpp
58 droptargets/CFSDropTarget.cpp
59 droptargets/CRecyclerDropTarget.cpp
67 CDefViewBckgrndMenu.cpp
71 CDefaultContextMenu.cpp
82 list(APPEND PCH_SKIP_SOURCE
98 ${CMAKE_CURRENT_BINARY_DIR}/shell32_stubs.c)
100 file(GLOB_RECURSE shell32_rc_deps res/*.*)
101 list(APPEND shell32_rc_deps ${CMAKE_CURRENT_BINARY_DIR}/shell32_shldisp.tlb)
102 add_rc_deps(shell32.rc ${shell32_rc_deps})
104 add_library(shell32 MODULE
108 ${CMAKE_CURRENT_BINARY_DIR}/shell32.def)
111 # error C4311: 'type cast': pointer truncation from 'HANDLE' to 'INT'
112 remove_target_compile_option(shell32 "/we4311")
115 add_typelib(shell32_shldisp.idl)
116 set_source_files_properties(shell32.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/shell32_shldisp.tlb)
118 set_module_type(shell32 win32dll UNICODE)
119 target_link_libraries(shell32 shellmenu shelldesktop wine uuid recyclebin cpprt atl_classes)
120 add_delay_importlibs(shell32 powrprof shdocvw devmgr winspool.drv winmm mpr uxtheme ole32 oleaut32 userenv browseui version fmifs)
121 add_importlibs(shell32 advapi32 gdi32 user32 comctl32 comdlg32 shlwapi msvcrt kernel32 ntdll)
122 add_dependencies(shell32 stdole2) # shell32_shldisp.tlb needs stdole2.tlb
123 add_pch(shell32 precomp.h "${PCH_SKIP_SOURCE}")
124 add_cd_file(TARGET shell32 DESTINATION reactos/system32 FOR all)