diff options
author | Palmer Dabbelt <palmer@dabbelt.com> | 2018-12-12 14:32:02 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-12 14:32:02 -0800 |
commit | 25bfceacc996d0cdd7fec50593d52a37a6c74ae1 (patch) | |
tree | d63cf3fec52e70fb8d1f27b6c06be70a1b4eec68 | |
parent | baeeb8fd497a99b3c141d7494309ec2e64f19bdf (diff) | |
parent | c63b035b06cf236e5b4eae7844e3d5ded9c8c858 (diff) |
Merge pull request #109 from sifive/rm-toolchain
Remove the GNU toolchain and OpenOCD submodules
-rw-r--r-- | .gitmodules | 6 | ||||
-rw-r--r-- | Makefile | 87 | ||||
-rw-r--r-- | README.md | 32 | ||||
m--------- | openocd | 0 | ||||
m--------- | riscv-gnu-toolchain | 0 |
5 files changed, 7 insertions, 118 deletions
diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index eb6b315..0000000 --- a/.gitmodules +++ /dev/null @@ -1,6 +0,0 @@ -[submodule "openocd"] - path = openocd - url = https://github.com/sifive/riscv-openocd.git -[submodule "riscv-gnu-toolchain"] - path = riscv-gnu-toolchain - url = https://github.com/sifive/riscv-gnu-toolchain.git @@ -19,9 +19,6 @@ GDB_PORT ?= 3333 # Variables the user probably shouldn't override. builddir := work/build -installdir := work/install -toolchain_srcdir := riscv-gnu-toolchain -openocd_srcdir := openocd ############################################################# # BSP Loading @@ -68,18 +65,6 @@ help: @echo " SiFive Freedom E Software Development Kit " @echo " Makefile targets:" @echo "" - @echo " tools [BOARD=$(BOARD)]:" - @echo " Install compilation & debugging tools to target your desired board." - @echo "" - @echo " toolchain-clean:" - @echo " Removes the installed toolchain." - @echo "" - @echo " openocd-clean:" - @echo " Removes the locally built instance of OpenOCD." - @echo "" - @echo " uninstall:" - @echo " Uninstall the compilation & debugging tools." - @echo "" @echo " software [PROGRAM=$(PROGRAM) BOARD=$(BOARD)]:" @echo " Build a software program to load with the" @echo " debugger." @@ -103,12 +88,9 @@ help: @echo " For more information, visit dev.sifive.com" ############################################################# -# This section is for tool installation +# This section is for tool configuration ############################################################# -.PHONY: tools -tools: riscv-gnu-toolchain openocd -# Pointers to various important tools in the toolchain. toolchain_builddir := $(builddir)/riscv-gnu-toolchain/riscv64-unknown-elf toolchain_prefix := $(toolchain_builddir)/prefix @@ -122,73 +104,6 @@ RISCV_AR := $(abspath $(RISCV_PATH)/bin/riscv64-unknown-elf-ar) PATH := $(abspath $(RISCV_PATH)/bin):$(PATH) -$(RISCV_GCC) $(RISCV_GXX) $(RISCV_OBJDUMP) $(RISCV_GDB) $(RISCV_AR): $(toolchain_builddir)/install.stamp - touch -c $@ - -# Builds riscv-gnu-toolchain, which contains GCC and all the supporting -# software for C code. -.PHONY: riscv-gnu-toolchain -riscv-gnu-toolchain: $(RISCV_GCC) $(RISCV_GXX) $(RISCV_OBJDUMP) $(RISCV_GDB) $(RISCV_AR) - -$(builddir)/riscv-gnu-toolchain/%/install.stamp: $(builddir)/riscv-gnu-toolchain/%/build.stamp - $(MAKE) -C $(dir $@) install - date > $@ - -$(builddir)/riscv-gnu-toolchain/%/build.stamp: $(builddir)/riscv-gnu-toolchain/%/configure.stamp - $(MAKE) -C $(dir $@) - date > $@ - -$(builddir)/riscv-gnu-toolchain/%-elf/configure.stamp: - $(eval $@_TUPLE := $(patsubst $(builddir)/riscv-gnu-toolchain/%-elf/configure.stamp,%,$@)) - rm -rf $(dir $@) - mkdir -p $(dir $@) - cd $(dir $@); $(abspath $(toolchain_srcdir)/configure) \ - --prefix=$(abspath $(dir $@)/prefix) \ - --disable-linux \ - --enable-multilib \ - --with-cmodel=medany \ - --with-libgcc-cmodel - date > $@ - -.PHONY: toolchain-clean -toolchain-clean: - rm -rf $(toolchain_builddir) - -# Builds and installs OpenOCD, which translates GDB into JTAG for debugging and -# initializing the target. -openocd_builddir := $(builddir)/openocd -openocd_prefix := $(openocd_builddir)/prefix - -RISCV_OPENOCD_PATH ?= $(openocd_prefix) -RISCV_OPENOCD ?= $(RISCV_OPENOCD_PATH)/bin/openocd - -.PHONY: openocd -openocd: $(RISCV_OPENOCD) - -$(RISCV_OPENOCD): $(openocd_builddir)/install.stamp - touch -c $@ - -$(openocd_builddir)/install.stamp: $(openocd_builddir)/build.stamp - $(MAKE) -C $(dir $@) install - date > $@ - -$(openocd_builddir)/build.stamp: $(openocd_builddir)/configure.stamp - $(MAKE) -C $(dir $@) - date > $@ - -$(openocd_builddir)/configure.stamp: - rm -rf $(dir $@) - mkdir -p $(dir $@) - cd $(abspath $(openocd_srcdir)); autoreconf -i - cd $(dir $@); $(abspath $(openocd_srcdir)/configure) \ - --prefix=$(abspath $(dir $@)/prefix) \ - --disable-werror - date > $@ - -.PHONY: openocd-clean -openocd-clean: - rm -rf $(openocd_builddir) - ############################################################# # This Section is for Software Compilation ############################################################# @@ -4,8 +4,6 @@ This repository, maintained by SiFive, Inc, makes it easy to get started develop ### Contents ### -* RISC-V Software Toolchain -* RISC-V Debugging Toolchain * Board Support Packages for FE310 and Development Kits * A Few Example Programs @@ -24,33 +22,15 @@ cd freedom-e-sdk make help ``` -#### Building Tools from Source #### +#### Install the RISC-V Toolchain #### -Ubuntu packages needed: +The RISC-V GNU Toolchain and OpenOCD are available from the SiFive Website at - $ sudo apt-get install autoconf automake libmpc-dev libmpfr-dev libgmp-dev gawk bison flex texinfo libtool libusb-1.0-0-dev make g++ pkg-config libexpat1-dev zlib1g-dev +https://www.sifive.com/boards -Next, build the tools: - -``` -cd freedom-e-sdk -make tools [BOARD=freedom-e300-hifive1] -``` - -If your machine has enough resources, you can speed up the build process by adding `-j n` to `make`, where `n` is the number of processors of your build system. - - -#### Using Pre-Built Binary Tools #### - -If you would like to avoid compiling the tools from source, they are -available as pre-built binaries from - -https://www.sifive.com/products/tools - -For OpenOCD and/or RISC-V GNU Toolchain, -download the .tar.gz for your platform, and unpack it to -your desired location. Then, use the `RISCV_PATH` and `RISCV_OPENOCD_PATH` -variables when attempting to use the tools: +For OpenOCD and/or RISC-V GNU Toolchain, download the .tar.gz for your platform, +and unpack it to your desired location. Then, use the `RISCV_PATH` and +`RISCV_OPENOCD_PATH` variables when attempting to use the tools: ``` cp openocd-<date>-<platform>.tar.gz /my/desired/location/ diff --git a/openocd b/openocd deleted file mode 160000 -Subproject 29d37f75a977125127be2760be9e465d2da095a diff --git a/riscv-gnu-toolchain b/riscv-gnu-toolchain deleted file mode 160000 -Subproject efa1d4cc1ab2af031332badf343add080990b82 |