]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Backport.
authorTristan Gingold <gingold@adacore.com>
Fri, 1 Apr 2011 12:04:29 +0000 (12:04 +0000)
committerTristan Gingold <gingold@adacore.com>
Fri, 1 Apr 2011 12:04:29 +0000 (12:04 +0000)
Modified files:
gas            : ChangeLog configure.tgt
gas/config     : tc-i386.c
bfd            : ChangeLog config.bfd configure configure.in
                 libbfd.h
ld             : ChangeLog configure.host configure.tgt ldlex.l
Added files:
gas/config     : te-dragonfly.h

Log message:
Add support for DragonFlyBSD target.

bfd/ChangeLog
bfd/config.bfd
bfd/configure
bfd/configure.in
gas/ChangeLog
gas/config/tc-i386.c
gas/configure.tgt
ld/ChangeLog
ld/configure.host
ld/configure.tgt
ld/ldlex.l

index 5b32cddbd6035fa69a07a1352b23bb77d6039f15..5e0380016736b7f8957f1e276f3fdfa8c2c92a3a 100644 (file)
@@ -1,3 +1,9 @@
+2011-03-26  John Marino  <binutils@marino.st>
+
+       * config.bfd: Add x86_64-*-dragonfly*, fix i386-*-dragonfly*.
+       * configure.in: Delete unused bfd_elf32_i386_dragonfly_vec.
+       * configure: Regenerate.
+
 2011-03-24  Alan Modra  <amodra@gmail.com>
 
        * elf32-ppc.c (ppc_elf_tls_optimize): Catch more cases where
index 2de94a45b0bfaaf0700311f14e83b34a499e3cde..fbf77ade74f87360871cdc8c2cef327b7cf1ec57 100644 (file)
@@ -551,13 +551,17 @@ case "${targ}" in
     targ_defvec=i386bsd_vec
     targ_underscore=yes
     ;;
+  i[3-7]86-*-dragonfly*)
+    targ_defvec=bfd_elf32_i386_vec
+    targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec"
+    ;;
   i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \
   i[3-7]86-*-freebsd[12])
     targ_defvec=i386freebsd_vec
     targ_selvecs=i386bsd_vec
     targ_underscore=yes
     ;;
-  i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*)
+  i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
     targ_defvec=bfd_elf32_i386_freebsd_vec
     targ_selvecs="bfd_elf32_i386_vec i386pei_vec i386coff_vec"
     targ64_selvecs="bfd_elf64_x86_64_freebsd_vec bfd_elf64_x86_64_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_l1om_freebsd_vec"
@@ -617,6 +621,11 @@ case "${targ}" in
     targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec i386coff_vec"
     want64=true
     ;;
+  x86_64-*-dragonfly*)
+    targ_defvec=bfd_elf64_x86_64_vec
+    targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec"
+    want64=true
+    ;;
   x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
     targ_defvec=bfd_elf64_x86_64_freebsd_vec
     targ_selvecs="bfd_elf32_i386_freebsd_vec i386coff_vec i386pei_vec x86_64pei_vec bfd_elf32_i386_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_l1om_freebsd_vec"
index c8d48fd2e631f855c3034528ff78436d13c60ad1..301def925a6bcde27d11e4838e2007e50d5ca196 100755 (executable)
@@ -15068,8 +15068,6 @@ do
     bfd_elf32_hppa_nbsd_vec)   tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
     bfd_elf32_hppa_vec)                tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
     bfd_elf32_i370_vec)                tb="$tb elf32-i370.lo elf32.lo $elf" ;;
-    bfd_elf32_i386_dragonfly_vec)
-                               tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
     bfd_elf32_i386_sol2_vec)   tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
     bfd_elf32_i386_freebsd_vec)        tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
     bfd_elf32_i386_vxworks_vec)        tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
index d758a51fd0a718965c66ce518cd50d4d85b24228..4076c6ef0a6ef32f2675ad915445440185f6c09e 100644 (file)
@@ -703,8 +703,6 @@ do
     bfd_elf32_hppa_nbsd_vec)   tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
     bfd_elf32_hppa_vec)                tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
     bfd_elf32_i370_vec)                tb="$tb elf32-i370.lo elf32.lo $elf" ;;
-    bfd_elf32_i386_dragonfly_vec)
-                               tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
     bfd_elf32_i386_sol2_vec)   tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
     bfd_elf32_i386_freebsd_vec)        tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
     bfd_elf32_i386_vxworks_vec)        tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
index 15e23bcb63e6b33518fb2f9638a76c42323f138a..127efed585e8ba7763436d5377d0b3ee0b2fba38 100644 (file)
@@ -1,3 +1,9 @@
+2011-03-26  John Marino  <binutils@marino.st>
+
+       * configure.tgt: Fix support for *-*-dragonfly*.
+       * config/tc-i386.c: define SVR4_COMMENT_CHARS for dragonfly.
+       * config/te-dragonfly.h: New file.
+
 2010-11-25  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
 
        * config/tc-s390.c (current_cpu): Initialize with latest CPU.
index ba769ad695bc3e3a46c502a6fb0bd464312bb26a..b513bb3158dd0a1447764b90158b65c5a092c3ec 100644 (file)
@@ -303,6 +303,7 @@ const char extra_symbol_chars[] = "*%-(["
         && !defined (TE_LINUX)                         \
         && !defined (TE_NETWARE)                       \
         && !defined (TE_FreeBSD)                       \
