create bsd12 branch

This commit is contained in:
ziggi
2019-12-26 07:26:06 +00:00
commit 5cfdab6bfe
14432 changed files with 2272620 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
#
# $Id$
#
PORTNAME= binutils
PORTVERSION= 2.28
CATEGORIES= devel
MASTER_SITES= http://ftp.gnu.org/gnu/binutils/
PKGNAMEPREFIX= ${TARGET}-
MAINTAINER= homeunix7@gmail.com
COMMENT= GNU binary tools for ${TARGET:U}
LIB_DEPENDS+= libgmp.so:math/libgmp
LIB_DEPENDS+= libmpfr.so:math/libmpfr
TARGET=avr
CONFIGURE_TARGET=#
USES+= gmake tar:bz2
GNU_CONFIGURE= yes
CFLAGS+= -I${WRKSRC}/include -I${LOCALBASE}/include
CPPFLAGS+= -I${WRKSRC}/include -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
CONFIGURE_ARGS+= --target=${TARGET}
CONFIGURE_ARGS+= --with-system-zlib
CONFIGURE_ARGS+= --disable-werror
CONFIGURE_ARGS+= --with-gmp=${LOCALBASE}
CONFIGURE_ARGS+= --with-mpfr=${LOCALBASE}
CONFIGURE_ARGS+= --disable-nls
CONFIGURE_ARGS+= --infodir=${PREFIX}/info/${TARGET}
CONFIGURE_ARGS+= --disable-shared
PLIST_SUB+= TARGET=${TARGET}
PLIST_SUB+= VERSION=${PORTVERSION}
.include <bsd.port.pre.mk>
.if (${OSVERSION} > 1100000)
BUILD_DEPENDS+= makeinfo:system/texinfo
.endif
.include <bsd.port.post.mk>
#EOF

View File

@@ -0,0 +1,2 @@
SHA256 (binutils-2.28.tar.bz2) = 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72
SIZE (binutils-2.28.tar.bz2) = 26556365

View File

