xref: /reactos/win32ss/user/user32/CMakeLists.txt (revision d6eebaa4)
1
2spec2def(user32.dll user32.spec ADD_IMPORTLIB)
3
4include_directories(
5    ${REACTOS_SOURCE_DIR}/sdk/include/reactos/subsys
6    include
7    ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine
8    ${REACTOS_SOURCE_DIR}/win32ss/include)
9
10list(APPEND SOURCE
11    controls/appswitch.c
12    controls/button.c
13    controls/combo.c
14    controls/edit.c
15    controls/ghost.c
16    controls/icontitle.c
17    controls/listbox.c
18    controls/regcontrol.c
19    controls/scrollbar.c
20    controls/static.c
21    misc/dde.c
22    misc/ddeclient.c
23    misc/ddemisc.c
24    misc/ddeserver.c
25    misc/desktop.c
26    misc/display.c
27    misc/dllmain.c
28    misc/exit.c
29    misc/exticon.c
30    misc/imm.c
31    misc/logon.c
32    misc/misc.c
33    misc/object.c
34    misc/resources.c
35    misc/rtlstr.c
36    misc/stubs.c
37    misc/timer.c
38    misc/usrapihk.c
39    misc/winhelp.c
40    misc/winsta.c
41    windows/accel.c
42    windows/caret.c
43    windows/class.c
44    windows/clipboard.c
45    windows/cursoricon.c
46    windows/dc.c
47    windows/defwnd.c
48    windows/dialog.c
49    windows/draw.c
50    windows/font.c
51    windows/hook.c
52    windows/input.c
53    windows/mdi.c
54    windows/menu.c
55    windows/messagebox.c
56    windows/message.c
57    windows/nonclient.c
58    windows/paint.c
59    windows/prop.c
60    windows/rect.c
61    windows/spy.c
62    windows/text.c
63    windows/window.c
64    windows/winpos.c
65    ${REACTOS_SOURCE_DIR}/win32ss/user/rtl/image.c
66    ${REACTOS_SOURCE_DIR}/win32ss/user/rtl/text.c
67    ${CMAKE_CURRENT_BINARY_DIR}/user32_stubs.c
68    include/user32.h)
69
70if(ARCH STREQUAL "i386")
71    list(APPEND ASM_SOURCE
72        windows/wndproc_fixup.S)
73endif()
74
75add_asm_files(user32_asm ${ASM_SOURCE})
76
77add_library(user32 MODULE
78    ${SOURCE}
79    ${user32_asm}
80    user32.rc
81    ${CMAKE_CURRENT_BINARY_DIR}/user32.def)
82
83set_module_type(user32 win32dll UNICODE ENTRYPOINT DllMain 12)
84target_link_libraries(user32 user32_vista_static user32_wsprintf wine win32ksys ${PSEH_LIB})
85add_dependencies(user32 asm)
86
87if(MSVC AND (ARCH STREQUAL "i386"))
88    target_sources(user32 PRIVATE $<TARGET_OBJECTS:ftol2_sse>)
89endif()
90
91add_delay_importlibs(user32 usp10)
92add_importlibs(user32 gdi32 advapi32 kernel32 ntdll)
93add_pch(user32 include/user32.h SOURCE)
94add_cd_file(TARGET user32 DESTINATION reactos/system32 FOR all)
95