This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[m32c] build libstdc++; combined builds, libssp, and libgloss.


m32c can build libstdc++-v3 now, so no reason to hold it back any more.

libssp needs to link an executable during configure (which seems wrong
to me, but outside the scope of this patch).  The m32c can't link
executables until libgloss is installed (crt0, libnosys, and r8c.ld
are needed), and libssp can't have GCC_NO_EXECUTABLES because it needs
to(?) test some things about shared libraries (libstdc++-v3 doesn't
seem to have this problem).

So, this patch adds a bunch of flags-for-target to make linking
against an in-tree libgloss work.  Committed.

	* configure.in (m32c): Build libstdc++-v3.  Pass flags to
	reference libgloss so that libssp can be built in a combined
	tree.
	* configure: Regenerate.

Index: configure.in
===================================================================
--- configure.in	(revision 113057)
+++ configure.in	(working copy)
@@ -445,9 +445,6 @@ case "${target}" in
   *-*-vxworks*)
     noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty target-libstdc++-v3 ${libgcj}"
     ;;
-  m32c-*-*)
-    noconfigdirs="$noconfigdirs target-libstdc++-v3"
-    ;;
   alpha*-dec-osf*)
     # ld works, but does not support shared libraries.
     # newlib is not 64 bit ready.  I'm not sure about fileutils.
@@ -2129,6 +2126,20 @@ if test "x${use_gnu_ld}" = x &&
   FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(HOST_SUBDIR)/ld'
 fi
 
+# Search for other target-specific linker scripts and such.
+case "${target}" in
+  m32c-*-* )
+    if test -d ${srcdir}/libgloss/m32c; then
+      # This is for crt0.o
+      FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/libgloss/m32c'
+      # This is for r8c.ld
+      FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/libgloss/m32c'
+      # This is for libnosys.a
+      FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/libgloss/libnosys'
+    fi
+    ;;
+esac
+
 # Makefile fragments.
 for frag in host_makefile_frag target_makefile_frag alphaieee_frag ospace_frag;
 do


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]