Re: [CMake] CMakeLists.txt: How to print a message if ctest fails?
Hi Miroslav, That makes sense, is there a way I can make ctest -S CTestScript.cmake command replace the regular ctest? I don't want users who run ctest type the whole thing. Thank you, On Tue, Apr 19, 2016 at 1:18 AM, Matějů Miroslav, Ing. < mateju.miros...@azd.cz> wrote: > Hi Muhammad, > > > > You need to add this code to a separate CTest script (CTestScript.cmake, > for example) and then run it using ctest -S CTestScript.cmake. Since the > wiki page I linked yesterday provides only some complex examples, I am > sending the key part of my CTest script. As you can see, its operation > strongly depends on environment variables (some of them are provided by > Windows). You’ll probably need to remove most of my if’s. > > > > set(CTEST_SOURCE_DIRECTORY "$ENV{SCRIPT_FOLDER}") > > set(CTEST_BINARY_DIRECTORY "$ENV{BINARY_PROJECT_FOLDER}") > > > > set(CTEST_SITE $ENV{COMPUTERNAME}) > > set(CTEST_BUILD_NAME$ENV{TEST_CASE_NAME}) > > > > ctest_start() > > > > ctest_configure(RETURN_VALUE configure_failed) > > > > if($ENV{DO_UPDATE}) > > ctest_update() > > endif($ENV{DO_UPDATE}) > > > > if($ENV{DO_BUILD}) > > ctest_build(RETURN_VALUE build_failed) > > endif($ENV{DO_BUILD}) > > > > if (($ENV{DO_TEST}) AND NOT (configure_failed OR build_failed)) > > ctest_test(RETURN_VALUE test_failed) > > endif(($ENV{DO_TEST}) AND NOT (configure_failed OR build_failed)) > > > > if($ENV{DO_DASHBOARD}) > > ctest_submit() > > endif($ENV{DO_DASHBOARD}) > > > > if (configure_failed OR build_failed OR test_failed) > > message(FATAL_ERROR "Test ${CTEST_BUILD_NAME} failed.") # sets return > value to -1 > > endif(configure_failed OR build_failed OR test_failed) > > > > Best regards, > > Miroslav > > > > *From:* Muhammad Osama [mailto:osam...@gmail.com] > *Sent:* Monday, April 18, 2016 8:33 PM > *To:* Matějů Miroslav, Ing. > *Cc:* cmake@cmake.org > *Subject:* Re: [CMake] CMakeLists.txt: How to print a message if ctest > fails? > > > > Hi Miroslav, > > > > Thank you for replying! I added this in my root CMakeLists.txt, purposely > made the ctest's test fail but didn't get the output message. > > Is this script suppose to be added inside CMakeLists.txt? Or am I doing > this incorrectly? > > > > Thanks again, > > > > On Mon, Apr 18, 2016 at 6:30 AM, Matějů Miroslav, Ing. < > mateju.miros...@azd.cz> wrote: > > Hi Muhammad, > > you can use a CTest script, see > https://cmake.org/Wiki/CMake_Scripting_Of_CTest for details. I use the > following code in my CTest script: > > > > if(configure_failed OR build_failed OR test_failed) > > message(FATAL_ERROR "Test ${CTEST_BUILD_NAME} failed.") > > endif() > > > > Best regards, > > Miroslav > > > > *From:* CMake [mailto:cmake-boun...@cmake.org] *On Behalf Of *Muhammad > Osama > *Sent:* Friday, April 15, 2016 8:53 PM > *To:* cmake@cmake.org > *Subject:* [CMake] CMakeLists.txt: How to print a message if ctest fails? > > > > Is there a way I can setup CMakeLists.txt to print a message if ctest > tests fail? For example: > > cmake .. > make > ctest // fails > message output: Please contact x...@mail.com to resolve testing problems. > > Note the message output is not for cmake but for ctest. > > > > -- > > Muhammad > > > > > > -- > > *Muhammad* > -- *Muhammad* -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] CMakeLists.txt: How to print a message if ctest fails?
Hi Muhammad, You need to add this code to a separate CTest script (CTestScript.cmake, for example) and then run it using ctest -S CTestScript.cmake. Since the wiki page I linked yesterday provides only some complex examples, I am sending the key part of my CTest script. As you can see, its operation strongly depends on environment variables (some of them are provided by Windows). You’ll probably need to remove most of my if’s. set(CTEST_SOURCE_DIRECTORY "$ENV{SCRIPT_FOLDER}") set(CTEST_BINARY_DIRECTORY "$ENV{BINARY_PROJECT_FOLDER}") set(CTEST_SITE $ENV{COMPUTERNAME}) set(CTEST_BUILD_NAME$ENV{TEST_CASE_NAME}) ctest_start() ctest_configure(RETURN_VALUE configure_failed) if($ENV{DO_UPDATE}) ctest_update() endif($ENV{DO_UPDATE}) if($ENV{DO_BUILD}) ctest_build(RETURN_VALUE build_failed) endif($ENV{DO_BUILD}) if (($ENV{DO_TEST}) AND NOT (configure_failed OR build_failed)) ctest_test(RETURN_VALUE test_failed) endif(($ENV{DO_TEST}) AND NOT (configure_failed OR build_failed)) if($ENV{DO_DASHBOARD}) ctest_submit() endif($ENV{DO_DASHBOARD}) if (configure_failed OR build_failed OR test_failed) message(FATAL_ERROR "Test ${CTEST_BUILD_NAME} failed.") # sets return value to -1 endif(configure_failed OR build_failed OR test_failed) Best regards, Miroslav From: Muhammad Osama [mailto:osam...@gmail.com] Sent: Monday, April 18, 2016 8:33 PM To: Matějů Miroslav, Ing. Cc: cmake@cmake.org Subject: Re: [CMake] CMakeLists.txt: How to print a message if ctest fails? Hi Miroslav, Thank you for replying! I added this in my root CMakeLists.txt, purposely made the ctest's test fail but didn't get the output message. Is this script suppose to be added inside CMakeLists.txt? Or am I doing this incorrectly? Thanks again, On Mon, Apr 18, 2016 at 6:30 AM, Matějů Miroslav, Ing. mailto:mateju.miros...@azd.cz>> wrote: Hi Muhammad, you can use a CTest script, see https://cmake.org/Wiki/CMake_Scripting_Of_CTest for details. I use the following code in my CTest script: if(configure_failed OR build_failed OR test_failed) message(FATAL_ERROR "Test ${CTEST_BUILD_NAME} failed.") endif() Best regards, Miroslav From: CMake [mailto:cmake-boun...@cmake.org<mailto:cmake-boun...@cmake.org>] On Behalf Of Muhammad Osama Sent: Friday, April 15, 2016 8:53 PM To: cmake@cmake.org<mailto:cmake@cmake.org> Subject: [CMake] CMakeLists.txt: How to print a message if ctest fails? Is there a way I can setup CMakeLists.txt to print a message if ctest tests fail? For example: cmake .. make ctest // fails message output: Please contact x...@mail.com<mailto:x...@mail.com> to resolve testing problems. Note the message output is not for cmake but for ctest. -- Muhammad -- Muhammad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] CMakeLists.txt: How to print a message if ctest fails?
Hi Miroslav, Thank you for replying! I added this in my root CMakeLists.txt, purposely made the ctest's test fail but didn't get the output message. Is this script suppose to be added inside CMakeLists.txt? Or am I doing this incorrectly? Thanks again, On Mon, Apr 18, 2016 at 6:30 AM, Matějů Miroslav, Ing. < mateju.miros...@azd.cz> wrote: > Hi Muhammad, > > you can use a CTest script, see > https://cmake.org/Wiki/CMake_Scripting_Of_CTest for details. I use the > following code in my CTest script: > > > > if(configure_failed OR build_failed OR test_failed) > > message(FATAL_ERROR "Test ${CTEST_BUILD_NAME} failed.") > > endif() > > > > Best regards, > > Miroslav > > > > *From:* CMake [mailto:cmake-boun...@cmake.org] *On Behalf Of *Muhammad > Osama > *Sent:* Friday, April 15, 2016 8:53 PM > *To:* cmake@cmake.org > *Subject:* [CMake] CMakeLists.txt: How to print a message if ctest fails? > > > > Is there a way I can setup CMakeLists.txt to print a message if ctest > tests fail? For example: > > cmake .. > make > ctest // fails > message output: Please contact x...@mail.com to resolve testing problems. > > Note the message output is not for cmake but for ctest. > > > > -- > > Muhammad > -- *Muhammad* -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] CMakeLists.txt: How to print a message if ctest fails?
Hi Muhammad, you can use a CTest script, see https://cmake.org/Wiki/CMake_Scripting_Of_CTest for details. I use the following code in my CTest script: if(configure_failed OR build_failed OR test_failed) message(FATAL_ERROR "Test ${CTEST_BUILD_NAME} failed.") endif() Best regards, Miroslav From: CMake [mailto:cmake-boun...@cmake.org] On Behalf Of Muhammad Osama Sent: Friday, April 15, 2016 8:53 PM To: cmake@cmake.org Subject: [CMake] CMakeLists.txt: How to print a message if ctest fails? Is there a way I can setup CMakeLists.txt to print a message if ctest tests fail? For example: cmake .. make ctest // fails message output: Please contact x...@mail.com<mailto:x...@mail.com> to resolve testing problems. Note the message output is not for cmake but for ctest. -- Muhammad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] CMakeLists.txt: How to print a message if ctest fails?
Is there a way I can setup CMakeLists.txt to print a message if ctest tests fail? For example: cmake .. make ctest // fails message output: Please contact x...@mail.com to resolve testing problems. Note the message output is not for cmake but for ctest. -- Muhammad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake