[CMAKE]
[reactos.git] / subsystems / win32 / win32k / CMakeLists.txt
1
2 spec2def(win32k.sys win32k.spec)
3
4 include_directories(
5 .
6 include
7 ${REACTOS_SOURCE_DIR}/ntoskrnl/include
8 ${REACTOS_SOURCE_DIR}/lib/3rdparty/freetype/include
9 ${REACTOS_SOURCE_DIR}/include/reactos/subsys
10 ${REACTOS_SOURCE_DIR}/include/reactos/drivers)
11
12 add_definitions(
13 -DLANGPACK
14 -D_WIN32K_)
15
16 list(APPEND SOURCE
17 dib/alphablend.c
18 dib/dib1bpp.c
19 dib/dib4bpp.c
20 dib/dib8bpp.c
21 dib/dib16bpp.c
22 dib/dib24bpp.c
23 dib/dib32bpp.c
24 dib/dib.c
25 dib/floodfill.c
26 dib/stretchblt.c
27 eng/alphablend.c
28 eng/bitblt.c
29 eng/engbrush.c
30 eng/engevent.c
31 eng/clip.c
32 eng/copybits.c
33 eng/debug.c
34 eng/device.c
35 eng/driverobj.c
36 eng/error.c
37 eng/float.c
38 eng/gradient.c
39 eng/lineto.c
40 eng/ldevobj.c
41 eng/mapping.c
42 eng/mem.c
43 eng/engmisc.c
44 eng/mouse.c
45 eng/paint.c
46 eng/pdevobj.c
47 eng/perfcnt.c
48 eng/rlecomp.c
49 eng/semaphor.c
50 eng/sort.c
51 eng/string.c
52 eng/stretchblt.c
53 eng/surface.c
54 eng/transblt.c
55 eng/engwindow.c
56 eng/xlate.c
57 main/dllmain.c
58 misc/driver.c
59 misc/file.c
60 misc/math.c
61 misc/rtlstr.c
62 misc/copy.c
63 misc/registry.c
64 misc/usrheap.c
65 ntddraw/ddraw.c
66 ntddraw/dd.c
67 ntddraw/ddsurf.c
68 ntddraw/d3d.c
69 ntddraw/dvp.c
70 ntddraw/mocomp.c
71 ntddraw/eng.c
72 ntddraw/dxeng.c
73 ntuser/accelerator.c
74 ntuser/callback.c
75 ntuser/callproc.c
76 ntuser/caret.c
77 ntuser/class.c
78 ntuser/clipboard.c
79 ntuser/csr.c
80 ntuser/cursoricon.c
81 ntuser/defwnd.c
82 ntuser/desktop.c
83 ntuser/display.c
84 ntuser/event.c
85 ntuser/focus.c
86 ntuser/guicheck.c
87 ntuser/hook.c
88 ntuser/hotkey.c
89 ntuser/input.c
90 ntuser/keyboard.c
91 ntuser/kbdlayout.c
92 ntuser/menu.c
93 ntuser/message.c
94 ntuser/metric.c
95 ntuser/misc.c
96 ntuser/monitor.c
97 ntuser/msgqueue.c
98 ntuser/ntstubs.c
99 ntuser/ntuser.c
100 ntuser/painting.c
101 ntuser/prop.c
102 ntuser/scrollbar.c
103 ntuser/session.c
104 ntuser/simplecall.c
105 ntuser/sysparams.c
106 ntuser/timer.c
107 ntuser/useratom.c
108 ntuser/vis.c
109 ntuser/windc.c
110 ntuser/window.c
111 ntuser/winpos.c
112 ntuser/winsta.c
113 ntuser/object.c
114 objects/arc.c
115 objects/bezier.c
116 objects/bitblt.c
117 objects/bitmaps.c
118 objects/brush.c
119 objects/cliprgn.c
120 objects/coord.c
121 objects/dcattr.c
122 objects/dclife.c
123 objects/dcobjs.c
124 objects/dcstate.c
125 objects/dcutil.c
126 objects/device.c
127 objects/dibobj.c
128 objects/drawing.c
129 objects/fillshap.c
130 objects/font.c
131 objects/freetype.c
132 objects/gdibatch.c
133 objects/gdiobj.c
134 objects/icm.c
135 objects/line.c
136 objects/metafile.c
137 objects/palette.c
138 objects/path.c
139 objects/pen.c
140 objects/polyfill.c
141 objects/print.c
142 objects/rect.c
143 objects/region.c
144 objects/stockobj.c
145 objects/text.c
146 objects/wingl.c
147 objects/xformobj.c
148 stubs/stubs.c
149 stubs/umpdstubs.c
150 win32k.rc)
151
152 list(APPEND GENDIB_GENERATED
153 ${CMAKE_CURRENT_BINARY_DIR}/dib/dib8gen.c
154 ${CMAKE_CURRENT_BINARY_DIR}/dib/dib16gen.c
155 ${CMAKE_CURRENT_BINARY_DIR}/dib/dib32gen.c)
156
157 set_source_files_properties(${GENDIB_GENERATED} PROPERTIES GENERATED TRUE)
158
159 list(APPEND SOURCE ${GENDIB_GENERATED})
160
161 if(ARCH MATCHES i386)
162 list(APPEND SOURCE
163 dib/i386/dib24bpp_hline.s
164 dib/i386/dib32bpp_hline.s
165 dib/i386/dib32bpp_colorfill.s
166 eng/i386/floatobj.S
167 misc/i386/cos_asm.s
168 misc/i386/sin_asm.s
169 misc/i386/atan2_asm.s
170 misc/i386/floor_asm.s
171 misc/i386/ceil_asm.s)
172 else()
173 list(APPEND SOURCE
174 dib/dib24bppc.c
175 dib/dib32bppc.c)
176 endif(ARCH MATCHES i386)
177
178 add_library(win32k SHARED
179 ${CMAKE_CURRENT_BINARY_DIR}/win32k_pch.h.gch
180 ${CMAKE_CURRENT_BINARY_DIR}/win32k.def
181 ${SOURCE})
182
183 set_module_type(win32k kernelmodedriver)
184
185 target_link_libraries(win32k
186 ${PSEH_LIB}
187 dxguid
188 libcntpr)
189
190 add_importlibs(win32k ntoskrnl hal ftfd)
191 add_pch(win32k ${CMAKE_CURRENT_SOURCE_DIR}/pch.h ${SOURCE})
192 add_dependencies(win32k gendib_generated subsystem_napi)
193 add_cab_target(win32k 1)
194 add_importlib_target(win32k.spec win32k.sys)
195