[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
build: work around ICC's limitations
From: |
Akim Demaille |
Subject: |
build: work around ICC's limitations |
Date: |
Thu, 20 Sep 2018 06:31:52 +0200 |
commit 27630864e7b5e6e7b785f85255c0786fa26876bc
Author: Akim Demaille <address@hidden>
Date: Wed Sep 19 07:15:45 2018 +0200
build: work around ICC's limitations
Several types of failures. First, unable to pass the file name
properly to the linker.
./synclines.at:416: $CC $CFLAGS $CPPFLAGS $LDFLAGS -o \"\\\"\"
\"\\\"\".c $LIBS
stderr:
ld: cannot open output file "/"": No such file or directory
stdout:
Unable to save under such a file name.
./synclines.at:421: $CXX $CXXFLAGS $CPPFLAGS -c $LDFLAGS -o \"\\\"\"
\"\\\"\".cc $LIBS
stderr:
error: can't open file "/"" for write
compilation aborted for "\"".cc (code 1)
Spurious output because of warning flags is failed to reject as an
error during configure:
./headers.at:343: $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS c-only.o cxx-only.o
-o c-and-cxx ||
exit 77
--- /dev/null 2018-09-18 21:21:37.745649000 +0000
+++
/home/travis/build/akimd/bison/tests/testsuite.dir/at-groups/222/stderr
2018-09-18 21:28:17.291919519 +0000
@@ -0,0 +1,7 @@
+icpc: command line warning #10006: ignoring unknown option
'-Wcast-align'
+icpc: command line warning #10006: ignoring unknown option
'-fparse-all-comments'
+icpc: command line warning #10006: ignoring unknown option
'-Wdocumentation'
+icpc: command line warning #10006: ignoring unknown option
'-Wnull-dereference'
+icpc: command line warning #10006: ignoring unknown option '-Wnoexcept'
+icpc: command line warning #10006: ignoring unknown option
'-fno-color-diagnostics'
+icpc: command line warning #10006: ignoring unknown option
'-Wno-keyword-macro'
stdout:
* tests/local.at (AT_SKIP_IF_CANNOT_LINK_C_AND_CXX): Also ignore
stderr, as with ICC we get
* tests/synclines.at (syncline escapes): Don't link the output.
diff --git a/tests/local.at b/tests/local.at
index 3317b1da..56f8e11a 100644
--- a/tests/local.at
+++ b/tests/local.at
@@ -881,7 +881,7 @@ int fortytwo ()
AT_COMPILE([c-only.o], [c-only.c])
AT_COMPILE_CXX([cxx-only.o], [cxx-only.cc])
AT_CHECK([$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS c-only.o cxx-only.o -o c-and-cxx ||
- exit 77], [ignore], [ignore])
+ exit 77], [0], [ignore], [ignore])
AT_PARSER_CHECK([./c-and-cxx])
])
diff --git a/tests/synclines.at b/tests/synclines.at
index 45bac3c0..fb1b6725 100644
--- a/tests/synclines.at
+++ b/tests/synclines.at
@@ -391,6 +391,17 @@ m4_pushdef([AT_TEST],
[AT_SETUP([syncline escapes: $1])
AT_BISON_OPTION_PUSHDEFS([%skeleton "$1"])
+
+# ICC is unable to handle these file names: it fails to pass them
+# properly to the linker, and is unable to save a file named this way.
+# Don't try with such compilers.
+AT_DATA([\"\\\"\".c],
+[[int main() { return 0; }
+]])
+
+AT_CHECK([AT_SKEL_CC_IF([$CXX $CXXFLAGS], [$CC $CFLAGS]) $CPPFLAGS \"\\\"\".c
-o \"\\\"\" ||
+ exit 77], [0], [ignore], [ignore])
+
AT_DATA_GRAMMAR([\"\\\"\".y],
[[%skeleton "$1"
%code {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- build: work around ICC's limitations,
Akim Demaille <=