* config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
authorhainque <hainque@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 8 Jan 2016 14:34:08 +0000 (14:34 +0000)
committerhainque <hainque@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 8 Jan 2016 14:34:08 +0000 (14:34 +0000)
libc_internal.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232164 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/vxworks.h

index f9c42c7..858938a 100644 (file)
@@ -1,3 +1,8 @@
+2016-01-08  Olivier Hainque  <hainque@adacore.com>
+
+       * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
+       libc_internal.
+
 2016-01-08  Alan Lawrence  <alan.lawrence@arm.com>
 
        * gcc.target/rs6000/paired.md (reduc_smax_v2sf): Rename to...
index 13e69c5..f356926 100644 (file)
@@ -71,13 +71,13 @@ along with GCC; see the file COPYING3.  If not see
  %{mrtp:%{!shared:%{!non-static:-static}               \
                  %{non-static:--force-dynamic --export-dynamic}}}"
 
-/* For VxWorks, the system provides libc_internal.a.  This is a superset
-   of libgcc.a; we want to use it.  Make sure not to dynamically export
-   any of its symbols, though.  Always look for libgcc.a first so that
-   we get the latest versions of the GNU intrinsics during our builds.  */
+/* For VxWorks static rtps, the system provides libc_internal.a, a superset
+   of libgcc.a that we want to use.  Make sure not to dynamically export any
+   of its symbols, though, and always look for libgcc.a first so that we get
+   the latest versions of the GNU intrinsics during our builds.  */
 #undef VXWORKS_LIBGCC_SPEC
 #define VXWORKS_LIBGCC_SPEC \
-  "-lgcc %{mrtp:--exclude-libs=libc_internal,libgcc -lc_internal}"
+  "-lgcc %{mrtp:%{!shared:--exclude-libs=libc_internal,libgcc -lc_internal}}"
 
 #undef VXWORKS_STARTFILE_SPEC
 #define        VXWORKS_STARTFILE_SPEC "%{mrtp:%{!shared:-l:crt0.o}}"