set(USE_DIBLIB FALSE)
-if(NOT MSVC)
- # HACK: this should be enabled globally!
- add_compile_flags_language("-std=c++11" "CXX")
-endif()
-
# Give WIN32 subsystem its own project.
PROJECT(WIN32SS)
+if (NATIVE_REACTX)
+ add_definitions(-DNATIVE_REACTX)
+endif()
+
add_subdirectory(drivers)
if(USE_DIBLIB)
endif()
add_subdirectory(gdi/gdi32)
+add_subdirectory(gdi/gdi32_vista)
add_subdirectory(printing)
add_subdirectory(reactx)
add_subdirectory(user/user32)
spec2def(win32k.sys win32k.spec ADD_IMPORTLIB)
+# embed RTC libs
+if (STACK_PROTECTOR)
+ target_sources(libwin32k PRIVATE $<TARGET_OBJECTS:gcc_ssp_win32k>)
+endif()
+
include_directories(
.
include
gdi/eng/ldevobj.c
gdi/eng/mapping.c
gdi/eng/math.c
+ gdi/eng/mdevobj.c
gdi/eng/mem.c
gdi/eng/engmisc.c
gdi/eng/mouse.c
+ gdi/eng/multidisp.c
+ gdi/eng/pandisp.c
gdi/eng/paint.c
gdi/eng/pathobj.c
gdi/eng/pdevobj.c
user/ntuser/prop.c
user/ntuser/scrollbar.c
user/ntuser/scrollex.c
+ user/ntuser/security.c
user/ntuser/session.c
user/ntuser/shutdown.c
user/ntuser/simplecall.c
gdi/dib/i386/dib32bpp_hline.s
gdi/dib/i386/dib32bpp_colorfill.s
gdi/eng/i386/floatobj.S)
+list(APPEND SOURCE gdi/eng/i386/floatobj.c)
else()
list(APPEND SOURCE
gdi/dib/dib24bppc.c
endif()
if(KDBG)
+ add_definitions(-DKDBG)
list(APPEND SOURCE gdi/ntgdi/gdikdbgext.c)
endif()
add_asm_files(win32k_asm ${ASM_SOURCE})
-add_library(win32k SHARED
+add_library(win32k MODULE
${SOURCE}
gdi/ntgdi/brush.cpp
${win32k_asm}
add_pch(win32k pch.h SOURCE)
add_cd_file(TARGET win32k DESTINATION reactos/system32 FOR all)
-set_source_files_properties(sys-stubs.S PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/w32ksvc.h)
+if(ARCH STREQUAL "amd64")
+ set_source_files_properties(sys-stubs.S PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/w32ksvc64.h)
+else()
+ set_source_files_properties(sys-stubs.S PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/w32ksvc32.h)
+endif()
add_asm_files(win32ksys_asm sys-stubs.S)
add_library(win32ksys ${win32ksys_asm})
set_target_properties(win32ksys PROPERTIES LINKER_LANGUAGE "C")
-add_dependencies(win32ksys asm)
\ No newline at end of file
+add_dependencies(win32ksys asm)