Here's a patch i made to make binutils-2.17 compile and work on
DragonFlyBSD (at least 1.11 and 1.10).
-- 
irc: arachnist @ ircnet/efnet/freenode
diff -ur binutils-2.17_gentoo/bfd/config.bfd binutils-2.17/bfd/config.bfd
--- binutils-2.17_gentoo/bfd/config.bfd 2007-08-15 23:11:40 +0000
+++ binutils-2.17/bfd/config.bfd        2007-08-15 23:17:40 +0000
@@ -507,7 +507,7 @@
     targ_selvecs=i386bsd_vec
     targ_underscore=yes
     ;;
-  i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
+  i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*)
     targ_defvec=bfd_elf32_i386_freebsd_vec
     targ_selvecs=i386coff_vec
     # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
diff -ur binutils-2.17_gentoo/bfd/configure.in binutils-2.17/bfd/configure.in
--- binutils-2.17_gentoo/bfd/configure.in       2007-08-15 23:11:40 +0000
+++ binutils-2.17/bfd/configure.in      2007-08-15 23:20:18 +0000
@@ -219,7 +219,7 @@
        TRAD_HEADER='"hosts/i386bsd.h"'
        ;;
 changequote(,)dnl
-  i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
+  i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*)
 changequote([,])dnl
        COREFILE=''
        TRAD_HEADER='"hosts/i386bsd.h"'
@@ -600,6 +600,8 @@
     bfd_elf32_crx_vec)          tb="$tb elf32-crx.lo elf32.lo $elf" ;;    
     bfd_elf32_d10v_vec)                tb="$tb elf32-d10v.lo elf32.lo $elf" ;;
     bfd_elf32_d30v_vec)                tb="$tb elf32-d30v.lo elf32.lo $elf" ;;
+    bfd_elf32_i386_dragonfly_vec)
+                               tb="$tb elf32-i386.lo elf-vxworks.lo elf32.lo 
$elf" ;;
     bfd_elf32_dlx_big_vec)     tb="$tb elf32-dlx.lo elf32.lo $elf" ;;
     bfd_elf32_fr30_vec)                tb="$tb elf32-fr30.lo elf32.lo $elf" ;;
     bfd_elf32_frv_vec)         tb="$tb elf32-frv.lo elf32.lo $elf" ;;
diff -ur binutils-2.17_gentoo/gas/configure.tgt binutils-2.17/gas/configure.tgt
--- binutils-2.17_gentoo/gas/configure.tgt      2006-04-05 12:41:57 +0000
+++ binutils-2.17/gas/configure.tgt     2007-08-16 01:10:36 +0000
@@ -191,7 +191,7 @@
   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-*-freebsd* | i386-*-kfreebsd*-gnu | i386-*-dragonfly*)
                                        fmt=elf em=freebsd ;;
   i386-*-sysv*)                                fmt=coff ;;
   i386-*-sco3.2v5*coff)                        fmt=coff ;;
@@ -381,7 +381,8 @@
   z8k-*-coff | z8k-*-sim)              fmt=coff ;;
 
   *-*-aout | *-*-scout)                        fmt=aout ;;
-  *-*-freebsd* | *-*-kfreebsd*-gnu)    fmt=elf em=freebsd ;;
+  *-*-freebsd* | *-*-kfreebsd*-gnu | *-*-dragonfly*)
+                                       fmt=elf em=freebsd ;;
   *-*-bsd*)                            fmt=aout em=sun3 ;;
   *-*-generic)                         fmt=generic ;;
   *-*-xray | *-*-hms)                  fmt=coff ;;
diff -ur binutils-2.17_gentoo/ld/configure.host binutils-2.17/ld/configure.host
--- binutils-2.17_gentoo/ld/configure.host      2005-07-19 12:43:19 +0000
+++ binutils-2.17/ld/configure.host     2007-08-16 01:27:04 +0000
@@ -18,7 +18,7 @@
 
 case "${host}" in
 
-*-*-freebsd* | *-*-kfreebsd*-gnu)
+*-*-freebsd* | *-*-kfreebsd*-gnu | *-*-dragonfly*)
   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`'
   ;;
@@ -227,7 +227,7 @@
   HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e 
"s,\\\`specs.*\"\\\`,/lib64/ld-linux-x86-64.so.2,"`
   ;;
 
-*-*-freebsd* | *-*-kfreebsd*-gnu)
+*-*-freebsd* | *-*-kfreebsd*-gnu | *-*-dragonfly*)
   ;;
 
 *-*-linux*)
diff -ur binutils-2.17_gentoo/ld/configure.tgt binutils-2.17/ld/configure.tgt
--- binutils-2.17_gentoo/ld/configure.tgt       2007-08-15 23:11:39 +0000
+++ binutils-2.17/ld/configure.tgt      2007-08-16 01:28:14 +0000
@@ -194,7 +194,7 @@
 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-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*)
                        targ_emul=elf_i386_fbsd
                        targ_extra_emuls="elf_i386 i386bsd" ;;
 x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
@@ -581,7 +581,7 @@
 NATIVE_LIB_DIRS='/usr/local/lib /lib /usr/lib'
 case "${target}" in
 
-*-*-freebsd*)
+*-*-freebsd* | *-*-dragonfly*)
   NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib'
   ;;
 
@@ -616,7 +616,7 @@
 *-*-linux*)
   ;;
 
-*-*-freebsd*)
+*-*-freebsd* | *-*-dragonfly*)
   ;;
 
 *-*-netbsd*)
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to