In order to build crtstuff.c, I need to ensure the headers in
target/h/wrn/coreip are also searched. Of course, that can be done
similar to how wrn/coreip gets manually added for libgcc, e.g. by adding
CRTSTUFF_T_CFLAGS += -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip
But without target/h/wrn/coreip in the default search path, all
user-code that include <unistd.h> (crtstuff.c just being one such
example) will have to manually add an -isystem
flag adding the wrn/coreip directory: unistd.h include ioLib.h, which
has
#include "net/uio.h"
and that header is found in target/h/wrn/coreip. In other words, the
VxWorks system headers (at least for VxWorks 5.5) are written in a way
that assumes wrn/coreip is in the search path, so I think it makes sense
to have that by default.
It will change the search order for existing setups that pass
-I.../target/h/wrn/coreip (without -nostdinc), since that flag will now
be ignored. I can't know whether that will break anything, but I do
believe it makes sense to have the defaults actually usable without
expecting all invocations to add -I/-isystem flags.
From-SVN: r263689
+2018-08-21 Rasmus Villemoes <rv@rasmusvillemoes.dk>
+
+ * config/vxworks.h: Add $(WIND_BASE)/target/h/wrn/coreip to
+ default search path for VxWorks < 7.
+
2018-08-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
* gimple-ssa-sprintf.c (decl_constant_value): Remove.
#undef VXWORKS_ADDITIONAL_CPP_SPEC
#define VXWORKS_ADDITIONAL_CPP_SPEC \
"%{!nostdinc: \
- %{isystem*} -idirafter \
- %{mrtp: %:getenv(WIND_USR /h) \
- ;: %:getenv(WIND_BASE /target/h)}}"
+ %{isystem*} \
+ %{mrtp: -idirafter %:getenv(WIND_USR /h) \
+ -idirafter %:getenv(WIND_USR /h/wrn/coreip) \
+ ;: -idirafter %:getenv(WIND_BASE /target/h) \
+ -idirafter %:getenv(WIND_BASE /target/h/wrn/coreip) \
+}}"
#endif