$OpenBSD: patch-gcc_gcc_c,v 1.4 2012/09/01 00:00:32 pascal Exp $
--- gcc/gcc.c.orig	Sat May 22 18:18:42 2010
+++ gcc/gcc.c	Thu Aug 30 11:06:49 2012
@@ -639,7 +639,7 @@ proper position among the other output files.  */
 #define LINK_GCC_C_SEQUENCE_SPEC "%G %L %G"
 #endif
 
-#define LINK_PIE_SPEC "%{pie: -pie}"
+#define LINK_PIE_SPEC "%{pie: -pie} %{p|pg|nopie:-nopie} "
 
 /* -u* was put back because both BSD and SysV seem to support it.  */
 /* %{static:} simply prevents an error message if the target machine
@@ -716,7 +716,6 @@ static const char *cpp_unique_options =
  %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}}\
  %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*}\
  %{!E:%{!M:%{!MM:%{MD|MMD:%{o*:-MQ %*}}}}}\
- %{!no-gcc:-D__GNUC__=%v1 -D__GNUC_MINOR__=%v2 -D__GNUC_PATCHLEVEL__=%v3}\
  %{!undef:%{!ansi:%{!std=*:%p}%{std=gnu*:%p}} %P} %{trigraphs}\
  %{remap} %{g3:-dD} %{H} %C %{D*&U*&A*} %{i*} %Z %i\
  %{E|M|MM:%W{o*}}";
