[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Christoph Grüninger (gruenich) -- Upstream (Dune) has decided what they want. Let us wait until they implemented their solution and follow them. Quoting from the Dune Developer Meeting 2015 (Heidelberg) protocol: 4.2 Abolition of the magic that builds test during "make test" test will not build during make test. Introduce meta targets build_tests, tests (build_tests && test). We introduce a variable BLA_BLUBB_TEST to activate building tests during make all. -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=details_id=263#comment624 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Timo Koch (timokoch) -- Why was it a bad idea? I don't see any downsides so far. A build-tests target is only useful if your tests are spread across the project in separate places, e.g. unit tests are close to the source. In Dumux we adopt the opposite concept. The tests are located in a separate structure that mimics that of the source. We don't want to build all tests on every run of dunecontrol thats why we exclude them from the toplevel all target. However, when you are in the subfolder test it would seem even surprising to me if all wouldn't build ALL executables, thus all tests. Further, there is not currently and not going to be anything else than tests in the dumux/test folder. The tutorials are not tests and shouldn't be build by the suggested build-tests target either.. So technically there is no difference between make all in the folder test and make build-tests in the top directory. IMO build-tests is just something inconvenient to implement that clutters our CMake configuration, when we can simply type make all in the test subfolder if we have a single additional EXCLUDE_FROM_ALL statement in the topfolder. If everything works just fine with no additional effort why not keep it? I'm really interested why it was a bad idea? -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment598 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Christoph Grüninger (gruenich) -- I am still aiming for: - no test are build by all - all test are build by build-tests - all test are run by test Our current mixing of the first two targets was bad idea. I want to change that as soon as the Dune modules change their behavior, too. -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment597 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Timo Koch (timokoch) -- I think this has proven to be quite handy with the new buildbot setup and when building tests manually. -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment596 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Timo Koch (timokoch) -- I don't see how restoring the old behaviour is a good solution. As all tests in dumux are in test (lets ignore the tutorial for now) make all in the test folder already builds all tests. So where is the problem? 1) It's the configuration of cdash, which doesnt seem to work on alladin 2) The Dune test magic still produces a CTestFile with an ominous include that throw an error (there is no need for such a file anymore) Furthermore, if the build and run process are not separated I have no chance setting up a meaningful buildbot environent in the near future. -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment577 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Christoph Grüninger (gruenich) -- I don't like our current solution. - it breaks the automated testing - Dune does not follow the idea - PDELab uses make build_tests to explicitly build the tests - it would be good to have a make check which is a make build_tests test I would like to restore the old behavior and wait what Dune will cook out. -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment576 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task is now closed: FS#263 - Don't build executables on make test User who did this - Christoph Grüninger (gruenich) Reason for closing: Implemented More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. Christoph Grüninger has taken ownership of the following task: FS#263 - Don't build executables on make test More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has been re-opened: FS#263 - Don't build executables on make test User who did this - Bernd Flemisch (bernd) More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Bernd Flemisch (bernd) -- Now ctest does only run the tests, but not build them. As a consequence, no build warnings or errors are submitted to the dashboard anymore. Christoph pointed to http://www.vtk.org/Wiki/CMake_Scripting_Of_CTest for customizing CTest such that it also builds. I would highly appreciate a corresponding working script. I remember that I tried CTest with scripting but that I ran into trouble with running the tests in parallel (now I just do ctest -j4 -D ...). A solution that allows for parallel execution is mandatory. -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment562 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Christoph Grüninger (gruenich) -- Advantages: - we get rid of the DUMUX_BUILD_ALL_TESTS workaround - no hidden magic, more CMake style, everthing is stated in the CMakeLists.txt - not needed to build all tests if only one test should be checked Disadvantages: - CTest fails when test are not built - make all is disabled in the dumux directory, it only works in dumux/test, dumux/tutorial etc. I created the following patch, please give it a try: Index: CMakeLists.txt === --- CMakeLists.txt (revision 14609) +++ CMakeLists.txt (working copy) @@ -22,12 +22,10 @@ # start a dune project with information from dune.module dune_project() -#add_subdirectory(m4) -#add_subdirectory(dumux) -add_subdirectory(doc) -add_subdirectory(cmake/modules) -add_subdirectory(test) -add_subdirectory(tutorial) +add_subdirectory(cmake/modules) +add_subdirectory(doc) +add_subdirectory(test EXCLUDE_FROM_ALL) +add_subdirectory(tutorial EXCLUDE_FROM_ALL) # finalize the dune project, e.g. generating config.h etc. finalize_dune_project(GENERATE_CONFIG_H_CMAKE) Index: cmake/modules/DumuxTestMacros.cmake === --- cmake/modules/DumuxTestMacros.cmake (revision 14609) +++ cmake/modules/DumuxTestMacros.cmake (working copy) @@ -13,20 +13,12 @@ # - further arguments:are optional and are used as arguments for calling the test ### macro(add_dumux_test dumux_test dumux_test_executable dumux_test_executable_source) - # create test target for directory, but only if not yet created - get_directory_test_target(potential_test_target ${CMAKE_CURRENT_BINARY_DIR}) - if(NOT TARGET ${potential_test_target}) -add_directory_test_target(_test_target) -set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - PROPERTY TEST_INCLUDE_FILE ${CMAKE_CURRENT_BINARY_DIR}/BuildTests.cmake) + # if present, copy grids folder + set(grids_directory ${CMAKE_CURRENT_SOURCE_DIR}/grids) + if(EXISTS ${grids_directory} AND IS_DIRECTORY ${grids_directory}) +file(COPY ${grids_directory} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) + endif() -# if present, copy grids folder -set(grids_directory ${CMAKE_CURRENT_SOURCE_DIR}/grids) -if(EXISTS ${grids_directory} AND IS_DIRECTORY ${grids_directory}) - file(COPY ${grids_directory} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) -endif() - endif(NOT TARGET ${potential_test_target}) - # if present, copy input file set(input_file ${CMAKE_CURRENT_SOURCE_DIR}/${dumux_test_executable}.input) if(NOT EXISTS ${input_file}) @@ -40,12 +32,7 @@ # add executable # check whether executable already exists if(NOT TARGET ${dumux_test_executable}) -#set property whether it has to be built with make or only with make test -if(${DUMUX_BUILD_ALL_TESTS}) - add_executable(${dumux_test_executable} ${dumux_test_executable_source}) -else() - add_executable(${dumux_test_executable} EXCLUDE_FROM_ALL ${dumux_test_executable_source}) -endif(${DUMUX_BUILD_ALL_TESTS}) +add_executable(${dumux_test_executable} ${dumux_test_executable_source}) endif(NOT TARGET ${dumux_test_executable}) # link all libraries to executable, add all flags @@ -58,7 +45,6 @@ # add test add_test(${dumux_test} ${dumux_test_args}) - add_dependencies(${_test_target} ${dumux_test_executable}) # return code 77 should be interpreted as skipped test set_tests_properties(${dumux_test} PROPERTIES SKIP_RETURN_CODE 77) Index: test/CMakeLists.txt === --- test/CMakeLists.txt (revision 14609) +++ test/CMakeLists.txt (working copy) @@ -6,5 +6,3 @@ add_subdirectory(io) add_subdirectory(material) add_subdirectory(multidomain) - -add_directory_test_target(_test_target) -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment560 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task has a new comment added: FS#263 - Don't build executables on make test User who did this - Christoph Grüninger (gruenich) -- I don't object. It would reduce the complexity of out build system. Timo, would you mind to make the suggestion upstream at Dune? Maybe it is favorable for all Dune module after the Dune 2.4 release? -- More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263#comment557 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
[DuMuX] Flyspray Activity for Task 263 (Don't build executables on make test)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. A new Flyspray task has been opened. Details are below. User who did this - Timo Koch (timokoch) Attached to Project - DuMuX Summary - Don't build executables on make test Task Type - Feature Request Category - CMake Status - New Assigned To - Operating System - Unspecified Severity - Low Priority - Normal Reported Version - SVN Due in Version - Undecided Due Date - Undecided Details - The CMake way to do this is make all make test where make all builds all executables, make test RUNS the tests. Some Dune magic can be used to compile all tests on make test. This has the disadvantage that all tests build also if only one test is desired to run (with ctest -R my_test). This only occurs when there are more than one test in the same directory. The CMake way has advantages that get lost by contracting build and execution: - In an automated build the compilation and execution can fail/pass separately - One test can be build and executed if desired (make my_test, ctest -R my_test) More information can be found at the following URL: http://www.dumux.org/flyspray/index.php?do=detailstask_id=263 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. ___ Dumux mailing list Dumux@listserv.uni-stuttgart.de https://listserv.uni-stuttgart.de/mailman/listinfo/dumux