2011-05-16 13:12:07 +00:00
|
|
|
|
2014-07-02 14:48:21 +00:00
|
|
|
project(SHELL)
|
|
|
|
|
2012-09-29 13:14:20 +00:00
|
|
|
add_definitions(
|
|
|
|
-D__WINESRC__
|
2020-09-18 09:08:58 +00:00
|
|
|
-D_SHLWAPI_)
|
2011-05-16 13:12:07 +00:00
|
|
|
|
2012-03-07 21:21:27 +00:00
|
|
|
spec2def(shlwapi.dll shlwapi.spec ADD_IMPORTLIB)
|
2011-05-16 13:12:07 +00:00
|
|
|
|
|
|
|
list(APPEND SOURCE
|
|
|
|
clist.c
|
|
|
|
istream.c
|
|
|
|
msgbox.c
|
|
|
|
ordinal.c
|
|
|
|
path.c
|
|
|
|
reg.c
|
|
|
|
regstream.c
|
2015-03-30 12:16:29 +00:00
|
|
|
rosordinal.c
|
2011-05-16 13:12:07 +00:00
|
|
|
shlwapi_main.c
|
|
|
|
stopwatch.c
|
|
|
|
string.c
|
|
|
|
thread.c
|
2020-05-09 21:37:40 +00:00
|
|
|
url.c)
|
|
|
|
|
|
|
|
list(APPEND PCH_SKIP_SOURCE
|
2023-08-03 09:25:12 +00:00
|
|
|
assoc.c
|
2023-08-05 12:20:58 +00:00
|
|
|
propbag.cpp
|
2020-05-09 21:37:40 +00:00
|
|
|
wsprintf.c
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/shlwapi_stubs.c)
|
2014-02-10 12:19:56 +00:00
|
|
|
|
2019-03-20 13:19:48 +00:00
|
|
|
add_library(shlwapi MODULE
|
2014-02-10 12:19:56 +00:00
|
|
|
${SOURCE}
|
2020-05-09 21:37:40 +00:00
|
|
|
${PCH_SKIP_SOURCE}
|
2021-02-02 15:18:04 +00:00
|
|
|
$<TARGET_OBJECTS:shlwapi_autocomp>
|
2014-02-10 12:19:56 +00:00
|
|
|
shlwapi.rc
|
2011-05-16 13:12:07 +00:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/shlwapi.def)
|
|
|
|
|
2020-09-18 09:08:58 +00:00
|
|
|
# our C++ atlbase.h conflicts with the one from wine, so only use wine includes for C
|
2021-02-02 15:18:04 +00:00
|
|
|
# Unfortunately, we can't use different includes for C & C++ in VS generator, so use an object library to achieve this
|
2023-08-05 12:20:58 +00:00
|
|
|
target_include_directories(shlwapi BEFORE PRIVATE
|
|
|
|
${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine
|
|
|
|
${REACTOS_SOURCE_DIR}/sdk/lib/atl)
|
2021-02-02 15:18:04 +00:00
|
|
|
|
|
|
|
add_library(shlwapi_autocomp OBJECT autocomp.cpp)
|
|
|
|
target_link_libraries(shlwapi_autocomp PRIVATE atl_classes)
|
|
|
|
target_compile_definitions(shlwapi_autocomp PRIVATE $<TARGET_PROPERTY:shlwapi,COMPILE_DEFINITIONS>)
|
|
|
|
target_compile_options(shlwapi_autocomp PRIVATE $<TARGET_PROPERTY:shlwapi,COMPILE_OPTIONS>)
|
|
|
|
add_dependencies(shlwapi_autocomp psdk)
|
2020-09-18 09:08:58 +00:00
|
|
|
|
2020-09-27 06:27:18 +00:00
|
|
|
set_module_type(shlwapi win32dll UNICODE)
|
2021-02-02 15:18:04 +00:00
|
|
|
target_link_libraries(shlwapi uuid wine cpprt)
|
2013-09-26 16:51:42 +00:00
|
|
|
add_delay_importlibs(shlwapi userenv oleaut32 ole32 comdlg32 mpr mlang urlmon shell32 winmm version)
|
2017-08-04 23:39:15 +00:00
|
|
|
add_importlibs(shlwapi user32 gdi32 advapi32 wininet msvcrt kernel32 ntdll)
|
2020-05-09 21:37:40 +00:00
|
|
|
add_pch(shlwapi precomp.h "${PCH_SKIP_SOURCE}")
|
2011-05-16 13:12:07 +00:00
|
|
|
add_cd_file(TARGET shlwapi DESTINATION reactos/system32 FOR all)
|