$OpenBSD: patch-ld_configure_tgt,v 1.12 2003/10/11 00:52:22 brad Exp $
--- ld/configure.tgt.orig	2003-06-12 10:25:52.000000000 -0400
+++ ld/configure.tgt	2003-09-04 02:29:46.000000000 -0400
@@ -72,12 +72,15 @@ sparc*-*-linux-gnu*)	targ_emul=elf32_spa
 			tdir_sun4=sparc-sun-sunos4
 			;;
 sparc*-*-lynxos*)	targ_emul=sparclynx ;;
-sparc64-*-netbsd* | sparc64-*-openbsd*)
-			targ_emul=elf64_sparc
+sparc64-*-netbsd*)	targ_emul=elf64_sparc
 			targ_extra_emuls="elf32_sparc"
 			;;
+sparc64-*-openbsd*)	targ_emul=elf64_sparc_obsd ;;
 sparc*-*-netbsd*elf*)	targ_emul=elf32_sparc ;;
 sparc*-*-netbsd*)	targ_emul=sparcnbsd ;;
+sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
+			targ_emul=sparcobsd ;;
+sparc*-*-openbsd*)	targ_emul=elf32_sparc_obsd ;;
 sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
 			targ_emul=elf32_sparc ;;
 sparc-*-solaris2*)	targ_emul=elf32_sparc
@@ -175,6 +178,14 @@ i[3456]86-*-netbsdpe*)	targ_emul=i386pe
 i[3456]86-*-netbsd*)	targ_emul=i386nbsd
 			targ_extra_emuls=elf_i386
 			;;
+i[3456]86-*-openbsd[0-2].* | i[3456]86-*-openbsd3.[0-2])
+			targ_emul=i386obsd ;;
+i[3456]86-*-openbsd*)	targ_emul=elf_i386_obsd ;;
+x86_64-*-openbsd*)	targ_emul=elf_x86_64_obsd
+			targ_extra_emuls=elf_i386_obsd
+			tdir_elf_i386_obsd=`echo ${targ_alias} \
+			    | sed -e 's/x86_64/i386/'`
+			;;
 x86_64-*-netbsd*)	targ_emul=elf_x86_64
 			targ_extra_emuls="elf_i386 i386nbsd"
 			tdir_elf_i386=`echo ${targ_alias} | \
@@ -238,7 +249,10 @@ arm-*-netbsdelf*)	targ_emul=armelf_nbsd;
 arm-*-netbsd*)		targ_emul=armnbsd;
 			targ_extra_emuls="armelf armelf_nbsd armelfb_nbsd"  ;;
 arm-*-nto*)		targ_emul=armnto ;;
-arm-*-openbsd*)		targ_emul=armnbsd ;;
+armeb-*-openbsd*)	targ_emul=armelfb_obsd
+			targ_extra_emuls="armelf_obsd" ;;
+arm-*-openbsd*)		targ_emul=armelf_obsd
+			targ_extra_emuls="armelfb_obsd" ;;
 arm-*-rtems*)		targ_emul=armelf ;;
 arm-*-elf)		targ_emul=armelf ;;
 arm-*-kaos*)		targ_emul=armelf ;;
@@ -361,6 +375,7 @@ m68*-*-netbsdelf*)	targ_emul=m68kelfnbsd
 m68*-*-netbsdaout* | m68*-*-netbsd*)
 			targ_emul=m68knbsd
 			targ_extra_emuls="m68kelfnbsd m68k4knbsd" ;;
+m68*-*-openbsd*)	targ_emul=m68kobsd ;;
 m68*-*-psos*)		targ_emul=m68kpsos ;;
 m68*-*-rtemscoff*)	targ_emul=m68kcoff ;;
 m68*-*-rtems*)		targ_emul=m68kelf ;;
@@ -397,6 +412,8 @@ mips*el-*-netbsd*)	targ_emul=elf32lmip
 mips*-*-netbsd*)	targ_emul=elf32bmip
 			targ_extra_emuls="elf32lmip"
 			;;
+mips*el-*-openbsd*)	targ_emul=elf32lmip ;;
+mips*-*-openbsd*)	targ_emul=elf32bmip ;;
 mips*-*-bsd*)		targ_emul=mipsbig ;;
 mips*vr4300el-*-elf*)	targ_emul=elf32l4300 ;;
 mips*vr4300-*-elf*)	targ_emul=elf32b4300 ;;
@@ -445,7 +462,7 @@ alpha*-*-osf*)		targ_emul=alpha ;;
 alpha*-*-gnu*)		targ_emul=elf64alpha ;;
 alpha*-*-netware*)	targ_emul=alpha ;;
 alpha*-*-netbsd*)	targ_emul=elf64alpha_nbsd ;;
-alpha*-*-openbsd*)	targ_emul=elf64alpha ;;
+alpha*-*-openbsd*)	targ_emul=elf64alpha_obsd ;;
 z8k-*-coff) 		targ_emul=z8002; targ_extra_emuls=z8001 ;;
 ns32k-pc532-mach* | ns32k-pc532-ux*)	targ_emul=pc532macha ;;
 ns32k-*-netbsd* | ns32k-pc532-lites*) targ_emul=ns32knbsd ;;
@@ -461,6 +478,7 @@ powerpc-*-freebsd*)	targ_emul=elf32ppc_f
 			targ_extra_libpath=elf32ppc;
 			tdir_elf32ppcsim=`echo ${targ_alias} | sed -e 's/ppc/ppcsim/'`
 			;;
+powerpc-*-openbsd*)	targ_emul=elf32ppc_obsd ;;
 powerpc*-*-linux*)
 	case "${targ}" in
 	*64*)	targ_emul=elf64ppc
@@ -489,7 +507,7 @@ powerpc*le-*-elf* | powerpc*le-*-eabi* |
 		targ_extra_emuls="elf32ppcsim" ;;
 	esac ;;
 powerpc*-*-elf* | powerpc*-*-eabi* | powerpc*-*-sysv* \
-  | powerpc*-*-netbsd* | powerpc-*-openbsd* | powerpc*-*-vxworks* | powerpc*-*-kaos*)
+  | powerpc*-*-netbsd* | powerpc*-*-vxworks* | powerpc*-*-kaos*)
 	case "${targ}" in
 	*64*)	targ_emul=elf64ppc
 		targ_extra_emuls="elf32ppc elf32ppclinux elf32ppcsim"
