add_definitions(-D_KERNEL32_) remove_definitions(-D_WIN32_WINNT=0x502) add_definitions(-D_WIN32_WINNT=0x600) include_directories(${REACTOS_SOURCE_DIR}/include/reactos/subsys) spec2def(kernel32.dll kernel32.spec) list(APPEND SOURCE debug/debugger.c debug/output.c except/except.c file/backup.c file/bintype.c file/cnotify.c file/copy.c file/create.c file/curdir.c file/delete.c file/deviceio.c file/dir.c file/dosdev.c file/file.c file/find.c file/hardlink.c file/iocompl.c file/lfile.c file/lock.c file/mailslot.c file/move.c file/npipe.c file/pipe.c file/rw.c file/tape.c file/volume.c mem/global.c mem/heap.c mem/isbad.c mem/local.c mem/procmem.c mem/resnotify.c mem/section.c mem/virtual.c misc/actctx.c misc/atom.c misc/casemap.c misc/chartype.c misc/collation.c misc/comm.c misc/commdcb.c misc/computername.c misc/console.c misc/dllmain.c misc/env.c misc/error.c misc/fold.c misc/format_msg.c misc/handle.c misc/lang.c misc/lcformat.c misc/ldr.c misc/lzexpand.c misc/muldiv.c misc/nls.c misc/perfcnt.c misc/power.c misc/profile.c misc/recovery.c misc/res.c misc/sortkey.c misc/stubs.c misc/sysinfo.c misc/time.c misc/timerqueue.c misc/toolhelp.c misc/utils.c misc/version.c process/cmdline.c process/procsup.c process/job.c process/proc.c process/session.c string/lstring.c synch/condvar.c synch/critical.c synch/event.c synch/mutex.c synch/sem.c synch/timer.c synch/wait.c thread/fiber.c thread/fls.c thread/thread.c thread/tls.c kernel32.rc ${CMAKE_CURRENT_BINARY_DIR}/kernel32.def) if(ARCH MATCHES i386) list(APPEND SOURCE thread/i386/fiber.S thread/i386/thread.S) elseif(ARCH MATCHES amd64) list(APPEND SOURCE thread/amd64/fiber.S thread/amd64/thread.S) endif(ARCH MATCHES i386) add_library(kernel32 SHARED ${CMAKE_CURRENT_BINARY_DIR}/kernel32_k32.h.gch ${SOURCE}) set_entrypoint(kernel32 DllMain@12) set_image_base(kernel32 ${baseaddress_kernel32}) target_link_libraries(kernel32 ${PSEH_LIB}) add_importlibs(kernel32 ntdll) add_pch(kernel32 ${CMAKE_CURRENT_SOURCE_DIR}/k32.h ${SOURCE}) add_dependencies(kernel32 psdk buildno_header errcodes asm) add_cab_target(kernel32 1) add_importlib_target(kernel32.spec)