Re: [OpenWrt-Devel] [PATCH 1/2 v3] toolchain: add support of ARC architecture
On 2015-11-03 00:27, Alexey Brodkin wrote: > This includes binutils, gcc, gdb and uClibc-ng. > > Latest release of ARC gcc (as of today it is "arc-2015.06") > is based on upstream gcc 4.8.4. > > Sources are available on GitHub, see: > https://github.com/foss-for-synopsys-dwc-arc-processors/gcc > > Latest release of ARC binutils (as of today it is "arc-2015.06") > is based on upstream binutils 2.23. > > Sources are available on GitHub, see: > https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06 > > Latest release of ARC GDB (as of today this is "arc-2015.06-gdb") > is based on upstream gdb 7.9.1. > > Sources are available on GitHub, see: > https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06-gdb > > Note that for binutils and gdb that come from unified git repository > (which is the case for upstream binutils/gdb today) we need to disable > building of gdb in binutils and binutils in gdb hence in binutils: > -->8-- > --disable-sim > --disable-gdb > -->8-- > > and in gdb: > -->8-- > --disable-binutils > --disable-ld > --disable-gas > -->8-- > > Also in gdb we disable sim because if the following breakage while > building with it: > >8 > /usr/bin/env bash ./../common/genmloop.sh -shell /usr/bin/env bash \ > -mono -fast -pbb -switch sem5-switch.c \ > -cpu a5f -infile ./mloop5.in \ > -outfile-suffix 5 > unknown option: bash > Makefile:699: recipe for target 'stamp-5mloop' failed > make[7]: *** [stamp-5mloop] Error 1 > >8 > > Cc: Felix Fietkau> Cc: John Crispin > Signed-off-by: Alexey Brodkin > --- a/toolchain/binutils/Makefile > +++ b/toolchain/binutils/Makefile ]> @@ -17,13 +24,15 @@ ifeq ($(findstring linaro, $(CONFIG_BINUTILS_VERSION)),linaro) >PKG_MD5SUM:=8f9b2b2e049d59b1b86ce9657802a353 >BINUTILS_DIR:=$(PKG_NAME)-linaro-$(PKG_REV) >HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(BINUTILS_DIR) > -else > - PKG_SOURCE_URL:=@GNU/binutils/ > - PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 > +endif > > - ifeq ($(PKG_VERSION),2.25.1) > -PKG_MD5SUM:=ac493a78de4fee895961d025b7905be4 > - endif > +ifneq ($(CONFIG_BINUTILS_VERSION_2_23_ARC),) > + > PKG_SOURCE_URL:=https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/archive/arc-2015.06/ > + PKG_REV:=2015.06 > + PKG_SOURCE:=$(PKG_NAME)-arc-$(PKG_REV).tar.gz > + PKG_MD5SUM:=961a3564de857238c255c381f8e4360b > + BINUTILS_DIR:=$(PKG_NAME)-gdb-arc-$(PKG_REV) > + HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(BINUTILS_DIR) > endif This part is broken, it needs to be indented with spaces instead of tabs. > diff --git a/toolchain/uClibc/Config.version b/toolchain/uClibc/Config.version > index 7804da4..23270dd 100644 > --- a/toolchain/uClibc/Config.version > +++ b/toolchain/uClibc/Config.version > @@ -4,6 +4,7 @@ config UCLIBC_VERSION > default "1.0.8" > > config UCLIBC_VERSION_NG > + default y if !TOOLCHAINOPTS && USE_UCLIBC && arc > bool > depends on USE_UCLIBC > default y Please drop this change, it is unnecessary. - Felix ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 1/2 v3] toolchain: add support of ARC architecture
This includes binutils, gcc, gdb and uClibc-ng. Latest release of ARC gcc (as of today it is "arc-2015.06") is based on upstream gcc 4.8.4. Sources are available on GitHub, see: https://github.com/foss-for-synopsys-dwc-arc-processors/gcc Latest release of ARC binutils (as of today it is "arc-2015.06") is based on upstream binutils 2.23. Sources are available on GitHub, see: https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06 Latest release of ARC GDB (as of today this is "arc-2015.06-gdb") is based on upstream gdb 7.9.1. Sources are available on GitHub, see: https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06-gdb Note that for binutils and gdb that come from unified git repository (which is the case for upstream binutils/gdb today) we need to disable building of gdb in binutils and binutils in gdb hence in binutils: -->8-- --disable-sim --disable-gdb -->8-- and in gdb: -->8-- --disable-binutils --disable-ld --disable-gas -->8-- Also in gdb we disable sim because if the following breakage while building with it: >8 /usr/bin/env bash ./../common/genmloop.sh -shell /usr/bin/env bash \ -mono -fast -pbb -switch sem5-switch.c \ -cpu a5f -infile ./mloop5.in \ -outfile-suffix 5 unknown option: bash Makefile:699: recipe for target 'stamp-5mloop' failed make[7]: *** [stamp-5mloop] Error 1 >8 Cc: Felix FietkauCc: John Crispin Signed-off-by: Alexey Brodkin --- Changes compared to v2: * Rebased on top of the current master. In particular that commit touches uClibc files: http://git.openwrt.org/?p=openwrt.git;a=commit;h=b70a36d1d969f5aa9ad081c9a395633793582a5a Changes compared to v1: * Binutils Kconfig description is now similar to Gcc and uClibc. This allows selection of different versions of binutils. * CONFIG_BINUTILS_VERSION_2_23_ARC is used for deciding if we need to obtain ARC's binutils. * Rebased on current master include/site/arc | 30 +++ include/target.mk | 4 + toolchain/Config.in| 9 +- toolchain/binutils/Config.in | 23 +- toolchain/binutils/Config.version | 17 ++ toolchain/binutils/Makefile| 29 ++- toolchain/gcc/Config.in| 9 + toolchain/gcc/Config.version | 9 +- toolchain/gcc/common.mk| 31 ++- .../001-revert_register_mode_search.patch | 65 ++ .../patches/arc-2015.06/002-weak_data_fix.patch| 42 .../arc-2015.06/003-universal_initializer.patch| 94 .../patches/arc-2015.06/004-case_insensitive.patch | 14 ++ .../patches/arc-2015.06/010-documentation.patch| 23 ++ .../patches/arc-2015.06/020-no-plt-backport.patch | 28 +++ .../gcc/patches/arc-2015.06/100-uclibc-conf.patch | 33 +++ .../210-disable_libsanitizer_off_t_check.patch | 11 + .../arc-2015.06/800-arc-disablelibgmon.patch | 18 ++ .../gcc/patches/arc-2015.06/820-libgcc_pic.patch | 36 +++ .../arc-2015.06/850-use_shared_libgcc.patch| 47 .../patches/arc-2015.06/851-libgcc_no_compat.patch | 12 + .../gcc/patches/arc-2015.06/860-use_eh_frame.patch | 42 .../patches/arc-2015.06/870-ppc_no_crtsavres.patch | 11 + .../patches/arc-2015.06/880-no_java_section.patch | 11 + .../gcc/patches/arc-2015.06/910-mbsd_multi.patch | 253 + .../arc-2015.06/920-specs_nonfatal_getenv.patch| 14 ++ .../arc-2015.06/940-no-clobber-stamp-bits.patch| 11 + toolchain/gdb/Makefile | 19 +- toolchain/uClibc/Config.version| 1 + toolchain/uClibc/common.mk | 1 + toolchain/uClibc/config/arc| 11 + 31 files changed, 927 insertions(+), 31 deletions(-) create mode 100644 include/site/arc create mode 100644 toolchain/binutils/Config.version create mode 100644 toolchain/gcc/patches/arc-2015.06/001-revert_register_mode_search.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/002-weak_data_fix.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/003-universal_initializer.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/004-case_insensitive.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/010-documentation.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/020-no-plt-backport.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/100-uclibc-conf.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/210-disable_libsanitizer_off_t_check.patch create mode 100644 toolchain/gcc/patches/arc-2015.06/800-arc-disablelibgmon.patch create mode 100644