$NetBSD: patch-aa,v 1.1 2015/04/25 10:32:07 wiz 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 +#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