Subversion Repositories HelenOS-historic

Rev

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

Rev 324 Rev 326
1
MIPS_TARGET=mipsel-linux-gnu
1
MIPS_TARGET=mipsel-linux-gnu
2
 
2
 
3
MIPS_CC_DIR=/usr/local/mipsel/bin
3
MIPS_CC_DIR=/usr/local/mipsel/bin
4
MIPS_BINUTILS_DIR=/usr/local/mipsel/bin
4
MIPS_BINUTILS_DIR=/usr/local/mipsel/bin
5
 
5
 
6
CC=$(MIPS_CC_DIR)/$(MIPS_TARGET)-gcc
6
CC=$(MIPS_CC_DIR)/$(MIPS_TARGET)-gcc
7
AS=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-as
7
AS=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-as
8
LD=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-ld
8
LD=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-ld
9
OBJDUMP=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-objdump
9
OBJDUMP=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-objdump
10
OBJCOPY=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-objcopy
10
OBJCOPY=$(MIPS_BINUTILS_DIR)/$(MIPS_TARGET)-objcopy
11
BFD_NAME=elf32-tradlittlemips
11
BFD_NAME=elf32-tradlittlemips
12
BFD_ARCH=mips
12
BFD_ARCH=mips
13
 
13
 
14
ASFLAGS=-mips3
14
ASFLAGS=-mips3
15
 
15
 
16
DEFS=-DARCH=$(ARCH)
16
DEFS=-DARCH=$(ARCH) -DMACHINE=${MACHINE}
17
CPPFLAGS=$(DEFS) -mno-abicalls -nostdinc -I../include
17
CFLAGS=$(DEFS) -mno-abicalls -mips3 -G 0 -nostdlib -fno-builtin -O2 
18
CFLAGS=$(CPPFLAGS) -mips2 -G 0 -nostdlib -fno-builtin -Werror-implicit-function-declaration -Wmissing-prototypes -Werror -O2 -msoft-float
-
 
19
LFLAGS=-mips2 -M -no-check-sections
18
LFLAGS=-mips2 -M -no-check-sections
20
 
19
 
-
 
20
# It seems that on big endian either GCC or the simulators
-
 
21
# have the swl/swr/lwl/lwr instructions wrong. Just for sure,
-
 
22
# disable it with -mmemcpy (force calling memcpy instead of inlining)
-
 
23
 
-
 
24
ifeq (${MACHINE},indy)
-
 
25
 CFLAGS += -EB -mmemcpy -DBIG_ENDIAN -DHAVE_FPU -DFPU_LAZY
-
 
26
 BFD = elf32-big
-
 
27
endif
-
 
28
 
-
 
29
ifeq (${MACHINE},lgxemul)
-
 
30
 CFLAGS += -DHAVE_FPU -DFPU_LAZY
-
 
31
 BFD = ecoff-littlemips
-
 
32
endif
-
 
33
 
-
 
34
ifeq (${MACHINE},bgxemul)
-
 
35
 CFLAGS += -EB -mmemcpy -DBIG_ENDIAN -DHAVE_FPU -DFPU_LAZY
-
 
36
 BFD = ecoff-bigmips
-
 
37
endif
-
 
38
 
-
 
39
ifeq (${MACHINE},msim)
-
 
40
 BFD = binary
-
 
41
 CFLAGS += -msoft-float
-
 
42
endif
-
 
43
 
-
 
44
ifeq (${MACHINE},simics)
-
 
45
 BFD = elf32-little
-
 
46
 CFLAGS += -msoft-float
-
 
47
endif
-
 
48
 
-
 
49
../arch/$(ARCH)/_link.ld: ../arch/$(ARCH)/_link.ld.in
-
 
50
	$(CC) $(CFLAGS) -C -DBFD=${BFD} -E -x c $< | grep -v "^\#" > $@
-
 
51
 
21
arch_sources= \
52
arch_sources= \
22
	arch/start.S \
53
	arch/start.S \
23
	arch/context.S \
54
	arch/context.S \
24
	arch/panic.S \
55
	arch/panic.S \
25
	arch/mips.c \
56
	arch/mips.c \
26
	arch/dummy.S \
57
	arch/dummy.S \
27
	arch/console.c \
58
	arch/console.c \
28
	arch/asm.S \
59
	arch/asm.S \
29
	arch/exception.c \
60
	arch/exception.c \
30
	arch/interrupt.c \
61
	arch/interrupt.c \
31
	arch/cache.c \
62
	arch/cache.c \
32
	arch/cpu/cpu.c \
63
	arch/cpu/cpu.c \
33
	arch/mm/frame.c \
64
	arch/mm/frame.c \
34
	arch/mm/page.c \
65
	arch/mm/page.c \
35
	arch/mm/tlb.c \
66
	arch/mm/tlb.c \
36
	arch/fpu_context.c \
67
	arch/fpu_context.c \
37
	arch/fmath.c
68
	arch/fmath.c
38
 
69