@@ -0,0 +1,28 @@
--- bfd/elfnn-aarch64.c.orig 2016-11-20 12:04:44.613621000 +0000
+++ bfd/elfnn-aarch64.c 2016-11-20 12:05:01.143334000 +0000
@@ -4369,7 +4369,9 @@
off = h->got.offset;
BFD_ASSERT (off != (bfd_vma) - 1);
if (!WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, bfd_link_pic (info), h)
- || (bfd_link_pic (info)
+ || ((bfd_link_pic (info)
+ || (!bfd_link_relocatable (info)
+ && (info->export_dynamic || info->dynamic)))
&& SYMBOL_REFERENCES_LOCAL (info, h))
|| (ELF_ST_VISIBILITY (h->other)
&& h->root.type == bfd_link_hash_undefweak))
@@ -8891,6 +8893,14 @@
+ h->root.u.def.section->output_section->vma
+ h->root.u.def.section->output_offset);
}
+ else if (!bfd_link_relocatable (info)
+ && (info->export_dynamic || info->dynamic)
+ && SYMBOL_REFERENCES_LOCAL (info, h))
+ {
+ BFD_ASSERT ((h->got.offset & 1) != 0);
+ rela.r_info = ELFNN_R_INFO (h->dynindx, AARCH64_R (GLOB_DAT));
+ rela.r_addend = 0;
+ }
else
{
do_glob_dat:

View File

@@ -0,0 +1,26 @@
--- bfd/elfxx-sparc.c.orig 2013-11-08 11:13:48.000000000 +0100
+++ bfd/elfxx-sparc.c 2014-10-10 16:30:23.316125000 +0200
@@ -2942,12 +2942,14 @@
Elf_Internal_Rela *relend;
int num_relocs;
bfd_boolean is_vxworks_tls;
+ const struct elf_backend_data *bed;
htab = _bfd_sparc_elf_hash_table (info);
BFD_ASSERT (htab != NULL);
symtab_hdr = &elf_symtab_hdr (input_bfd);
sym_hashes = elf_sym_hashes (input_bfd);
local_got_offsets = elf_local_got_offsets (input_bfd);
+ bed = get_elf_backend_data (output_bfd);
if (elf_hash_table (info)->hgot == NULL)
got_base = 0;
@@ -3528,6 +3530,8 @@
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
+ if (bed->elf_osabi == ELFOSABI_FREEBSD)
+ outrel.r_addend -= osec->vma;
}
outrel.r_info = SPARC_ELF_R_INFO (htab, rel, indx,

View File

@@ -0,0 +1,17 @@
--- ./include/safe-ctype.h.orig 2013-08-31 13:25:21.000000000 +0100
+++ ./include/safe-ctype.h 2013-08-31 13:25:57.000000000 +0100
@@ -119,6 +119,7 @@
including another system header (for instance gnulib's stdint.h).
So we include ctype.h here and then immediately redefine its macros. */
+#if 0
#include <ctype.h>
#undef isalpha
#define isalpha(c) do_not_use_isalpha_with_safe_ctype
@@ -146,5 +147,6 @@
#define toupper(c) do_not_use_toupper_with_safe_ctype
#undef tolower
#define tolower(c) do_not_use_tolower_with_safe_ctype
+#endif
#endif /* SAFE_CTYPE_H */

View File

@@ -0,0 +1,41 @@
--- bfd/config.bfd.orig 2015-07-17 20:05:04.921108109 +0000
+++ bfd/config.bfd 2015-07-17 20:42:54.567978553 +0000
@@ -1084,15 +1084,15 @@
;;
mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
# FreeBSD vectors
- targ_defvec=mips_elf32_ntradfbsd_le_vec
- targ_selvecs="mips_elf32_ntradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf64_tradfbsd_le_vec mips_elf64_tradfbsd_be_vec"
+ targ_defvec=mips_elf64_tradfbsd_le_vec
+ targ_selvecs="mips_elf64_tradfbsd_le_vec mips_elf32_ntradfbsd_le_vec mips_elf32_ntradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf64_tradfbsd_be_vec"
# Generic vectors
targ_selvecs="${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_le_vec mips_elf64_trad_be_vec"
;;
mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu)
# FreeBSD vectors
- targ_defvec=mips_elf32_ntradfbsd_be_vec
- targ_selvecs="mips_elf32_ntradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf64_tradfbsd_be_vec mips_elf64_tradfbsd_le_vec"
+ targ_defvec=mips_elf64_tradfbsd_be_vec
+ targ_selvecs="mips_elf64_tradfbsd_be_vec mips_elf32_ntradfbsd_be_vec mips_elf32_ntradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf64_tradfbsd_le_vec"
# Generic vectors
targ_selvecs="${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_be_vec mips_elf64_trad_le_vec"
;;
--- ld/configure.tgt.orig 2015-07-17 20:52:58.728911150 +0000
+++ ld/configure.tgt 2015-07-17 21:03:29.559869219 +0000
@@ -491,12 +491,12 @@
targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
targ_extra_libpath=$targ_extra_emuls ;;
mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
- targ_emul=elf32ltsmipn32_fbsd
- targ_extra_emuls="elf32ltsmip elf32btsmip elf32ltsmipn32 elf32btsmipn32 elf64ltsmip elf64btsmip elf32ltsmip_fbsd elf32btsmip_fbsd elf32btsmipn32_fbsd elf64ltsmip_fbsd elf64btsmip_fbsd"
+ targ_emul=elf64ltsmip_fbsd
+ targ_extra_emuls="elf32ltsmip_fbsd elf32btsmip_fbsd elf32ltsmipn32_fbsd elf32btsmipn32_fbsd elf64ltsmip_fbsd elf64btsmip_fbsd elf32ltsmip elf32btsmip elf32ltsmipn32 elf32btsmipn32 elf64ltsmip elf64btsmip"
targ_extra_libpath=$targ_extra_emuls ;;
mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu)
- targ_emul=elf32btsmipn32_fbsd
- targ_extra_emuls="elf32ltsmip elf32btsmip elf32ltsmipn32 elf32btsmipn32 elf64ltsmip elf64btsmip elf32ltsmip_fbsd elf32btsmip_fbsd elf32ltsmipn32_fbsd elf64ltsmip_fbsd elf64btsmip_fbsd"
+ targ_emul=elf64btsmip_fbsd
+ targ_extra_emuls="elf32btsmip_fbsd elf32ltsmip_fbsd elf32btsmipn32_fbsd elf32ltsmipn32_fbsd elf64btsmip_fbsd elf64ltsmip_fbsd elf32ltsmip elf32btsmip elf32ltsmipn32 elf32btsmipn32 elf64ltsmip elf64btsmip"
targ_extra_libpath=$targ_extra_emuls ;;
mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu)
targ_emul=elf32ltsmip_fbsd

