GUI: Fix Tomato RAF theme for all builds. Compilation typo.
[tomato.git] / release / src-rt-6.x.4708 / cfe / cfe / arch / mips / common / src / tools.mk
blob71f1f446987bad672a7e45dc7ac1b8ccc1c23ac3
2 # Addresses of things unless overridden
5 ifeq ($(strip ${CFG_UNCACHED}),1)
6 CFG_TEXT_START ?= 0xBFC00000
7 CFG_DATA_START ?= 0xA1F00000
8 CFG_ROM_START ?= 0xBFC00000
9 else
10 CFG_TEXT_START ?= 0x9FC00000
11 CFG_DATA_START ?= 0x81F00000
12 CFG_ROM_START ?= 0xBFC00000
13 endif
16 # BOOTRAM mode (runs from ROM vector assuming ROM is writable)
17 # implies no relocation.
20 ifeq ($(strip ${CFG_BOOTRAM}),1)
21 CFG_RELOC = 0
22 endif
26 # Basic compiler options and preprocessor flags
29 CFLAGS += -gdwarf-2 -c -ffreestanding
30 CFLAGS += -Os -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes
33 # Tools locations
35 TOOLPREFIX ?= sb1-elf-
36 GCC ?= $(TOOLS)$(TOOLPREFIX)gcc
37 GCPP ?= $(TOOLS)$(TOOLPREFIX)cpp
38 GLD ?= $(TOOLS)$(TOOLPREFIX)ld
39 GAR ?= $(TOOLS)$(TOOLPREFIX)ar
40 OBJDUMP ?= $(TOOLS)$(TOOLPREFIX)objdump
41 OBJCOPY ?= $(TOOLS)$(TOOLPREFIX)objcopy
42 RANLIB ?= $(TOOLS)$(TOOLPREFIX)ranlib
45 # Check for 64-bit mode
48 ifeq ($(strip ${CFG_MLONG64}),1)
49 CFLAGS += -mlong64 -D__long64
50 endif
53 # Determine parameters for the linker script, which is generated
54 # using the C preprocessor.
56 # Supported combinations:
58 # CFG_RAMAPP CFG_UNCACHED CFG_RELOC Description
59 # Yes YesOrNo MustBeNo CFE as a separate "application"
60 # No YesOrNo Yes CFE relocates to RAM as firmware
61 # No YesOrNo No CFE runs from flash as firmware
64 LDSCRIPT = ./cfe.lds
65 LDFLAGS += -g --script $(LDSCRIPT)
66 LDSCRIPT_TEMPLATE = ${ARCH_SRC}/cfe_ldscript.template
68 ifeq ($(strip ${CFG_UNCACHED}),1)
69 GENLDFLAGS += -DCFG_RUNFROMKSEG0=0
70 else
71 GENLDFLAGS += -DCFG_RUNFROMKSEG0=1
72 endif
74 ifeq ($(strip ${CFG_RAMAPP}),1)
75 GENLDFLAGS += -DCFG_RAMAPP=1
76 GENLDFLAGS += -DCFG_RUNFROMKSEG0=1
77 else
78 ifeq ($(strip ${CFG_RELOC}),0)
79 ifeq ($(strip ${CFG_BOOTRAM}),1)
80 GENLDFLAGS += -DCFG_BOOTRAM=1
81 else
82 GENLDFLAGS += -DCFG_BOOTRAM=0
83 endif
84 else
85 CFLAGS += -membedded-pic -mlong-calls
86 GENLDFLAGS += -DCFG_EMBEDDED_PIC=1
87 LDFLAGS += --embedded-relocs
88 endif
89 endif
92 # Add GENLDFLAGS to CFLAGS (we need this stuff in the C code as well)
95 CFLAGS += ${GENLDFLAGS}
98 # Determine target endianness
101 ifeq ($(strip ${CFG_LITTLE}),1)
102 ENDIAN = -EL
103 else
104 ENDIAN = -EB
105 CFLAGS += -EB
106 LDFLAGS += -EB
107 endif
110 # Add the text/data/ROM addresses to the GENLDFLAGS so they
111 # will make it into the linker script.
114 GENLDFLAGS += -DCFE_ROM_START=${CFG_ROM_START}
115 GENLDFLAGS += -DCFE_TEXT_START=${CFG_TEXT_START}
116 GENLDFLAGS += -DCFE_DATA_START=${CFG_DATA_START}
117 GENLDFLAGS += -DCFG_XIP=${CFG_XIP}