[CMAKE]
[reactos.git] / dll / win32 / kernel32 / CMakeLists.txt
1
2 spec2def(kernel32.dll kernel32.spec)
3
4 add_definitions(-D_KERNEL32_)
5
6 remove_definitions(-D_WIN32_WINNT=0x502)
7 add_definitions(-D_WIN32_WINNT=0x600)
8
9 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/subsys)
10
11 list(APPEND SOURCE
12 debug/debugger.c
13 debug/output.c
14 except/except.c
15 file/backup.c
16 file/bintype.c
17 file/cnotify.c
18 file/copy.c
19 file/create.c
20 file/curdir.c
21 file/delete.c
22 file/deviceio.c
23 file/dir.c
24 file/dosdev.c
25 file/file.c
26 file/find.c
27 file/hardlink.c
28 file/iocompl.c
29 file/lfile.c
30 file/lock.c
31 file/mailslot.c
32 file/move.c
33 file/npipe.c
34 file/pipe.c
35 file/rw.c
36 file/tape.c
37 file/volume.c
38 mem/global.c
39 mem/heap.c
40 mem/isbad.c
41 mem/local.c
42 mem/procmem.c
43 mem/resnotify.c
44 mem/section.c
45 mem/virtual.c
46 misc/actctx.c
47 misc/atom.c
48 misc/casemap.c
49 misc/chartype.c
50 misc/collation.c
51 misc/comm.c
52 misc/commdcb.c
53 misc/computername.c
54 misc/console.c
55 misc/dllmain.c
56 misc/env.c
57 misc/error.c
58 misc/fold.c
59 misc/format_msg.c
60 misc/handle.c
61 misc/lang.c
62 misc/lcformat.c
63 misc/ldr.c
64 misc/lzexpand.c
65 misc/muldiv.c
66 misc/nls.c
67 misc/perfcnt.c
68 misc/power.c
69 misc/profile.c
70 misc/recovery.c
71 misc/res.c
72 misc/sortkey.c
73 misc/stubs.c
74 misc/sysinfo.c
75 misc/time.c
76 misc/timerqueue.c
77 misc/toolhelp.c
78 misc/utils.c
79 misc/version.c
80 process/cmdline.c
81 process/procsup.c
82 process/job.c
83 process/proc.c
84 process/session.c
85 string/lstring.c
86 synch/condvar.c
87 synch/critical.c
88 synch/event.c
89 synch/mutex.c
90 synch/sem.c
91 synch/timer.c
92 synch/wait.c
93 thread/fiber.c
94 thread/fls.c
95 thread/thread.c
96 thread/tls.c
97 kernel32.rc
98 kernel32_stubs.c
99 ${CMAKE_CURRENT_BINARY_DIR}/kernel32.def)
100
101 if(ARCH MATCHES i386)
102 list(APPEND SOURCE
103 thread/i386/fiber.S
104 thread/i386/thread.S
105 )
106 elseif(ARCH MATCHES amd64)
107 list(APPEND SOURCE
108 thread/amd64/fiber.S
109 thread/amd64/thread.S)
110 endif(ARCH MATCHES i386)
111
112 add_library(kernel32 SHARED
113 ${CMAKE_CURRENT_BINARY_DIR}/kernel32_k32.h.gch
114 ${SOURCE})
115
116 set_module_type(kernel32 win32dll)
117
118 target_link_libraries(kernel32 ${PSEH_LIB})
119
120 add_importlibs(kernel32 ntdll)
121 add_pch(kernel32 ${CMAKE_CURRENT_SOURCE_DIR}/k32.h ${SOURCE})
122 add_dependencies(kernel32 errcodes)
123 add_cab_target(kernel32 1)
124 add_importlib_def(${CMAKE_CURRENT_BINARY_DIR}/kernel32.def)