Reorganise HAL so multiple HAL versions can be built in parallel
[reactos.git] / reactos / hal / halx86 / mp / Makefile
1 # $Id: Makefile,v 1.1 2004/12/03 20:10:44 gvg Exp $
2
3 PATH_TO_TOP = ../../..
4
5 VPATH = ../generic
6
7 default: all
8
9 #
10 # Build configuration
11 #
12 include $(PATH_TO_TOP)/rules.mak
13
14 #
15 # Global configuration
16 #
17 include $(TOOLS_PATH)/config.mk
18
19 TARGET_TYPE = hal
20
21 TARGET_DEFNAME = ../../hal/hal
22
23 TARGET_ASFLAGS = -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/ntoskrnl/include -D__ASM__ -DMP
24
25 TARGET_CFLAGS = -I../include -I$(PATH_TO_TOP)/ntoskrnl/include -Wall -Werror -DMP
26
27 # require os code to explicitly request A/W version of structs/functions
28 TARGET_CFLAGS += -D_DISABLE_TIDENTS
29
30 TARGET_NAME = halmp
31
32 ifneq ($(MP), 1)
33 TARGET_INSTALL = no
34 else
35 TARGET_BOOTSTRAP = yes
36 endif
37
38 GENERIC_OBJECTS = \
39 adapter.o \
40 beep.o \
41 bus.o \
42 display.o \
43 dma.o \
44 drive.o \
45 enum.o \
46 fmutex.o \
47 halinit.o \
48 isa.o \
49 kdbg.o \
50 mca.o \
51 misc.o \
52 pci.o \
53 portio.o \
54 reboot.o \
55 spinlock.o \
56 sysbus.o \
57 sysinfo.o \
58 time.o \
59 timer.o
60
61 MP_OBJECTS = \
62 apic.o \
63 halinit_mp.o \
64 ipi_mp.o \
65 mpsirql.o \
66 mpsboot.o \
67 mps.o \
68 processor_mp.o \
69 resource_mp.o
70
71 HAL_OBJECTS = $(GENERIC_OBJECTS) $(MP_OBJECTS)
72
73 DEP_OBJECTS := $(HAL_OBJECTS)
74
75 TARGET_OBJECTS := $(DEP_OBJECTS) $(PATH_TO_TOP)/include/roscfg.h
76
77 # Note: Must be = and not := since $(DEP_FILES) is assigned a value below
78 TARGET_CLEAN = $(DEP_FILES) *.o *.dll
79
80 #
81 # Helper makefile
82 #
83 include $(TOOLS_PATH)/helper.mk
84
85 #
86 # Include automatic dependancy tracking
87 #
88 include $(TOOLS_PATH)/depend.mk
89
90 # EOF