pkgsrc/lang/gcc/patches/patch-aa
dmcmahill 56b89512f4 Make this patch be more selective so that this package will work
on NetBSD/alpha versions 1.6 and newer.  Previously, this package only
worked on pre-1.6.  Fixes problems noted in recent bulk builds.
2003-11-25 22:35:14 +00:00

42 lines
1.5 KiB
Text

$NetBSD: patch-aa,v 1.6 2003/11/25 22:35:14 dmcmahill Exp $
from revision 1.5 of patch-ae:
Hand edit the alpha/netbsd.h patch. -current gcc relies on a new linker script
which only differs in setting the entry point. Let this use the default
linker script for alpha but force the entry point so this will work on older
NetBSD installs for alpha. For NetBSD-1.6 and newer, we don't need to change
the link spec.
--- ../gcc-2.95.3/gcc/config/alpha/netbsd.h.orig Tue Nov 25 17:51:14 2003
+++ ../gcc-2.95.3/gcc/config/alpha/netbsd.h
@@ -58,6 +58,8 @@ Boston, MA 02111-1307, USA. */
common to all ELF targets, except for the name of the start function. */
#undef LINK_SPEC
+#include <sys/param.h>
+#if defined(__NetBSD_Version__) && __NetBSD_Version__ >= 106000000
#define LINK_SPEC \
"-m elf64alpha_nbsd \
%{O*:-O3} %{!O*:-O1} \
@@ -70,6 +72,21 @@ Boston, MA 02111-1307, USA. */
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
%{static:-static}}"
+#else
+#define LINK_SPEC \
+ "-m elf64alpha \
+ -e __start \
+ %{O*:-O3} %{!O*:-O1} \
+ %{assert*} %{R*} \
+ %{shared:-shared} \
+ %{!shared: \
+ -dc -dp \
+ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
+ %{static:-static}}"
+#endif
/* Names to predefine in the preprocessor for this target machine.
XXX NetBSD, by convention, shouldn't do __alpha, but lots of applications