Subversion Repositories HelenOS

Rev

Rev 328 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 328 Rev 376
1
ifeq (${CROSS_COMPILER},yes)
1
ifeq (${CROSS_COMPILER},yes)
2
	IA-32_TARGET=i686-pc-linux-gnu
2
	IA-32_TARGET=i686-pc-linux-gnu
3
 
3
 
4
	IA-32_CC_DIR=/usr/local/i686/bin
4
	IA-32_CC_DIR=/usr/local/i686/bin
5
	IA-32_BINUTILS_DIR=/usr/local/i686/bin
5
	IA-32_BINUTILS_DIR=/usr/local/i686/bin
6
 
6
 
7
	CC=$(IA-32_CC_DIR)/$(IA-32_TARGET)-gcc
7
	CC=$(IA-32_CC_DIR)/$(IA-32_TARGET)-gcc
8
	AS=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-as
8
	AS=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-as
9
	LD=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-ld
9
	LD=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-ld
10
	OBJCOPY=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-objcopy
10
	OBJCOPY=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-objcopy
11
	OBJDUMP=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-objdump
11
	OBJDUMP=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-objdump
12
else
12
else
13
	CC=gcc
13
	CC=gcc
14
	AS=as
14
	AS=as
15
	LD=ld
15
	LD=ld
16
	OBJCOPY=objcopy
16
	OBJCOPY=objcopy
17
	OBJDUMP=objdump
17
	OBJDUMP=objdump
18
endif
18
endif
19
 
19
 
20
BFD_NAME=elf32-i386
20
BFD_NAME=elf32-i386
21
BFD_ARCH=i386
21
BFD_ARCH=i386
22
 
22
 
23
DEFS:=-DARCH=$(ARCH) -DFPU_LAZY
23
DEFS:=-DARCH=$(ARCH) -DFPU_LAZY
24
 
24
 
25
ifdef SMP
25
ifdef SMP
26
DEFS+=-D$(SMP)
26
DEFS+=-D$(SMP)
27
endif
27
endif
28
 
28
 
29
ifdef HT
29
ifdef HT
30
DEFS+=-D$(HT)
30
DEFS+=-D$(HT)
31
endif
31
endif
32
 
32
 
33
CPPFLAGS=$(DEFS) -nostdinc -I../include
33
CPPFLAGS=$(DEFS) -nostdinc -Iinclude/
34
CFLAGS=$(CPPFLAGS) -nostdlib -fno-builtin -fomit-frame-pointer -Werror-implicit-function-declaration -Wmissing-prototypes -Werror -O3
34
CFLAGS=$(CPPFLAGS) -nostdlib -fno-builtin -fomit-frame-pointer -Werror-implicit-function-declaration -Wmissing-prototypes -Werror -O3
35
LFLAGS=-M
35
LFLAGS=-M
36
 
36
 
37
../arch/$(ARCH)/_link.ld: ../arch/$(ARCH)/_link.ld.in
37
arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in
38
	$(CC) $(CFLAGS) -E -x c $< | grep -v "^\#" > $@
38
	$(CC) $(CFLAGS) -E -x c $< | grep -v "^\#" > $@
39
 
39
 
40
arch_sources= \
40
arch_sources= \
41
	arch/context.s \
41
	src/arch/context.s \
42
	arch/debug/panic.s \
42
	src/arch/debug/panic.s \
43
	arch/cpuid.s \
43
	src/arch/cpuid.s \
44
	arch/delay.s \
44
	src/arch/delay.s \
45
	arch/asm.S \
45
	src/arch/asm.S \
46
	arch/proc/scheduler.c \
46
	src/arch/proc/scheduler.c \
47
	arch/acpi/acpi.c \
47
	src/arch/acpi/acpi.c \
48
	arch/acpi/madt.c \
48
	src/arch/acpi/madt.c \
49
	arch/bios/bios.c \
49
	src/arch/bios/bios.c \
50
	arch/smp/ap.S \
50
	src/arch/smp/ap.S \
51
	arch/smp/apic.c \
51
	src/arch/smp/apic.c \
52
	arch/smp/mps.c \
52
	src/arch/smp/mps.c \
53
	arch/smp/smp.c \
53
	src/arch/smp/smp.c \
54
	arch/atomic.S \
54
	src/arch/atomic.S \
55
	arch/smp/ipi.c \
55
	src/arch/smp/ipi.c \
56
	arch/ia32.c \
56
	src/arch/ia32.c \
57
	arch/interrupt.c \
57
	src/arch/interrupt.c \
58
	arch/pm.c \
58
	src/arch/pm.c \
59
	arch/userspace.c \
59
	src/arch/userspace.c \
60
	arch/cpu/cpu.c \
60
	src/arch/cpu/cpu.c \
61
	arch/mm/frame.c \
61
	src/arch/mm/frame.c \
62
	arch/mm/memory_init.c \
62
	src/arch/mm/memory_init.c \
63
	arch/mm/page.c \
63
	src/arch/mm/page.c \
64
	arch/mm/tlb.c \
64
	src/arch/mm/tlb.c \
65
	arch/drivers/i8042.c \
65
	src/arch/drivers/i8042.c \
66
	arch/drivers/i8254.c \
66
	src/arch/drivers/i8254.c \
67
	arch/drivers/i8259.c \
67
	src/arch/drivers/i8259.c \
68
	arch/drivers/ega.c \
68
	src/arch/drivers/ega.c \
69
	arch/boot/boot.S \
69
	src/arch/boot/boot.S \
70
	arch/boot/memmap.S\
70
	src/arch/boot/memmap.S\
71
	arch/fpu_context.c\
71
	src/arch/fpu_context.c\
72
	arch/fmath.c
72
	src/arch/fmath.c
73
 
73