Changeset 6bc4dbd in mainline for arch/amd64
- Timestamp:
- 2005-11-08T00:00:15Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5b65205
- Parents:
- 849ba5cb
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/amd64/Makefile.inc
r849ba5cb r6bc4dbd 1 AMD64_TARGET=amd64-linux-gnu 2 AMD64_CC_DIR=/usr/local/amd64/bin 3 AMD64_BINUTILS_DIR=/usr/local/amd64/bin 1 # 2 # Copyright (C) 2005 Martin Decky 3 # All rights reserved. 4 # 5 # Redistribution and use in source and binary forms, with or without 6 # modification, are permitted provided that the following conditions 7 # are met: 8 # 9 # - Redistributions of source code must retain the above copyright 10 # notice, this list of conditions and the following disclaimer. 11 # - Redistributions in binary form must reproduce the above copyright 12 # notice, this list of conditions and the following disclaimer in the 13 # documentation and/or other materials provided with the distribution. 14 # - The name of the author may not be used to endorse or promote products 15 # derived from this software without specific prior written permission. 16 # 17 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 18 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19 # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20 # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 # 4 28 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 29 ## Toolchain configuration 30 # 12 31 13 DEFS=-DARCH=$(ARCH) -DFPU_LAZY 32 BFD_NAME = elf64-x86-64 33 BFD_ARCH = i386:x86-64 34 TARGET = amd64-linux-gnu 35 TOOLCHAIN_DIR = /usr/local/amd64/bin 14 36 15 ifdef SMP 16 DEFS+=-D$(SMP) 37 ## Make some default assumptions 38 # 39 40 ifndef CPU 41 CPU = opteron 42 endif 43 CFLAGS += -fno-unwind-tables -m64 -mcmodel=kernel -mno-red-zone 44 45 ## Accepted CPUs 46 # 47 48 ifeq ($(CPU),opteron) 49 CFLAGS += -march=opteron 50 DEFS += -DFENCES=p4 17 51 endif 18 52 19 ifdef HT 20 DEFS+=-D$(HT) 53 ## Own configuration directives 54 # 55 56 CONFIG_ACPI = y 57 58 ## Accepted configuration directives 59 # 60 61 ifeq ($(CONFIG_SMP),y) 62 DEFS += -DSMP 63 endif 64 ifeq ($(CONFIG_HT),y) 65 DEFS += -DHT 66 endif 67 ifeq ($(CONFIG_FPU_LAZY),y) 68 DEFS += -DFPU_LAZY 21 69 endif 22 70 71 ARCH_SOURCES = \ 72 arch/$(ARCH)/src/dummy.s \ 73 arch/$(ARCH)/src/fpu_context.c \ 74 arch/$(ARCH)/src/boot/boot.S \ 75 arch/$(ARCH)/src/boot/memmap.S \ 76 arch/$(ARCH)/src/pm.c \ 77 arch/$(ARCH)/src/context.S \ 78 arch/$(ARCH)/src/drivers/ega.c \ 79 arch/$(ARCH)/src/drivers/i8042.c \ 80 arch/$(ARCH)/src/drivers/i8254.c \ 81 arch/$(ARCH)/src/drivers/i8259.c \ 82 arch/$(ARCH)/src/delay.S \ 83 arch/$(ARCH)/src/amd64.c \ 84 arch/$(ARCH)/src/bios/bios.c \ 85 arch/$(ARCH)/src/interrupt.c \ 86 arch/$(ARCH)/src/mm/frame.c \ 87 arch/$(ARCH)/src/mm/page.c \ 88 arch/$(ARCH)/src/mm/tlb.c \ 89 arch/$(ARCH)/src/asm_utils.S \ 90 arch/$(ARCH)/src/fmath.c \ 91 arch/$(ARCH)/src/mm/memory_init.c \ 92 arch/$(ARCH)/src/cpu/cpu.c \ 93 arch/$(ARCH)/src/proc/scheduler.c \ 94 arch/$(ARCH)/src/userspace.c 23 95 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 96 ifeq ($(CONFIG_SMP),y) 97 ARCH_SOURCES += \ 98 arch/$(ARCH)/src/smp/ap.S \ 99 arch/$(ARCH)/src/smp/apic.c \ 100 arch/$(ARCH)/src/smp/ipi.c \ 101 arch/$(ARCH)/src/smp/mps.c \ 102 arch/$(ARCH)/src/smp/smp.c 61 103 endif
Note:
See TracChangeset
for help on using the changeset viewer.