23f49cff36538bf38e4baaa6272ef40f660768fa
[reactos.git] / reactos / 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/memory.c
17 generic/misc.c
18 generic/profil.c
19 generic/reboot.c
20 generic/sysinfo.c
21 generic/timer.c
22 generic/usage.c)
23
24 if(ARCH MATCHES i386)
25 list(APPEND HAL_GENERIC_SOURCE
26 generic/bios.c
27 generic/halinit.c
28 generic/i386/portio.c
29 generic/i386/systimer.S
30 generic/i386/trap.S)
31 endif()
32
33 list(APPEND HAL_GENERIC_PCAT_SOURCE
34 generic/legacy/bus/bushndlr.c
35 generic/legacy/bus/cmosbus.c
36 generic/legacy/bus/isabus.c
37 generic/legacy/bus/pcibus.c
38 generic/legacy/bus/pcidata.c
39 generic/legacy/bus/sysbus.c
40 generic/legacy/bussupp.c
41 generic/legacy/halpcat.c)
42
43 list(APPEND HAL_GENERIC_ACPI_SOURCE
44 generic/acpi/halacpi.c
45 generic/acpi/halpnpdd.c
46 generic/acpi/busemul.c
47 generic/legacy/bus/pcibus.c)
48
49 if(ARCH MATCHES i386)
50 list(APPEND HAL_GENERIC_ACPI_SOURCE
51 generic/halinit.c)
52
53 list(APPEND HAL_GENERIC_UP_SOURCE
54 generic/spinlock.c
55 up/pic.c
56 up/processor.c)
57
58 list(APPEND MINI_HAL_SOURCE
59 generic/i386/portio.c
60 generic/i386/systimer.S
61 generic/legacy/bus/bushndlr.c
62 generic/legacy/bus/cmosbus.c
63 generic/legacy/bus/isabus.c
64 generic/legacy/bus/pcibus.c
65 generic/legacy/bus/sysbus.c
66 generic/legacy/bussupp.c
67 generic/beep.c
68 generic/bios.c
69 generic/cmos.c
70 generic/dma.c
71 generic/display.c
72 generic/drive.c
73 generic/misc.c
74 generic/profil.c
75 generic/reboot.c
76 generic/spinlock.c
77 generic/sysinfo.c
78 generic/timer.c
79 generic/usage.c
80 up/halinit_up.c
81 up/pic.c
82 up/processor.c)
83
84 spec2def(hal.dll ../hal.spec)
85
86 list(APPEND HAL_SOURCE
87 ${HAL_GENERIC_SOURCE}
88 ${HAL_GENERIC_PCAT_SOURCE}
89 ${HAL_GENERIC_UP_SOURCE}
90 up/halinit_up.c
91 up/halup.rc
92 ${CMAKE_CURRENT_BINARY_DIR}/hal.def)
93
94 # hal
95 add_library(hal SHARED ${HAL_SOURCE})
96 add_pch(hal include/hal.h)
97 add_dependencies(hal psdk bugcodes)
98
99 set_entrypoint(hal HalInitSystem 8)
100 set_subsystem(hal native)
101 set_image_base(hal 0x00010000)
102 add_importlibs(hal ntoskrnl)
103 target_link_libraries(hal libcntpr)
104
105 add_cd_file(TARGET hal DESTINATION reactos/system32 NO_CAB FOR all)
106
107 # hal acpi
108 spec2def(halacpi.dll ../hal.spec halacpi)
109 add_library(halacpi SHARED
110 ${HAL_GENERIC_SOURCE}
111 ${HAL_GENERIC_ACPI_SOURCE}
112 ${HAL_GENERIC_UP_SOURCE}
113 up/halinit_up.c
114 up/halup.rc
115 ${CMAKE_CURRENT_BINARY_DIR}/halacpi.def)
116 add_dependencies(halacpi psdk bugcodes)
117 set_entrypoint(halacpi HalInitSystem@8)
118 set_subsystem(halacpi native)
119 set_image_base(halacpi 0x00010000)
120 add_importlibs(halacpi ntoskrnl)
121 target_link_libraries(halacpi libcntpr)
122 set_property(TARGET halacpi PROPERTY COMPILE_DEFINITIONS CONFIG_ACPI)
123 add_cd_file(TARGET halacpi DESTINATION reactos/system32 NO_CAB FOR all)
124
125 # mini_hal
126 add_library(mini_hal ${MINI_HAL_SOURCE})
127 set_property(TARGET mini_hal PROPERTY COMPILE_DEFINITIONS "_BLDR_;_MINIHAL_")
128 add_dependencies(mini_hal psdk bugcodes asm)
129
130 elseif(ARCH MATCHES amd64)
131 #TBD
132 endif()
133
134 add_importlib_target(../hal.spec)