1 | AMD64_TARGET=amd64-linux-gnu
|
---|
2 | AMD64_CC_DIR=/usr/local/amd64/bin
|
---|
3 | AMD64_BINUTILS_DIR=/usr/local/amd64/bin
|
---|
4 |
|
---|
5 | CC=$(AMD64_CC_DIR)/$(AMD64_TARGET)-gcc
|
---|
6 | AS=$(AMD64_BINUTILS_DIR)/$(AMD64_TARGET)-as
|
---|
7 | LD=$(AMD64_BINUTILS_DIR)/$(AMD64_TARGET)-ld
|
---|
8 | OBJDUMP=$(AMD64_BINUTILS_DIR)/$(AMD64_TARGET)-objdump
|
---|
9 | OBJCOPY=$(AMD64_BINUTILS_DIR)/$(AMD64_TARGET)-objcopy
|
---|
10 | BFD_NAME=elf64-x86-64
|
---|
11 | BFD_ARCH=i386:x86-64
|
---|
12 |
|
---|
13 | DEFS=-DARCH=$(ARCH) -DFPU_LAZY
|
---|
14 |
|
---|
15 | ifdef SMP
|
---|
16 | DEFS+=-D$(SMP)
|
---|
17 | endif
|
---|
18 |
|
---|
19 | ifdef HT
|
---|
20 | DEFS+=-D$(HT)
|
---|
21 | endif
|
---|
22 |
|
---|
23 |
|
---|
24 | CFLAGS=$(DEFS) -nostdlib -fno-builtin -fno-unwind-tables -O3 -march=opteron -m64 -mcmodel=kernel -mno-red-zone
|
---|
25 | LFLAGS=-M
|
---|
26 |
|
---|
27 | arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in
|
---|
28 | $(CC) $(CFLAGS) -C -E -x c $< | grep -v "^\#" > $@
|
---|
29 |
|
---|
30 | arch_sources = \
|
---|
31 | generic/src/arch/dummy.s \
|
---|
32 | generic/src/arch/fpu_context.c \
|
---|
33 | generic/src/arch/boot/boot.S \
|
---|
34 | generic/src/arch/boot/memmap.S \
|
---|
35 | generic/src/arch/pm.c \
|
---|
36 | generic/src/arch/context.S \
|
---|
37 | generic/src/arch/drivers/ega.c \
|
---|
38 | generic/src/arch/drivers/i8042.c \
|
---|
39 | generic/src/arch/drivers/i8254.c \
|
---|
40 | generic/src/arch/drivers/i8259.c \
|
---|
41 | generic/src/arch/delay.S \
|
---|
42 | generic/src/arch/amd64.c \
|
---|
43 | generic/src/arch/bios/bios.c \
|
---|
44 | generic/src/arch/interrupt.c \
|
---|
45 | generic/src/arch/mm/frame.c \
|
---|
46 | generic/src/arch/mm/page.c \
|
---|
47 | generic/src/arch/mm/tlb.c \
|
---|
48 | generic/src/arch/asm_utils.S \
|
---|
49 | generic/src/arch/fmath.c \
|
---|
50 | generic/src/arch/mm/memory_init.c \
|
---|
51 | generic/src/arch/cpu/cpu.c \
|
---|
52 | generic/src/arch/proc/scheduler.c \
|
---|
53 | generic/src/arch/userspace.c
|
---|
54 |
|
---|
55 | ifdef SMP
|
---|
56 | arch_sources += generic/src/arch/smp/ap.S \
|
---|
57 | generic/src/arch/smp/apic.c \
|
---|
58 | generic/src/arch/smp/ipi.c \
|
---|
59 | generic/src/arch/smp/mps.c \
|
---|
60 | generic/src/arch/smp/smp.c
|
---|
61 | endif
|
---|