toolchain/binutils: add binutils 2.37
Tested on ath79/generic, without issues. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
This commit is contained in:
		 Rui Salvaterra
					Rui Salvaterra
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							fb6b824bff
						
					
				
				
					commit
					d63fbfce70
				
			| @@ -21,6 +21,10 @@ choice | ||||
| 	config BINUTILS_USE_VERSION_2_36_1 | ||||
| 		bool "Binutils 2.36.1" | ||||
| 		select BINUTILS_VERSION_2_36_1 | ||||
|  | ||||
| 	config BINUTILS_USE_VERSION_2_37 | ||||
| 		bool "Binutils 2.37" | ||||
| 		select BINUTILS_VERSION_2_37 | ||||
| endchoice | ||||
|  | ||||
| config EXTRA_BINUTILS_CONFIG_OPTIONS | ||||
|   | ||||
| @@ -11,9 +11,13 @@ config BINUTILS_VERSION_2_35_2 | ||||
| config BINUTILS_VERSION_2_36_1 | ||||
| 	bool | ||||
|  | ||||
| config BINUTILS_VERSION_2_37 | ||||
| 	bool | ||||
|  | ||||
| config BINUTILS_VERSION | ||||
| 	string | ||||
| 	default "2.32"			if BINUTILS_VERSION_2_32 | ||||
| 	default "2.34"			if BINUTILS_VERSION_2_34 | ||||
| 	default "2.35.2"		if BINUTILS_VERSION_2_35_2 | ||||
| 	default "2.36.1"		if BINUTILS_VERSION_2_36_1 | ||||
| 	default "2.37"			if BINUTILS_VERSION_2_37 | ||||
|   | ||||
| @@ -31,6 +31,10 @@ ifeq ($(PKG_VERSION),2.36.1) | ||||
|   PKG_HASH:=e81d9edf373f193af428a0f256674aea62a9d74dfe93f65192d4eae030b0f3b0 | ||||
| endif | ||||
|  | ||||
| ifeq ($(PKG_VERSION),2.37) | ||||
|   PKG_HASH:=820d9724f020a3e69cb337893a0b63c2db161dadcb0e06fc11dc29eb1e84a32c | ||||
| endif | ||||
|  | ||||
| HOST_BUILD_PARALLEL:=1 | ||||
|  | ||||
| PATCH_DIR:=./patches/$(PKG_VERSION) | ||||
|   | ||||
| @@ -0,0 +1,22 @@ | ||||
| --- a/ld/Makefile.am | ||||
| +++ b/ld/Makefile.am | ||||
| @@ -50,7 +50,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS) | ||||
|  # We put the scripts in the directory $(scriptdir)/ldscripts. | ||||
|  # We can't put the scripts in $(datadir) because the SEARCH_DIR | ||||
|  # directives need to be different for native and cross linkers. | ||||
| -scriptdir = $(tooldir)/lib | ||||
| +scriptdir = $(libdir) | ||||
|   | ||||
|  EMUL = @EMUL@ | ||||
|  EMULATION_OFILES = @EMULATION_OFILES@ | ||||
| --- a/ld/Makefile.in | ||||
| +++ b/ld/Makefile.in | ||||
| @@ -561,7 +561,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS) | ||||
|  # We put the scripts in the directory $(scriptdir)/ldscripts. | ||||
|  # We can't put the scripts in $(datadir) because the SEARCH_DIR | ||||
|  # directives need to be different for native and cross linkers. | ||||
| -scriptdir = $(tooldir)/lib | ||||
| +scriptdir = $(libdir) | ||||
|  BASEDIR = $(srcdir)/.. | ||||
|  BFDDIR = $(BASEDIR)/bfd | ||||
|  INCDIR = $(BASEDIR)/include | ||||
| @@ -0,0 +1,18 @@ | ||||
| --- a/bfd/elfxx-mips.c | ||||
| +++ b/bfd/elfxx-mips.c | ||||
| @@ -8057,6 +8057,7 @@ _bfd_mips_elf_create_dynamic_sections (b | ||||
|   | ||||
|        name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING"; | ||||
|        bh = NULL; | ||||
| +      if (0) { | ||||
|        if (!(_bfd_generic_link_add_one_symbol | ||||
|  	    (info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0, | ||||
|  	     NULL, false, get_elf_backend_data (abfd)->collect, &bh))) | ||||
| @@ -8069,6 +8070,7 @@ _bfd_mips_elf_create_dynamic_sections (b | ||||
|   | ||||
|        if (! bfd_elf_link_record_dynamic_symbol (info, h)) | ||||
|  	return false; | ||||
| +      } | ||||
|   | ||||
|        if (! mips_elf_hash_table (info)->use_rld_obj_head) | ||||
|  	{ | ||||
| @@ -0,0 +1,38 @@ | ||||
| --- a/bfd/config.bfd | ||||
| +++ b/bfd/config.bfd | ||||
| @@ -891,12 +891,12 @@ case "${targ}" in | ||||
|      targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" | ||||
|      ;; | ||||
|    mips64*el-*-linux*) | ||||
| -    targ_defvec=mips_elf32_ntrad_le_vec | ||||
| -    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" | ||||
| +    targ_defvec=mips_elf64_trad_le_vec | ||||
| +    targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_be_vec" | ||||
|      ;; | ||||
|    mips64*-*-linux*) | ||||
| -    targ_defvec=mips_elf32_ntrad_be_vec | ||||
| -    targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" | ||||
| +    targ_defvec=mips_elf64_trad_be_vec | ||||
| +    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec" | ||||
|      ;; | ||||
|    mips*el-*-linux*) | ||||
|      targ_defvec=mips_elf32_trad_le_vec | ||||
| --- a/ld/configure.tgt | ||||
| +++ b/ld/configure.tgt | ||||
| @@ -530,12 +530,12 @@ mips*-*-vxworks*)	targ_emul=elf32ebmipvx | ||||
|  			;; | ||||
|  mips*-*-windiss)	targ_emul=elf32mipswindiss | ||||
|  			;; | ||||
| -mips64*el-*-linux-*)	targ_emul=elf32ltsmipn32 | ||||
| -			targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" | ||||
| +mips64*el-*-linux-*)	targ_emul=elf64ltsmip | ||||
| +			targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip" | ||||
|  			targ_extra_libpath=$targ_extra_emuls | ||||
|  			;; | ||||
| -mips64*-*-linux-*)	targ_emul=elf32btsmipn32 | ||||
| -			targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" | ||||
| +mips64*-*-linux-*)	targ_emul=elf64btsmip | ||||
| +			targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip" | ||||
|  			targ_extra_libpath=$targ_extra_emuls | ||||
|  			;; | ||||
|  mips*el-*-linux-*)	targ_emul=elf32ltsmip | ||||
		Reference in New Issue
	
	Block a user