--- gcc/config/freebsd-spec.h.jj	2012-01-30 00:10:01.000000000 +0100
+++ gcc/config/freebsd-spec.h	2012-02-07 09:46:05.031256945 +0100
@@ -135,14 +135,15 @@ is built with the --enable-threads confi
 #endif
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define FBSD_LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
 #endif
 
 #ifdef TARGET_LIBC_PROVIDES_SSP
-#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all:-lssp_nonshared}"
+#define FBSD_LINK_SSP_SPEC \
+  "%{fstack-protector|fstack-protector-all:-lssp_nonshared}"
 #endif
 
 /* Use --as-needed -lgcc_s for eh support.  */
 #ifdef HAVE_LD_AS_NEEDED
-#define USE_LD_AS_NEEDED 1
+#define FBSD_USE_LD_AS_NEEDED 1
 #endif
--- gcc/config/freebsd.h.jj	2010-11-26 18:39:09.000000000 +0100
+++ gcc/config/freebsd.h	2012-02-07 09:48:50.872294367 +0100
@@ -1,6 +1,6 @@
 /* Base configuration file for all FreeBSD targets.
    Copyright (C) 1999, 2000, 2001, 2007, 2008, 2009,
-   2010 Free Software Foundation, Inc.
+   2010, 2011, 2012 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -45,6 +45,21 @@ along with GCC; see the file COPYING3.
 #undef  LIB_SPEC
 #define LIB_SPEC FBSD_LIB_SPEC
 
+#ifdef	FBSD_LINK_EH_SPEC
+#undef	LINK_EH_SPEC
+#define	LINK_EH_SPEC FBSD_LINK_EH_SPEC
+#endif
+
+#ifdef	FBSD_LINK_SSP_SPEC
+#undef	LINK_SSP_SPEC
+#define	LINK_SSP_SPEC FBSD_LINK_SSP_SPEC
+#endif
+     
+#ifdef	FBSD_USE_LD_AS_NEEDED
+#undef	USE_LD_AS_NEEDED
+#define	USE_LD_AS_NEEDED FBSD_USE_LD_AS_NEEDED
+#endif
+
 /************************[  Target stuff  ]***********************************/
 
 /* All FreeBSD Architectures support the ELF object file format.  */
