[USB-BRINGUP-TRUNK]
[reactos.git] / hal / halx86 / CMakeLists.txt
1
2 add_definitions(
3 -D_NTHALDLL_
4 -D_NTHAL_)
5
6 include_directories(
7 include
8 ${REACTOS_SOURCE_DIR}/ntoskrnl/include)
9
10 list(APPEND HAL_GENERIC_SOURCE
11 generic/beep.c
12 generic/cmos.c
13 generic/display.c
14 generic/dma.c
15 generic/drive.c
16 generic/halinit.c
17 generic/memory.c
18 generic/misc.c
19 generic/reboot.c
20 generic/sysinfo.c
21 generic/usage.c)
22
23 if(ARCH MATCHES i386)
24 list(APPEND HAL_GENERIC_SOURCE
25 generic/bios.c
26 generic/portio.c)
27 endif()
28
29 add_library(lib_hal_generic ${HAL_GENERIC_SOURCE})
30 add_dependencies(lib_hal_generic asm)
31 add_pch(lib_hal_generic include/hal.h)
32
33 list(APPEND HAL_LEGACY_SOURCE
34 legacy/bus/bushndlr.c
35 legacy/bus/cmosbus.c
36 legacy/bus/isabus.c
37 legacy/bus/pcibus.c
38 legacy/bus/pcidata.c
39 legacy/bus/sysbus.c
40 legacy/bussupp.c
41 legacy/halpnpdd.c
42 legacy/halpcat.c)
43
44 add_library(lib_hal_legacy ${HAL_LEGACY_SOURCE})
45 #add_pch(lib_hal_legacy include/hal.h)
46 target_link_libraries(lib_hal_legacy lib_hal_generic)
47
48 list(APPEND HAL_ACPI_SOURCE
49 acpi/halacpi.c
50 acpi/halpnpdd.c
51 acpi/busemul.c
52 legacy/bus/pcibus.c)
53
54 add_library(lib_hal_acpi ${HAL_ACPI_SOURCE})
55 #add_pch(lib_hal_acpi include/hal.h)
56 target_link_libraries(lib_hal_acpi lib_hal_generic)
57
58 list(APPEND HAL_UP_SOURCE
59 generic/spinlock.c
60 up/processor.c)
61
62 list(APPEND HAL_PIC_SOURCE
63 generic/profil.c
64 generic/timer.c
65 generic/systimer.S
66 generic/trap.S
67 up/halinit_up.c
68 up/pic.c)
69
70 list(APPEND HAL_APIC_SOURCE
71 apic/apic.c
72 apic/apictimer.c
73 apic/apictrap.S
74 apic/halinit_apic.c
75 apic/rtctimer.c
76 apic/tsc.c
77 apic/tsccal.S)
78
79 if(ARCH MATCHES i386)
80 list(APPEND MINI_HAL_SOURCE
81 generic/portio.c
82 generic/systimer.S
83 legacy/bus/bushndlr.c
84 legacy/bus/cmosbus.c
85 legacy/bus/isabus.c
86 legacy/bus/pcibus.c
87 legacy/bus/sysbus.c
88 legacy/bussupp.c
89 generic/beep.c
90 generic/bios.c
91 generic/cmos.c
92 generic/dma.c
93 generic/display.c
94 generic/drive.c
95 generic/misc.c
96 generic/profil.c
97 generic/reboot.c
98 generic/spinlock.c
99 generic/sysinfo.c
100 generic/timer.c
101 generic/usage.c
102 up/halinit_mini.c
103 up/pic.c
104 up/processor.c)
105
106 spec2def(hal.dll ../hal.spec)
107
108 # hal
109 add_library(hal SHARED
110 ${HAL_UP_SOURCE}
111 ${HAL_PIC_SOURCE}
112 generic/v86.S
113 up/halup.rc
114 ${CMAKE_CURRENT_BINARY_DIR}/hal.def)
115 target_link_libraries(hal lib_hal_generic lib_hal_legacy libcntpr)
116 add_importlibs(hal ntoskrnl)
117 #add_pch(hal include/hal.h)
118 add_dependencies(hal psdk bugcodes)
119 set_entrypoint(hal HalInitSystem 8)
120 set_subsystem(hal native)
121 set_image_base(hal 0x00010000)
122 add_cd_file(TARGET hal DESTINATION reactos/system32 NO_CAB FOR all)
123 if(MSVC)
124 add_target_link_flags(hal "/ignore:4216 /ignore:4078")
125 endif()
126
127 # hal acpi
128 spec2def(halacpi.dll ../hal.spec halacpi)
129 add_library(halacpi SHARED
130 ${HAL_UP_SOURCE}
131 ${HAL_PIC_SOURCE}
132 generic/v86.S
133 acpi/halacpi.rc
134 ${CMAKE_CURRENT_BINARY_DIR}/halacpi.def)
135 target_link_libraries(halacpi lib_hal_generic lib_hal_acpi libcntpr)
136 add_importlibs(halacpi ntoskrnl)
137 add_dependencies(halacpi psdk bugcodes)
138 set_entrypoint(halacpi HalInitSystem@8)
139 set_subsystem(halacpi native)
140 set_image_base(halacpi 0x00010000)
141 add_target_compile_definitions(halacpi CONFIG_ACPI)
142 add_cd_file(TARGET halacpi DESTINATION reactos/system32 NO_CAB FOR all)
143 if(MSVC)
144 add_target_link_flags(halacpi "/ignore:4216 /ignore:4078")
145 endif()
146
147 # mini_hal
148 add_library(mini_hal ${MINI_HAL_SOURCE})
149 add_target_compile_definitions(mini_hal _BLDR_ _MINIHAL_)
150 add_dependencies(mini_hal psdk bugcodes asm)
151
152 elseif(ARCH MATCHES amd64)
153
154 spec2def(hal.dll ../hal.spec)
155
156 list(APPEND HAL_SOURCE
157 ${HAL_GENERIC_SOURCE}
158 ${HAL_ACPI_SOURCE}
159 ${HAL_APIC_SOURCE}
160 generic/spinlock.c
161 amd64/x86bios.c
162 amd64/halinit.c
163 amd64/processor.c
164 ${CMAKE_CURRENT_BINARY_DIR}/hal.def)
165
166 # hal
167 add_library(hal SHARED ${HAL_SOURCE})
168 add_pch(hal include/hal.h)
169 add_dependencies(hal psdk bugcodes)
170
171 set_entrypoint(hal HalInitSystem)
172 set_subsystem(hal native)
173 set_image_base(hal 0x00010000)
174 add_importlibs(hal ntoskrnl)
175 target_link_libraries(hal libcntpr)
176 if(MSVC)
177 add_target_link_flags(hal "/ignore:4216")
178 endif()
179
180 add_cd_file(TARGET hal DESTINATION reactos/system32 NO_CAB FOR all)
181
182 endif()
183
184 add_importlib_target(../hal.spec)