- improved tool chain
git-svn-id: http://moon:8086/svn/mips@95 a8ebac50-d88d-4704-bea3-6648445a41b3
This commit is contained in:
+9
-11
@@ -9,16 +9,14 @@ endif
|
|||||||
|
|
||||||
ifeq ($(ENDIANESS),eb)
|
ifeq ($(ENDIANESS),eb)
|
||||||
ENDIAN_FLAGS=-EB
|
ENDIAN_FLAGS=-EB
|
||||||
CFLAGS:=$(ENDIAN_FLAGS) -specs=specs/eb/$(SPECNAME)
|
|
||||||
else
|
else
|
||||||
ENDIAN_FLAGS=-EL
|
ENDIAN_FLAGS=-EL
|
||||||
CFLAGS:=$(ENDIAN_FLAGS) -specs=specs/$(SPECNAME)
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
BUILD_DIR=build/$(BOARD)/$(ENDIANESS)
|
BUILD_DIR=build/$(BOARD)/$(ENDIANESS)
|
||||||
LSYS_BUILD_DIR=libsys/build/$(BOARD)/$(ENDIANESS)
|
LSYS_BUILD_DIR=libsys/build/$(BOARD)/$(ENDIANESS)
|
||||||
|
|
||||||
CFLAGS+=-g -msoft-float -O2 -march=r3000 -I. -Ilibsys -Ilibsys/boards/$(BOARD) -L$(LSYS_BUILD_DIR) -Wl,-M
|
CFLAGS:=$(ENDIAN_FLAGS) -Tlink/link.ld -g -msoft-float -O2 -march=r3000 -I. -Ilibsys -Ilibsys/boards/$(BOARD) -L$(LSYS_BUILD_DIR) -Wl,-M
|
||||||
ifeq ($(TLB),yes)
|
ifeq ($(TLB),yes)
|
||||||
CFLAGS+=-DSYS_IO_BASE=0xAC000000 -DSDRAM_BASE=0x80000000 -DFLASH_BASE_IO=0xA4000000 -DFLASH_BASE_MEM=0x88000000
|
CFLAGS+=-DSYS_IO_BASE=0xAC000000 -DSDRAM_BASE=0x80000000 -DFLASH_BASE_IO=0xA4000000 -DFLASH_BASE_MEM=0x88000000
|
||||||
else
|
else
|
||||||
@@ -32,14 +30,14 @@ else
|
|||||||
endif
|
endif
|
||||||
PACKHEX=$(MIPS_HOME)/tools/packhex
|
PACKHEX=$(MIPS_HOME)/tools/packhex
|
||||||
|
|
||||||
LIBS=-lm -lc -lsys
|
LIBS=-lm -lc -lsys -lc
|
||||||
|
|
||||||
AS=mipsel-elf-as
|
AS=mips-elf-as
|
||||||
AR=mipsel-elf-ar
|
AR=mips-elf-ar
|
||||||
CC=mipsel-elf-gcc
|
CC=mips-elf-gcc
|
||||||
LD=mipsel-elf-ld
|
LD=mips-elf-ld
|
||||||
OBJDUMP=mipsel-elf-objdump
|
OBJDUMP=mips-elf-objdump
|
||||||
OBJCOPY=mipsel-elf-objcopy
|
OBJCOPY=mips-elf-objcopy
|
||||||
|
|
||||||
PROG-ml402 = $(addprefix $(BUILD_DIR)/, hello.elf testbench.elf test_irq.elf dhry.elf queens.elf stanford.elf paranoia.elf rmd160_test.elf Bessel.elf whet.elf phrasen.elf dttl.elf richards_benchmark.elf test_exception.elf life.elf r3.elf gunzip.elf basic_math.elf jman_patches.elf jman_patchmeshes.elf jman_polys.elf test_hpi.elf test_vga.elf test_fft.elf)
|
PROG-ml402 = $(addprefix $(BUILD_DIR)/, hello.elf testbench.elf test_irq.elf dhry.elf queens.elf stanford.elf paranoia.elf rmd160_test.elf Bessel.elf whet.elf phrasen.elf dttl.elf richards_benchmark.elf test_exception.elf life.elf r3.elf gunzip.elf basic_math.elf jman_patches.elf jman_patchmeshes.elf jman_polys.elf test_hpi.elf test_vga.elf test_fft.elf)
|
||||||
|
|
||||||
|
|||||||
@@ -2,14 +2,12 @@ ENDIAN='big'
|
|||||||
|
|
||||||
ifeq ($(ENDIAN), 'big')
|
ifeq ($(ENDIAN), 'big')
|
||||||
ENDIAN_FLAGS=-EB
|
ENDIAN_FLAGS=-EB
|
||||||
LIB_DIRS=-L $(MIPS_TOOLS_PREFIX)/mipsel-elf/lib/eb -L $(MIPS_TOOLS_PREFIX)/lib/gcc/mipsel-elf/$(MIPS_GCC_VER)/eb
|
|
||||||
else
|
else
|
||||||
ENDIAN_FLAGS=-EL
|
ENDIAN_FLAGS=-EL
|
||||||
LIB_DIRS=-L $(MIPS_TOOLS_PREFIX)/mipsel-elf/lib -L $(MIPS_TOOLS_PREFIX)/lib/gcc/mipsel-elf/$(MIPS_GCC_VER)
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CFLAGS=$(ENDIAN_FLAGS) -Os -I. -I../ -I../libsys -msoft-float -march=r3000 -G0
|
CFLAGS=$(ENDIAN_FLAGS) -Os -I. -I../ -I../libsys -msoft-float -march=r3000 -G0
|
||||||
LFLAGS=$(ENDIAN_FLAGS) -M
|
LFLAGS=$(ENDIAN_FLAGS)
|
||||||
|
|
||||||
ifeq ($(TLB),yes)
|
ifeq ($(TLB),yes)
|
||||||
CFLAGS+=-DSYS_IO_BASE=0xAC000000 -DSDRAM_BASE=0x80000000 -DFLASH_BASE_IO=0xA4000000 -DFLASH_BASE_MEM=0x88000000
|
CFLAGS+=-DSYS_IO_BASE=0xAC000000 -DSDRAM_BASE=0x80000000 -DFLASH_BASE_IO=0xA4000000 -DFLASH_BASE_MEM=0x88000000
|
||||||
@@ -22,10 +20,10 @@ endif
|
|||||||
LIBS=-lc -lgcc
|
LIBS=-lc -lgcc
|
||||||
CFLAGS += -DXCP_SIZE=4096
|
CFLAGS += -DXCP_SIZE=4096
|
||||||
|
|
||||||
CC=mipsel-elf-gcc
|
CC=mips-elf-gcc
|
||||||
LD=mipsel-elf-ld
|
LD=mips-elf-gcc
|
||||||
OBJDUMP=mipsel-elf-objdump
|
OBJDUMP=mips-elf-objdump
|
||||||
OBJCOPY=mipsel-elf-objcopy
|
OBJCOPY=mips-elf-objcopy
|
||||||
ROMGEN=$(MIPS_HOME)/tools/romgen
|
ROMGEN=$(MIPS_HOME)/tools/romgen
|
||||||
|
|
||||||
.PHONY: libsys
|
.PHONY: libsys
|
||||||
|
|||||||
+7
-7
@@ -13,7 +13,7 @@ else
|
|||||||
ENDIAN_FLAGS=-EB
|
ENDIAN_FLAGS=-EB
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CFLAGS=$(ENDIAN_FLAGS) -g -msoft-float -O2 -march=r3000 -I. -Wl,-M -Iboards/$(BOARD) -D$(BOARD)
|
CFLAGS=$(ENDIAN_FLAGS) -g -msoft-float -O2 -march=r3000 -I. -Iboards/$(BOARD) -D$(BOARD)
|
||||||
|
|
||||||
ifeq ($(TLB),yes)
|
ifeq ($(TLB),yes)
|
||||||
CFLAGS+=-DSYS_IO_BASE=0xAC000000 -DSDRAM_BASE=0x80000000 -DFLASH_BASE_IO=0xA4000000 -DFLASH_BASE_MEM=0x88000000
|
CFLAGS+=-DSYS_IO_BASE=0xAC000000 -DSDRAM_BASE=0x80000000 -DFLASH_BASE_IO=0xA4000000 -DFLASH_BASE_MEM=0x88000000
|
||||||
@@ -23,12 +23,12 @@ endif
|
|||||||
|
|
||||||
BUILD_DIR=./build/$(BOARD)/$(ENDIANESS)
|
BUILD_DIR=./build/$(BOARD)/$(ENDIANESS)
|
||||||
|
|
||||||
AS=mipsel-elf-as
|
AS=mips-elf-as
|
||||||
AR=mipsel-elf-ar
|
AR=mips-elf-ar
|
||||||
CC=mipsel-elf-gcc
|
CC=mips-elf-gcc
|
||||||
LD=mipsel-elf-ld
|
LD=mips-elf-ld
|
||||||
OBJDUMP=mipsel-elf-objdump
|
OBJDUMP=mips-elf-objdump
|
||||||
OBJCOPY=mipsel-elf-objcopy
|
OBJCOPY=mips-elf-objcopy
|
||||||
FLASHGEN=flashgen
|
FLASHGEN=flashgen
|
||||||
|
|
||||||
OBJS-ml402=$(addprefix $(BUILD_DIR)/, libsys.o xcpt.o syscalls.o cop0.o irq.o mips_dbg.o mips_dis.o mips_ps2.o mips_gfx.o console.o screen.o uart.o board.o gpio.o)
|
OBJS-ml402=$(addprefix $(BUILD_DIR)/, libsys.o xcpt.o syscalls.o cop0.o irq.o mips_dbg.o mips_dis.o mips_ps2.o mips_gfx.o console.o screen.o uart.o board.o gpio.o)
|
||||||
|
|||||||
+12
-10
@@ -1,5 +1,5 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
TARGET=mipsel-elf
|
TARGET=mips-elf
|
||||||
PREFIX=$(pwd)/install
|
PREFIX=$(pwd)/install
|
||||||
|
|
||||||
SRC_BINUTILS=binutils-2.24
|
SRC_BINUTILS=binutils-2.24
|
||||||
@@ -32,7 +32,7 @@ if [ ! -e ./$SRC_BINUTILS-build ]; then
|
|||||||
mkdir -p $SRC_BINUTILS-build
|
mkdir -p $SRC_BINUTILS-build
|
||||||
cd $SRC_BINUTILS-build
|
cd $SRC_BINUTILS-build
|
||||||
../$SRC_BINUTILS/configure --target=$TARGET --prefix=$PREFIX || exit 1
|
../$SRC_BINUTILS/configure --target=$TARGET --prefix=$PREFIX || exit 1
|
||||||
make || exit 1
|
make -j4 || exit 1
|
||||||
make install || exit 1
|
make install || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
else
|
else
|
||||||
@@ -61,7 +61,7 @@ if [ ! -e ./$SRC_GMP-build ]; then
|
|||||||
mkdir -p $SRC_GMP-build
|
mkdir -p $SRC_GMP-build
|
||||||
cd $SRC_GMP-build
|
cd $SRC_GMP-build
|
||||||
../$SRC_GMP/configure --prefix=$PREFIX || exit 1
|
../$SRC_GMP/configure --prefix=$PREFIX || exit 1
|
||||||
make || exit 1
|
make -j4 || exit 1
|
||||||
make check || exit 1
|
make check || exit 1
|
||||||
make install || exit 1
|
make install || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
@@ -91,7 +91,7 @@ if [ ! -e ./$SRC_MPFR-build ]; then
|
|||||||
mkdir -p $SRC_MPFR-build
|
mkdir -p $SRC_MPFR-build
|
||||||
cd $SRC_MPFR-build
|
cd $SRC_MPFR-build
|
||||||
../$SRC_MPFR/configure --prefix=$PREFIX --with-gmp=$PREFIX || exit 1
|
../$SRC_MPFR/configure --prefix=$PREFIX --with-gmp=$PREFIX || exit 1
|
||||||
make || exit 1
|
make -j4 || exit 1
|
||||||
make check || exit 1
|
make check || exit 1
|
||||||
make install || exit 1
|
make install || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
@@ -121,7 +121,7 @@ if [ ! -e ./$SRC_MPC-build ]; then
|
|||||||
mkdir -p $SRC_MPC-build
|
mkdir -p $SRC_MPC-build
|
||||||
cd $SRC_MPC-build
|
cd $SRC_MPC-build
|
||||||
../$SRC_MPC/configure --prefix=$PREFIX --with-gmp=$PREFIX --with-mpfr=$PREFIX || exit 1
|
../$SRC_MPC/configure --prefix=$PREFIX --with-gmp=$PREFIX --with-mpfr=$PREFIX || exit 1
|
||||||
make || exit 1
|
make -j4 || exit 1
|
||||||
make check || exit 1
|
make check || exit 1
|
||||||
make install || exit 1
|
make install || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
@@ -171,13 +171,15 @@ if [ ! -e ./$SRC_GCC-build ]; then
|
|||||||
echo Building $SRC_GCC
|
echo Building $SRC_GCC
|
||||||
mkdir -p $SRC_GCC-build
|
mkdir -p $SRC_GCC-build
|
||||||
cd $SRC_GCC-build
|
cd $SRC_GCC-build
|
||||||
../$SRC_GCC/configure --target=$TARGET --prefix=$PREFIX --with-gmp=$PREFIX --with-mpfr=$PREFIX --with-mpc=$PREFIX --with-float=soft --with-newlib --verbose --enable-languages="c,c++" || exit 1
|
../$SRC_GCC/configure --target=$TARGET --prefix=$PREFIX --with-gmp=$PREFIX --with-mpfr=$PREFIX --with-mpc=$PREFIX --with-float=soft --with-newlib --verbose --enable-languages="c,c++" --with-gnu-as --with-gnu-ld || exit 1
|
||||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PREFIX/lib make all || exit 1
|
make -j4 all || exit 1
|
||||||
make info || exit 1
|
make info || exit 1
|
||||||
make install || exit 1
|
make install || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
echo $PREFIX/lib >>/etc/ld.so.conf.d/local.conf
|
echo $PREFIX/lib >local.conf
|
||||||
ldconfig
|
echo $PREFIX/$TARGET/lib >>local.conf
|
||||||
|
sudo mv local.conf /etc/ld.so.conf.d/local.conf
|
||||||
|
sudo ldconfig
|
||||||
else
|
else
|
||||||
echo $SRC_GCC is already built.
|
echo $SRC_GCC is already built.
|
||||||
fi
|
fi
|
||||||
@@ -185,7 +187,7 @@ fi
|
|||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
# 50. GDB bauen und installieren
|
# 50. GDB bauen und installieren
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
if [ ! -e $SRC_GDB.tar.bz2 ]; then
|
if [ ! -e $SRC_GDB.tar.xz ]; then
|
||||||
echo Downloading $SRC_GDB
|
echo Downloading $SRC_GDB
|
||||||
wget ftp://ftp.gnu.org/gnu/gdb/$SRC_GDB.tar.xz || exit 1
|
wget ftp://ftp.gnu.org/gnu/gdb/$SRC_GDB.tar.xz || exit 1
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user