From c8b13ecc380e38eda475974bc7ab515a65fe90cc Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 3 Jun 2010 09:37:17 -0400 Subject: Intel-specific workaround for LinkFlags tests The Intel C compiler for Linux does not seem to reject any bad flags or object files on its link lines. Work around the problem by using a preprocessor #error directive to ensure that BADFLAG appears in the build output. This does not really achieve the purpose of the tests but it allows them to pass. --- Tests/LinkFlags/CMakeLists.txt | 4 ++-- Tests/LinkFlags/LinkFlagsExe.c | 6 ++++++ Tests/LinkFlags/LinkFlagsLib.c | 5 +++++ 3 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 Tests/LinkFlags/LinkFlagsExe.c diff --git a/Tests/LinkFlags/CMakeLists.txt b/Tests/LinkFlags/CMakeLists.txt index ee547e4..e06020c 100644 --- a/Tests/LinkFlags/CMakeLists.txt +++ b/Tests/LinkFlags/CMakeLists.txt @@ -13,7 +13,7 @@ set_property(TARGET LinkFlags_lib PROPERTY STATIC_LIBRARY_FLAGS ${pre}BADFLAG${o add_library(LinkFlags_dll SHARED LinkFlagsLib.c) set_property(TARGET LinkFlags_dll PROPERTY LINK_FLAGS ${pre}BADFLAG${obj}) -add_executable(LinkFlags_exe LinkFlags.c) +add_executable(LinkFlags_exe LinkFlagsExe.c) set_property(TARGET LinkFlags_exe PROPERTY LINK_FLAGS ${pre}BADFLAG${obj}) add_library(LinkFlags_lib_config STATIC LinkFlagsLib.c) @@ -22,7 +22,7 @@ set_property(TARGET LinkFlags_lib_config PROPERTY STATIC_LIBRARY_FLAGS_${TEST_CO add_library(LinkFlags_dll_config SHARED LinkFlagsLib.c) set_property(TARGET LinkFlags_dll_config PROPERTY LINK_FLAGS_${TEST_CONFIG_UPPER} ${pre}BADFLAG_${TEST_CONFIG}${obj}) -add_executable(LinkFlags_exe_config LinkFlags.c) +add_executable(LinkFlags_exe_config LinkFlagsExe.c) set_property(TARGET LinkFlags_exe_config PROPERTY LINK_FLAGS_${TEST_CONFIG_UPPER} ${pre}BADFLAG_${TEST_CONFIG}${obj}) add_executable(LinkFlags LinkFlags.c) diff --git a/Tests/LinkFlags/LinkFlagsExe.c b/Tests/LinkFlags/LinkFlagsExe.c new file mode 100644 index 0000000..123587a --- /dev/null +++ b/Tests/LinkFlags/LinkFlagsExe.c @@ -0,0 +1,6 @@ +int main(void) { return 0; } + +/* Intel compiler does not reject bad flags or objects! */ +#if defined(__INTEL_COMPILER) +# error BADFLAG +#endif diff --git a/Tests/LinkFlags/LinkFlagsLib.c b/Tests/LinkFlags/LinkFlagsLib.c index f002eef..9d8d088 100644 --- a/Tests/LinkFlags/LinkFlagsLib.c +++ b/Tests/LinkFlags/LinkFlagsLib.c @@ -1 +1,6 @@ int flags_lib(void) { return 0; } + +/* Intel compiler does not reject bad flags or objects! */ +#if defined(__INTEL_COMPILER) +# error BADFLAG +#endif -- cgit v0.12