+        && !defined (TE_DragonFly)                     \
         && !defined (TE_NetBSD)))
 /* This array holds the chars that always start a comment.  If the
    pre-processor is disabled, these aren't very useful.  The option
index c05a64a238267b4283537366a348e7dfe1254f69..aa12fbb955fe531d0133767da0ed1557a399c4b1 100644 (file)
@@ -205,8 +205,8 @@ case ${generic_target} in
   i386-*-freebsdaout*)                 fmt=aout em=386bsd ;;
   i386-*-freebsd[12].*)                        fmt=aout em=386bsd ;;
   i386-*-freebsd[12])                  fmt=aout em=386bsd ;;
-  i386-*-freebsd* | i386-*-kfreebsd*-gnu | i386-*-dragonfly*)
-                                       fmt=elf em=freebsd ;;
+  i386-*-freebsd* \
+  | i386-*-kfreebsd*-gnu)              fmt=elf em=freebsd ;;
   i386-*-sysv*)                                fmt=coff ;;
   i386-*-sco3.2v5*coff)                        fmt=coff ;;
   i386-*-isc*)                         fmt=coff ;;
@@ -419,6 +419,7 @@ case ${generic_target} in
   z8k-*-coff | z8k-*-sim)              fmt=coff ;;
 
   *-*-aout | *-*-scout)                        fmt=aout ;;
+  *-*-dragonfly*)                      fmt=elf em=dragonfly ;;
   *-*-freebsd* | *-*-kfreebsd*-gnu)    fmt=elf em=freebsd ;;
   *-*-bsd*)                            fmt=aout em=sun3 ;;
   *-*-generic)                         fmt=generic ;;
index a6b952ec671c696419416d1c660a517965ad5bcd..6bcac06b0feb4b0441031ed5aeecb0d6cc6f9613 100644 (file)
@@ -1,3 +1,9 @@
+2011-03-26  John Marino  <binutils@marino.st>
+
+       * configure.host: Update *-*-dragonfly* host entry.
+       * configure.tgt: Update *-*-dragonfly* target entry.
+       * ldlex.l: Prevent redefinition of YY_NO_UNPUT.
+
 2011-03-13  John David Anglin  <dave.anglin@nrc-cnnrc.gc.ca>
 
        Backport from mainline:
index f2dffe67bc56b4e52dd42ad8eb19e7659e9b16a9..f47b961176fa37c2786aa9ff322b21b06081cdfd 100644 (file)
@@ -18,7 +18,12 @@ HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ]; then libgcc=../gcc/libgcc.a; else libg
 
 case "${host}" in
 
-*-*-freebsd* | *-*-kfreebsd*-gnu | *-*-dragonfly*)
+*-*-dragonfly*)
+  HOSTING_CRT0='-dynamic-linker `[ -f \`${CC} --print-prog-name=ld-elf.so.2\` ] || echo /usr/libexec/``${CC} --print-prog-name=ld-elf.so.2` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `${CC} --print-file-name=crtbegin.o`'
+  HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
+  ;;
+
+*-*-freebsd* | *-*-kfreebsd*-gnu)
   HOSTING_CRT0='-dynamic-linker `[ -f \`${CC} --print-prog-name=ld-elf.so.1\` ] || echo /usr/libexec/``${CC} --print-prog-name=ld-elf.so.1` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `${CC} --print-file-name=crtbegin.o`'
   HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
   ;;
@@ -200,7 +205,10 @@ sparc64-*-solaris2* | sparcv9-*-solaris2*)
   HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` `if [ -f ../gcc/crtn.o ]; then echo ../gcc/crtn.o; else ${CC} -print-file-name=crtn.o; fi`'
   ;;
 
-*-*-freebsd* | *-*-kfreebsd*-gnu | *-*-dragonfly*)
+*-*-dragonfly*)
+  ;;
+
+*-*-freebsd* | *-*-kfreebsd*-gnu)
   ;;
 
 *-*-linux* | *-*-gnu*)
index 4e90739679e6d01e8f0f33be2938c6c9911fadb6..90d74616f5d6959de9d61e3d6cca7722886ed132 100644 (file)
@@ -248,7 +248,11 @@ x86_64-*-elf*)             targ_emul=elf_x86_64
 i[3-7]86-*-kaos*)      targ_emul=elf_i386 ;;
 i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | i[3-7]86-*-freebsd[12])
                        targ_emul=i386bsd ;;
-i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*)
+i[3-7]86-*-dragonfly*) targ_emul=elf_i386
+                       targ_extra_emuls="i386bsd" ;;
+x86_64-*-dragonfly*)   targ_emul=elf_x86_64
+                       targ_extra_emuls="elf_i386 elf_l1om" ;;
+i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
                        targ_emul=elf_i386_fbsd
                        targ_extra_emuls="elf_i386 i386bsd" ;;
 x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
@@ -666,7 +670,11 @@ esac
 NATIVE_LIB_DIRS='/usr/local/lib /lib /usr/lib'
 case "${target}" in
 
-*-*-freebsd* | *-*-dragonfly*)
+*-*-dragonfly*)
+  NATIVE_LIB_DIRS='/usr/lib /usr/pkg/lib /usr/local/lib'
+  ;;
+
+*-*-freebsd*)
   NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib'
   ;;
 
@@ -706,9 +714,6 @@ i[03-9x]86-*-cygwin*)
 *-*-linux*)
   ;;
 
-*-*-freebsd* | *-*-dragonfly*)
-  ;;
-
 *-*-netbsd*)
   ;;
 
index bb09bd92340385371a984a3879110828bd778a47..3213cf7c050cc2b8c3db6a33cea8130eabba2fc1 100644 (file)
@@ -60,7 +60,9 @@ const char *lex_string = NULL;
 #undef YY_INPUT
 #define YY_INPUT(buf,result,max_size) result = yy_input (buf, max_size)
 
+#ifndef YY_NO_UNPUT
 #define YY_NO_UNPUT
+#endif
 
 #define MAX_INCLUDE_DEPTH 10
 static YY_BUFFER_STATE include_stack[MAX_INCLUDE_DEPTH];