View File

@@ -0,0 +1,15 @@
The GNU Binutils are a collection of binary tools. The main ones are:
* ld - the GNU linker.
* as - the GNU assembler.
Most of these programs use BFD, the Binary File Descriptor library, to do
low-level manipulation. Many of them also use the opcodes library to assemble
and disassemble machine instructions.
This port may be used as a replacement for the system binutils and support
features from the latest versions of GCC.
For cross-compilation, see the devel/cross-binutils port.
WWW: http://sources.redhat.com/binutils/

View File

@@ -0,0 +1,137 @@
avr/bin/ar
avr/bin/as
avr/bin/ld
avr/bin/nm
avr/bin/objcopy
avr/bin/objdump
avr/bin/ranlib
avr/bin/readelf
avr/bin/strip
avr/lib/ldscripts/avr1.x
avr/lib/ldscripts/avr1.xbn
avr/lib/ldscripts/avr1.xn
avr/lib/ldscripts/avr1.xr
avr/lib/ldscripts/avr1.xu
avr/lib/ldscripts/avr2.x
avr/lib/ldscripts/avr2.xbn
avr/lib/ldscripts/avr2.xn
avr/lib/ldscripts/avr2.xr
avr/lib/ldscripts/avr2.xu
avr/lib/ldscripts/avr25.x
avr/lib/ldscripts/avr25.xbn
avr/lib/ldscripts/avr25.xn
avr/lib/ldscripts/avr25.xr
avr/lib/ldscripts/avr25.xu
avr/lib/ldscripts/avr3.x
avr/lib/ldscripts/avr3.xbn
avr/lib/ldscripts/avr3.xn
avr/lib/ldscripts/avr3.xr
avr/lib/ldscripts/avr3.xu
avr/lib/ldscripts/avr31.x
avr/lib/ldscripts/avr31.xbn
avr/lib/ldscripts/avr31.xn
avr/lib/ldscripts/avr31.xr
avr/lib/ldscripts/avr31.xu
avr/lib/ldscripts/avr35.x
avr/lib/ldscripts/avr35.xbn
avr/lib/ldscripts/avr35.xn
avr/lib/ldscripts/avr35.xr
avr/lib/ldscripts/avr35.xu
avr/lib/ldscripts/avr4.x
avr/lib/ldscripts/avr4.xbn
avr/lib/ldscripts/avr4.xn
avr/lib/ldscripts/avr4.xr
avr/lib/ldscripts/avr4.xu
avr/lib/ldscripts/avr5.x
avr/lib/ldscripts/avr5.xbn
avr/lib/ldscripts/avr5.xn
avr/lib/ldscripts/avr5.xr
avr/lib/ldscripts/avr5.xu
avr/lib/ldscripts/avr51.x
avr/lib/ldscripts/avr51.xbn
avr/lib/ldscripts/avr51.xn
avr/lib/ldscripts/avr51.xr
avr/lib/ldscripts/avr51.xu
avr/lib/ldscripts/avr6.x
avr/lib/ldscripts/avr6.xbn
avr/lib/ldscripts/avr6.xn
avr/lib/ldscripts/avr6.xr
avr/lib/ldscripts/avr6.xu
avr/lib/ldscripts/avrtiny.x
avr/lib/ldscripts/avrtiny.xbn
avr/lib/ldscripts/avrtiny.xn
avr/lib/ldscripts/avrtiny.xr
avr/lib/ldscripts/avrtiny.xu
avr/lib/ldscripts/avrxmega1.x
avr/lib/ldscripts/avrxmega1.xbn
avr/lib/ldscripts/avrxmega1.xn
avr/lib/ldscripts/avrxmega1.xr
avr/lib/ldscripts/avrxmega1.xu
avr/lib/ldscripts/avrxmega2.x
avr/lib/ldscripts/avrxmega2.xbn
avr/lib/ldscripts/avrxmega2.xn
avr/lib/ldscripts/avrxmega2.xr
avr/lib/ldscripts/avrxmega2.xu
avr/lib/ldscripts/avrxmega3.x
avr/lib/ldscripts/avrxmega3.xbn
avr/lib/ldscripts/avrxmega3.xn
avr/lib/ldscripts/avrxmega3.xr
avr/lib/ldscripts/avrxmega3.xu
avr/lib/ldscripts/avrxmega4.x
avr/lib/ldscripts/avrxmega4.xbn
avr/lib/ldscripts/avrxmega4.xn
avr/lib/ldscripts/avrxmega4.xr
avr/lib/ldscripts/avrxmega4.xu
avr/lib/ldscripts/avrxmega5.x
avr/lib/ldscripts/avrxmega5.xbn
avr/lib/ldscripts/avrxmega5.xn
avr/lib/ldscripts/avrxmega5.xr
avr/lib/ldscripts/avrxmega5.xu
avr/lib/ldscripts/avrxmega6.x
avr/lib/ldscripts/avrxmega6.xbn
avr/lib/ldscripts/avrxmega6.xn
avr/lib/ldscripts/avrxmega6.xr
avr/lib/ldscripts/avrxmega6.xu
avr/lib/ldscripts/avrxmega7.x
avr/lib/ldscripts/avrxmega7.xbn
avr/lib/ldscripts/avrxmega7.xn
avr/lib/ldscripts/avrxmega7.xr
avr/lib/ldscripts/avrxmega7.xu
bin/avr-addr2line
bin/avr-ar
bin/avr-as
bin/avr-c++filt
bin/avr-elfedit
bin/avr-gprof
bin/avr-ld
bin/avr-nm
bin/avr-objcopy
bin/avr-objdump
bin/avr-ranlib
bin/avr-readelf
bin/avr-size
bin/avr-strings
bin/avr-strip
man/man1/avr-addr2line.1.gz
man/man1/avr-ar.1.gz
man/man1/avr-as.1.gz
man/man1/avr-c++filt.1.gz
man/man1/avr-dlltool.1.gz
man/man1/avr-elfedit.1.gz
man/man1/avr-gprof.1.gz
man/man1/avr-ld.1.gz
man/man1/avr-nlmconv.1.gz
man/man1/avr-nm.1.gz
man/man1/avr-objcopy.1.gz
man/man1/avr-objdump.1.gz
man/man1/avr-ranlib.1.gz
man/man1/avr-readelf.1.gz
man/man1/avr-size.1.gz
man/man1/avr-strings.1.gz
man/man1/avr-strip.1.gz
man/man1/avr-windmc.1.gz
man/man1/avr-windres.1.gz
@dir avr/bin
@dir avr/lib/ldscripts
@dir avr/lib
@dir avr