4 # Give WIN32 subsystem its own project.
7 add_subdirectory(drivers)
10 add_subdirectory(gdi/diblib)
13 add_subdirectory(gdi/gdi32)
14 add_subdirectory(reactx)
15 add_subdirectory(user/user32)
16 add_subdirectory(user/winsrv)
18 spec2def(win32k.sys win32k.spec ADD_IMPORTLIB)
23 ${REACTOS_SOURCE_DIR}/ntoskrnl/include
24 ${REACTOS_SOURCE_DIR}/lib/3rdparty/freetype/include
25 ${REACTOS_SOURCE_DIR}/include/reactos/subsys
26 ${REACTOS_SOURCE_DIR}/include/reactos/drivers)
32 file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/gdi/dib)
34 list(APPEND GENDIB_FILES
35 ${CMAKE_CURRENT_BINARY_DIR}/gdi/dib/dib8gen.c
36 ${CMAKE_CURRENT_BINARY_DIR}/gdi/dib/dib16gen.c
37 ${CMAKE_CURRENT_BINARY_DIR}/gdi/dib/dib32gen.c)
40 OUTPUT ${GENDIB_FILES}
41 COMMAND native-gendib ${CMAKE_CURRENT_BINARY_DIR}/gdi/dib
42 DEPENDS native-gendib)
85 user/ntuser/misc/file.c
86 user/ntuser/misc/rtlstr.c
87 user/ntuser/misc/copy.c
88 user/ntuser/misc/registry.c
89 reactx/ntddraw/ddraw.c
91 reactx/ntddraw/ddsurf.c
94 reactx/ntddraw/mocomp.c
96 reactx/ntddraw/dxeng.c
97 user/ntuser/accelerator.c
98 user/ntuser/callback.c
99 user/ntuser/callproc.c
102 user/ntuser/clipboard.c
104 user/ntuser/cursoricon.c
107 user/ntuser/desktop.c
108 user/ntuser/display.c
112 user/ntuser/guicheck.c
117 user/ntuser/keyboard.c
118 user/ntuser/kbdlayout.c
120 user/ntuser/message.c
123 user/ntuser/monitor.c
125 user/ntuser/msgqueue.c
126 user/ntuser/ntstubs.c
128 user/ntuser/painting.c
130 user/ntuser/scrollbar.c
131 user/ntuser/session.c
132 user/ntuser/shutdown.c
133 user/ntuser/simplecall.c
134 user/ntuser/sysparams.c
136 user/ntuser/useratom.c
137 user/ntuser/usrheap.c
186 add_definitions(-D_USE_DIBLIB_)
189 gdi/eng/bitblt_new.c)
197 if(ARCH STREQUAL "i386")
198 list(APPEND ASM_SOURCE
199 gdi/dib/i386/dib24bpp_hline.s
200 gdi/dib/i386/dib32bpp_hline.s
201 gdi/dib/i386/dib32bpp_colorfill.s
202 gdi/eng/i386/floatobj.S)
210 list(APPEND SOURCE gdi/ntgdi/gdikdbgext.c)
213 add_asm_files(win32k_asm ${ASM_SOURCE})
215 add_library(win32k SHARED
219 ${CMAKE_CURRENT_BINARY_DIR}/win32k.def)
221 set_module_type(win32k kernelmodedriver)
222 target_link_libraries(win32k ${PSEH_LIB} dxguid libcntpr)
225 target_link_libraries(win32k diblib)
228 add_importlibs(win32k ntoskrnl hal ftfd)
229 add_pch(win32k pch.h SOURCE)
230 add_cd_file(TARGET win32k DESTINATION reactos/system32 FOR all)
232 set_source_files_properties(sys-stubs.S PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/w32ksvc.h)
233 add_asm_files(win32ksys_asm sys-stubs.S)
234 add_library(win32ksys ${win32ksys_asm})
235 set_target_properties(win32ksys PROPERTIES LINKER_LANGUAGE "C")