+2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
+ NETBSD_STARTFILE_SPEC.
+ (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
+ (ENDFILE_SPEC): Likewise.
+ * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
+
2002-11-24 Andreas Schwab <schwab@suse.de>
* Makefile.in (install-driver): Remove versioned link before
of the support for getting C++ file-scope static objects
constructed before entering "main". */
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC \
+#define NETBSD_STARTFILE_SPEC \
"%{!shared: \
%{pg:gcrt0%O%s} \
%{!pg: \
%:if-exists(crti%O%s) \
%{!shared:crtbegin%O%s} %{shared:crtbeginS%O%s}"
+#undef STARTFILE_SPEC
+#define STARTFILE_SPEC NETBSD_STARTFILE_SPEC
+
/* Provide an ENDFILE_SPEC appropriate for NetBSD ELF. Here we
add crtend.o, which provides part of the support for getting
C++ file-scope static objects deconstructed after exiting "main". */
-#undef ENDFILE_SPEC
-#define ENDFILE_SPEC \
+#define NETBSD_ENDFILE_SPEC \
"%{!shared:crtend%O%s} %{shared:crtendS%O%s} \
%:if-exists(crtn%O%s)"
+#undef ENDFILE_SPEC
+#define ENDFILE_SPEC NETBSD_ENDFILE_SPEC
/* Provide a LINK_SPEC appropriate for NetBSD ELF. Here we provide
support for the special GCC options -assert, -R, -rpath, -shared,
FIXME: Could eliminate the duplication here if we were allowed to
use string concatenation. */
-#undef LIB_SPEC
#ifdef NETBSD_ENABLE_PTHREADS
-#define LIB_SPEC \
+#define NETBSD_LIB_SPEC \
"%{pthread: \
%{!p: \
%{!pg:-lpthread}} \
%{p:-lc_p} \
%{pg:-lc_p}}}"
#else
-#define LIB_SPEC \
+#define NETBSD_LIB_SPEC \
"%{posix: \
%{!p: \
%{!pg:-lposix}} \
%{pg:-lc_p}}}"
#endif
+#undef LIB_SPEC
+#define LIB_SPEC NETBSD_LIB_SPEC
+
/* Provide a LIBGCC_SPEC appropriate for NetBSD. We also want to exclude
libgcc with -symbolic. */
-#undef LIBGCC_SPEC
#ifdef NETBSD_NATIVE
-#define LIBGCC_SPEC \
+#define NETBSD_LIBGCC_SPEC \
"%{!symbolic: \
%{!shared: \
%{!p: \
- %{!pg: -lgcc}}} \
+ %{!pg: -lgcc}}} \
%{shared: -lgcc_pic} \
%{p: -lgcc_p} \
%{pg: -lgcc_p}}"
#else
-#define LIBGCC_SPEC "%{!shared:%{!symbolic: -lgcc}}"
+#define NETBSD_LIBGCC_SPEC "%{!shared:%{!symbolic: -lgcc}}"
#endif
+#undef LIBGCC_SPEC
+#define LIBGCC_SPEC NETBSD_LIBGCC_SPEC
+
/* When building shared libraries, the initialization and finalization
functions for the library are .init and .fini respectively. */