From 3a0c93a5f4e82fa26df53a5f73a602fcf745aa4e Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Tue, 23 Nov 2021 16:46:45 +0100 Subject: [PATCH 01/13] [ci] Try to increase cache size for functions tests --- .ci/gitlab/config.yml | 3 +++ .ci/gitlab/config_template.py | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml index 0c55941ab..fdf98f9d9 100644 --- a/.ci/gitlab/config.yml +++ b/.ci/gitlab/config.yml @@ -189,6 +189,7 @@ functions unstable_gcc_full cpp: stage: cpp needs: ["debian-unstable_gcc_full"] script: + - ccache --max-size 10G - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_cpp.bash functions unstable_gcc_full headercheck: @@ -285,6 +286,7 @@ functions gcc_full cpp: stage: cpp needs: ["debian_gcc_full"] script: + - ccache --max-size 10G - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_cpp.bash functions gcc_full headercheck: @@ -371,6 +373,7 @@ functions clang_full cpp: stage: cpp needs: ["debian_clang_full"] script: + - ccache --max-size 10G - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_cpp.bash functions clang_full headercheck: diff --git a/.ci/gitlab/config_template.py b/.ci/gitlab/config_template.py index 549f929f6..a7a5fb3b6 100755 --- a/.ci/gitlab/config_template.py +++ b/.ci/gitlab/config_template.py @@ -144,6 +144,9 @@ lint: stage: {{kind}} needs: ["{{image}}"] script: + {%- if 'cpp' in kind and 'functions' in subdir %} + - ccache --max-size 10G + {%- endif %} - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_{{kind}}.bash {% endfor %} -- GitLab From 90bc4ca4e502afb6ed6cc3e8f602fcecf88f198d Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 08:47:42 +0100 Subject: [PATCH 02/13] [ci] dustin tags for clang --- .ci/gitlab/config.yml | 16 ++++++++++++++++ .ci/gitlab/config_template.py | 2 -- .ci/shared | 2 +- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml index fdf98f9d9..c91a66963 100644 --- a/.ci/gitlab/config.yml +++ b/.ci/gitlab/config.yml @@ -330,6 +330,8 @@ common clang_full cpp: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: common + tags: + - dustin stage: cpp needs: ["debian_clang_full"] script: @@ -340,6 +342,8 @@ common clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: common + tags: + - dustin stage: headercheck needs: ["debian_clang_full"] script: @@ -350,6 +354,8 @@ grid clang_full cpp: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: grid + tags: + - dustin stage: cpp needs: ["debian_clang_full"] script: @@ -360,6 +366,8 @@ grid clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: grid + tags: + - dustin stage: headercheck needs: ["debian_clang_full"] script: @@ -370,6 +378,8 @@ functions clang_full cpp: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: functions + tags: + - dustin stage: cpp needs: ["debian_clang_full"] script: @@ -381,6 +391,8 @@ functions clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: functions + tags: + - dustin stage: headercheck needs: ["debian_clang_full"] script: @@ -391,6 +403,8 @@ la clang_full cpp: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: la + tags: + - dustin stage: cpp needs: ["debian_clang_full"] script: @@ -401,6 +415,8 @@ la clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: la + tags: + - dustin stage: headercheck needs: ["debian_clang_full"] script: diff --git a/.ci/gitlab/config_template.py b/.ci/gitlab/config_template.py index a7a5fb3b6..aeb0c9d6f 100755 --- a/.ci/gitlab/config_template.py +++ b/.ci/gitlab/config_template.py @@ -137,10 +137,8 @@ lint: variables: CI_IMAGE: {{ image }} TESTS_MODULE_SUBDIR: {{ subdir }} - {%- if 'gcc' in image %} tags: - dustin - {%- endif %} stage: {{kind}} needs: ["{{image}}"] script: diff --git a/.ci/shared b/.ci/shared index b81e49009..8e5391465 160000 --- a/.ci/shared +++ b/.ci/shared @@ -1 +1 @@ -Subproject commit b81e4900992b4e32457247403f0462ae255ec15c +Subproject commit 8e5391465a1c9581bf4fa2915d91aa103c89a0db -- GitLab From 550682fe243c41c11183b9fca08ec7295ab931a5 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 09:22:16 +0100 Subject: [PATCH 03/13] [ci] Try to remove dustin tag for headerchecks --- .ci/gitlab/config.yml | 24 ------------------------ .ci/gitlab/config_template.py | 2 ++ 2 files changed, 2 insertions(+), 24 deletions(-) diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml index c91a66963..751983ce5 100644 --- a/.ci/gitlab/config.yml +++ b/.ci/gitlab/config.yml @@ -148,8 +148,6 @@ common unstable_gcc_full headercheck: variables: CI_IMAGE: debian-unstable_gcc_full TESTS_MODULE_SUBDIR: common - tags: - - dustin stage: headercheck needs: ["debian-unstable_gcc_full"] script: @@ -172,8 +170,6 @@ grid unstable_gcc_full headercheck: variables: CI_IMAGE: debian-unstable_gcc_full TESTS_MODULE_SUBDIR: grid - tags: - - dustin stage: headercheck needs: ["debian-unstable_gcc_full"] script: @@ -197,8 +193,6 @@ functions unstable_gcc_full headercheck: variables: CI_IMAGE: debian-unstable_gcc_full TESTS_MODULE_SUBDIR: functions - tags: - - dustin stage: headercheck needs: ["debian-unstable_gcc_full"] script: @@ -221,8 +215,6 @@ la unstable_gcc_full headercheck: variables: CI_IMAGE: debian-unstable_gcc_full TESTS_MODULE_SUBDIR: la - tags: - - dustin stage: headercheck needs: ["debian-unstable_gcc_full"] script: @@ -245,8 +237,6 @@ common gcc_full headercheck: variables: CI_IMAGE: debian_gcc_full TESTS_MODULE_SUBDIR: common - tags: - - dustin stage: headercheck needs: ["debian_gcc_full"] script: @@ -269,8 +259,6 @@ grid gcc_full headercheck: variables: CI_IMAGE: debian_gcc_full TESTS_MODULE_SUBDIR: grid - tags: - - dustin stage: headercheck needs: ["debian_gcc_full"] script: @@ -294,8 +282,6 @@ functions gcc_full headercheck: variables: CI_IMAGE: debian_gcc_full TESTS_MODULE_SUBDIR: functions - tags: - - dustin stage: headercheck needs: ["debian_gcc_full"] script: @@ -318,8 +304,6 @@ la gcc_full headercheck: variables: CI_IMAGE: debian_gcc_full TESTS_MODULE_SUBDIR: la - tags: - - dustin stage: headercheck needs: ["debian_gcc_full"] script: @@ -342,8 +326,6 @@ common clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: common - tags: - - dustin stage: headercheck needs: ["debian_clang_full"] script: @@ -366,8 +348,6 @@ grid clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: grid - tags: - - dustin stage: headercheck needs: ["debian_clang_full"] script: @@ -391,8 +371,6 @@ functions clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: functions - tags: - - dustin stage: headercheck needs: ["debian_clang_full"] script: @@ -415,8 +393,6 @@ la clang_full headercheck: variables: CI_IMAGE: debian_clang_full TESTS_MODULE_SUBDIR: la - tags: - - dustin stage: headercheck needs: ["debian_clang_full"] script: diff --git a/.ci/gitlab/config_template.py b/.ci/gitlab/config_template.py index aeb0c9d6f..8dca61528 100755 --- a/.ci/gitlab/config_template.py +++ b/.ci/gitlab/config_template.py @@ -137,8 +137,10 @@ lint: variables: CI_IMAGE: {{ image }} TESTS_MODULE_SUBDIR: {{ subdir }} + {%- if 'cpp' in kind %} tags: - dustin + {%- endif %} stage: {{kind}} needs: ["{{image}}"] script: -- GitLab From ed6bdfa42e0ed1768b6d17b9941dcc7a9b783669 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 12:52:53 +0100 Subject: [PATCH 04/13] [ci] share config with gdt --- .ci/gitlab/config.yml | 2 +- .ci/gitlab/config_template.py | 166 +--------------------------------- .ci/shared | 2 +- 3 files changed, 6 insertions(+), 164 deletions(-) diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml index 751983ce5..6dca684c6 100644 --- a/.ci/gitlab/config.yml +++ b/.ci/gitlab/config.yml @@ -11,12 +11,12 @@ variables: GIT_SUBMODULE_STRATEGY: recursive TRAVIS_BRANCH: ${CI_COMMIT_REF_NAME} TRAVIS_COMMIT: ${CI_COMMIT_SHA} - MY_MODULE: dune-xt CCACHE_BASEDIR: ${CI_PROJECT_DIR} CCACHE_DIR: "${CI_PROJECT_DIR}/.ccache" CCACHE_COMPILERCHECK: content CCACHE_COMPRESS: "true" PYTEST_ADDOPTS: "-s" + MY_MODULE: dune-xt BASE_PROJECT: zivgitlab.wwu.io/ag-ohlberger/dune-community/dune-xt-super .image_builder: diff --git a/.ci/gitlab/config_template.py b/.ci/gitlab/config_template.py index 8dca61528..dc65fb99a 100755 --- a/.ci/gitlab/config_template.py +++ b/.ci/gitlab/config_template.py @@ -4,172 +4,14 @@ import os import jinja2 from itertools import product +import urllib.request -tpl = r'''# THIS FILE IS AUTOGENERATED -- DO NOT EDIT # -# Edit and Re-run .ci/gitlab/config_template.py instead # -stages: - - sanity - - images -{%- for kind in kinds %} - - {{kind}} -{%- endfor %} - - python - -variables: - GIT_SUBMODULE_STRATEGY: recursive - TRAVIS_BRANCH: ${CI_COMMIT_REF_NAME} - TRAVIS_COMMIT: ${CI_COMMIT_SHA} - MY_MODULE: dune-xt - CCACHE_BASEDIR: ${CI_PROJECT_DIR} - CCACHE_DIR: "${CI_PROJECT_DIR}/.ccache" - CCACHE_COMPILERCHECK: content - CCACHE_COMPRESS: "true" - PYTEST_ADDOPTS: "-s" - BASE_PROJECT: zivgitlab.wwu.io/ag-ohlberger/dune-community/dune-xt-super - -.image_builder: - tags: - - docker-in-docker - - long execution time - stage: images - rules: - - if: '$CI_COMMIT_REF_NAME =~ /^staging.*/' - when: never - - when: on_success - retry: - max: 2 - when: - - always - image: harbor.uni-muenster.de/proxy-docker/library/docker:19.03.12 - variables: - DOCKER_HOST: tcp://docker:2375/ - DOCKER_DRIVER: overlay2 - IMAGE: ${CI_REGISTRY_IMAGE}/ci_testing_${CI_IMAGE}:${CI_COMMIT_SHORT_SHA} - before_script: - - | - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - apk --update add py3-pip openssh-client rsync git file bash python3 curl - pip3 install -U docker jinja2 docopt - - export BASEIMAGE="${MY_MODULE}-testing_${CI_IMAGE}:${CI_COMMIT_REF_NAME/\//_}" - # get image with fallback to master branch of the super repo - docker pull ${BASE_PROJECT}/${BASEIMAGE} || export BASEIMAGE="${MY_MODULE}-testing_${CI_IMAGE}:master" - docker pull ${BASE_PROJECT}/${BASEIMAGE} - script: - - | - git submodule update --init --recursive - docker build --build-arg BASE=${BASEIMAGE} -t ${IMAGE} -f .ci/gitlab/Dockerfile . - docker push ${IMAGE} - services: - - name: harbor.uni-muenster.de/proxy-docker/library/docker:dind - alias: docker - environment: - name: unsafe - -.subdir-test: - tags: - - long execution time - stage: test - rules: - - if: '$CI_COMMIT_REF_NAME =~ /^staging.*/' - when: never - - when: on_success - retry: - max: 2 - when: - - always - image: ${CI_REGISTRY_IMAGE}/ci_testing_${CI_IMAGE}:${CI_COMMIT_SHORT_SHA} - cache: - key: "$CI_JOB_NAME" - paths: - - .ccache - before_script: - - | - mkdir /home/dune-ci/testresults && chmod -R 777 /home/dune-ci/testresults - [[ -f ./.gitsuper ]] && echo "Please remove .gitsuper from the repo" && exit 1 - ccache --zero-stats || true - after_script: - - ccache --show-stats - artifacts: - reports: - junit: '/home/dune-ci/testresults/*xml' - environment: - name: unsafe - -.pre-commit: - stage: sanity - image: "python:3.9" - cache: - paths: - - ${CI_PROJECT_DIR}/.cache/pre-commit - variables: - PRECOMMIT: "pre-commit run --all" - before_script: - - pip install pre-commit - - pre-commit install --install-hooks - -format_check: - extends: .pre-commit - script: - - ${PRECOMMIT} clang-format - - ${PRECOMMIT} yapf - - ${PRECOMMIT} trailing-whitespace - -lint: - extends: .pre-commit - script: - - ${PRECOMMIT} check-added-large-files - #- ${PRECOMMIT} flake8 disabled for now, finds lots of issue - - ${PRECOMMIT} debug-statements - - ${PRECOMMIT} check-yaml - - -{% for image in images -%} -{{ image }}: - extends: .image_builder - variables: - CI_IMAGE: {{ image }} -{% endfor %} - -{% for image, subdir, kind in matrix %} -{{subdir}} {{ image[image.find('debian')+1+6:] }} {{kind}}: - extends: .subdir-test - variables: - CI_IMAGE: {{ image }} - TESTS_MODULE_SUBDIR: {{ subdir }} - {%- if 'cpp' in kind %} - tags: - - dustin - {%- endif %} - stage: {{kind}} - needs: ["{{image}}"] - script: - {%- if 'cpp' in kind and 'functions' in subdir %} - - ccache --max-size 10G - {%- endif %} - - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_{{kind}}.bash -{% endfor %} - -{% for image in images %} -{{ image[image.find('debian')+1+6:] }} python: - extends: .subdir-test - variables: - CI_IMAGE: {{ image }} - tags: - - dustin - stage: python - needs: ["{{image}}"] - script: - - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_python.bash -{% endfor %} - -''' - - +template_url = 'https://raw.githubusercontent.com/dune-community/dune-xt-ci/master/xt_and_gdt_config_template.txt' +tpl = urllib.request.urlopen(template_url).read().decode('utf-8').replace('DUNE_XT_OR_DUNE_GDT', 'dune-xt') tpl = jinja2.Template(tpl) images = ['debian-unstable_gcc_full', 'debian_gcc_full', 'debian_clang_full'] subdirs = ['common', 'grid', 'functions', 'la'] kinds = ['cpp', 'headercheck'] matrix = product(images, subdirs, kinds) with open(os.path.join(os.path.dirname(__file__), 'config.yml'), 'wt') as yml: - yml.write(tpl.render(matrix=matrix, images=images, kinds=kinds)) + yml.write(tpl.render(matrix=matrix, images=images, kinds=kinds, subdirs=subdirs)) diff --git a/.ci/shared b/.ci/shared index 8e5391465..5ce72dd99 160000 --- a/.ci/shared +++ b/.ci/shared @@ -1 +1 @@ -Subproject commit 8e5391465a1c9581bf4fa2915d91aa103c89a0db +Subproject commit 5ce72dd996365edfa6076024a90010dec25df3e4 -- GitLab From 37e673a160edfb23cbb03d8ddf8e1a87af68df10 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 14:12:23 +0100 Subject: [PATCH 05/13] [ci] Do not retry unconditionally --- .ci/gitlab/config.yml | 8 ++++++-- .ci/shared | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml index 6dca684c6..19651c887 100644 --- a/.ci/gitlab/config.yml +++ b/.ci/gitlab/config.yml @@ -31,7 +31,9 @@ variables: retry: max: 2 when: - - always + - runner_system_failure + - stuck_or_timeout_failure + - api_failure image: harbor.uni-muenster.de/proxy-docker/library/docker:19.03.12 variables: DOCKER_HOST: tcp://docker:2375/ @@ -69,7 +71,9 @@ variables: retry: max: 2 when: - - always + - runner_system_failure + - stuck_or_timeout_failure + - api_failure image: ${CI_REGISTRY_IMAGE}/ci_testing_${CI_IMAGE}:${CI_COMMIT_SHORT_SHA} cache: key: "$CI_JOB_NAME" diff --git a/.ci/shared b/.ci/shared index 5ce72dd99..7f1ba18af 160000 --- a/.ci/shared +++ b/.ci/shared @@ -1 +1 @@ -Subproject commit 5ce72dd996365edfa6076024a90010dec25df3e4 +Subproject commit 7f1ba18af6ad5df7f5e4a0599a3860f132d71548 -- GitLab From dbb669c4c9e93b975ca75ea566e4111591faf692 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 14:30:21 +0100 Subject: [PATCH 06/13] [ci] Also retry sanity checks --- .ci/gitlab/config.yml | 6 ++++++ .ci/shared | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml index 19651c887..076f69c4c 100644 --- a/.ci/gitlab/config.yml +++ b/.ci/gitlab/config.yml @@ -94,6 +94,12 @@ variables: .pre-commit: stage: sanity + retry: + max: 2 + when: + - runner_system_failure + - stuck_or_timeout_failure + - api_failure image: "python:3.9" cache: paths: diff --git a/.ci/shared b/.ci/shared index 7f1ba18af..3033fe7a9 160000 --- a/.ci/shared +++ b/.ci/shared @@ -1 +1 @@ -Subproject commit 7f1ba18af6ad5df7f5e4a0599a3860f132d71548 +Subproject commit 3033fe7a9270cedbdf72275da69fda1d4ac97427 -- GitLab From f0ba4f8cb98cd53b27e7f61c9f632af9f4c6532a Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 15:06:40 +0100 Subject: [PATCH 07/13] [python/cmake] install jinja2 --- CMakeLists.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2176e3f63..82867a81a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -83,6 +83,10 @@ include(DunePybindxiInstallPythonPackage) dune_pybindxi_install_python_package(PATH python) include_dependent_binary_python_dirs() +# install jinja2 for code generation into the dune-python virtualenv +execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2) + + add_subdirectory(python) include(GridUtils) -- GitLab From 1c4122f62025d1d5b3816beb7865411cdbc9fa5e Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 15:38:02 +0100 Subject: [PATCH 08/13] Remove old cmake files --- cmake/modules/DuneXTTesting.cmake | 333 ++++------- .../modules/dxt_all_sorted_testnames.cmake.in | 13 - .../modules/dxt_headercheck_targets.cmake.in | 13 - cmake/modules/dxt_test_binaries.cmake.in | 13 - .../test/functions/builder_definitions.cmake | 563 ------------------ dune/xt/test/la/builder_definitions.cmake | 118 ---- 6 files changed, 127 insertions(+), 926 deletions(-) delete mode 100644 cmake/modules/dxt_all_sorted_testnames.cmake.in delete mode 100644 cmake/modules/dxt_headercheck_targets.cmake.in delete mode 100644 cmake/modules/dxt_test_binaries.cmake.in delete mode 100644 dune/xt/test/functions/builder_definitions.cmake delete mode 100644 dune/xt/test/la/builder_definitions.cmake diff --git a/cmake/modules/DuneXTTesting.cmake b/cmake/modules/DuneXTTesting.cmake index 57a0e4caa..6fa7d7989 100644 --- a/cmake/modules/DuneXTTesting.cmake +++ b/cmake/modules/DuneXTTesting.cmake @@ -13,25 +13,10 @@ # ~~~ macro(dxt_headercheck_target_name arg) - string(REGEX - REPLACE ".*/([^/]*)" - "\\1" - simple - ${arg}) - string(REPLACE ${PROJECT_SOURCE_DIR} - "" - rel - ${arg}) - string(REGEX - REPLACE "(.*)/[^/]*" - "\\1" - relpath - ${rel}) - string(REGEX - REPLACE "/" - "_" - targname - ${rel}) + string(REGEX REPLACE ".*/([^/]*)" "\\1" simple ${arg}) + string(REPLACE ${PROJECT_SOURCE_DIR} "" rel ${arg}) + string(REGEX REPLACE "(.*)/[^/]*" "\\1" relpath ${rel}) + string(REGEX REPLACE "/" "_" targname ${rel}) set(targname "headercheck_${targname}") endmacro(dxt_headercheck_target_name) @@ -40,10 +25,9 @@ macro(get_headercheck_targets subdir) list(APPEND dxt_ignore_header ${bindir_header}) if(ENABLE_HEADERCHECK) - file(GLOB_RECURSE headerlist - "${CMAKE_SOURCE_DIR}/dune/xt/${subdir}/*.hh" - "${CMAKE_SOURCE_DIR}/dune/xt/test/${subdir}/*.hh" - "${CMAKE_SOURCE_DIR}/python/dune/xt/${subdir}/*.hh") + file(GLOB_RECURSE headerlist "${CMAKE_SOURCE_DIR}/dune/xt/${subdir}/*.hh" + "${CMAKE_SOURCE_DIR}/dune/xt/test/${subdir}/*.hh" + "${CMAKE_SOURCE_DIR}/python/dune/xt/${subdir}/*.hh") add_custom_target(${subdir}_headercheck) foreach(header ${headerlist}) list(FIND dxt_ignore_header "${header}" _index) @@ -68,28 +52,27 @@ macro(add_subdir_tests subdir) list(APPEND ranks ${DUNE_MAX_TEST_CORES}) endif(source MATCHES "mpi") get_filename_component(testbase ${source} NAME_WE) - string(REPLACE ".cc" - ".mini" - minifile - ${source}) + string(REPLACE ".cc" ".mini" minifile ${source}) if(EXISTS ${minifile}) if(dune-testtools_FOUND) - dune_add_system_test(SOURCE - ${source} - ${COMMON_HEADER} - INIFILE - ${minifile} - BASENAME - test_${testbase} - CREATED_TARGETS - targetlist_${testbase} - ADDED_TESTS - testlist_${testbase} - SCRIPT - dune_xt_execute.py - ${DEBUG_MACRO_TESTS}) + dune_add_system_test( + SOURCE + ${source} + ${COMMON_HEADER} + INIFILE + ${minifile} + BASENAME + test_${testbase} + CREATED_TARGETS + targetlist_${testbase} + ADDED_TESTS + testlist_${testbase} + SCRIPT + dune_xt_execute.py + ${DEBUG_MACRO_TESTS}) foreach(target ${targetlist_${testbase}}) - target_link_libraries(${target} ${link_xt_libs} ${COMMON_LIBS} ${GRID_LIBS} gtest_dune_xt) + target_link_libraries(${target} ${link_xt_libs} ${COMMON_LIBS} + ${GRID_LIBS} gtest_dune_xt) list(APPEND ${subdir}_dxt_test_binaries ${target}) set(dxt_test_names_${target} ${testlist_${testbase}_${target}}) foreach(test_name ${dxt_test_names_${target}}) @@ -101,50 +84,45 @@ macro(add_subdir_tests subdir) endif(dune-testtools_FOUND) else(EXISTS ${minifile}) set(target test_${testbase}) - dune_add_test(NAME - ${target} - SOURCES - ${source} - ${COMMON_HEADER} - LINK_LIBRARIES - ${link_xt_libs} - ${COMMON_LIBS} - ${GRID_LIBS} - gtest_dune_xt - COMMAND - ${CMAKE_BINARY_DIR}/run-in-dune-env - CMD_ARGS - ${CMAKE_CURRENT_BINARY_DIR}/${target} - --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml - TIMEOUT - ${DXT_TEST_TIMEOUT} - MPI_RANKS - ${ranks}) + dune_add_test( + NAME + ${target} + SOURCES + ${source} + ${COMMON_HEADER} + LINK_LIBRARIES + ${link_xt_libs} + ${COMMON_LIBS} + ${GRID_LIBS} + gtest_dune_xt + COMMAND + ${CMAKE_BINARY_DIR}/run-in-dune-env + CMD_ARGS + ${CMAKE_CURRENT_BINARY_DIR}/${target} + --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml + TIMEOUT + ${DXT_TEST_TIMEOUT} + MPI_RANKS + ${ranks}) list(APPEND ${subdir}_dxt_test_binaries ${target}) set(dxt_test_names_${target} ${target}) set_tests_properties(${target} PROPERTIES LABELS ${subdir}) endif(EXISTS ${minifile}) endforeach(source) - file(GLOB_RECURSE test_templates "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}/*.tpl") + file(GLOB_RECURSE test_templates + "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}/*.tpl") foreach(template ${test_templates}) set(ranks "1") if(template MATCHES "mpi") list(APPEND ranks ${DUNE_MAX_TEST_CORES}) endif(template MATCHES "mpi") get_filename_component(testbase ${template} NAME_WE) - string(REPLACE ".tpl" - ".py" - config_fn - "${template}") - string(REPLACE ".tpl" - ".tpl.cc" - out_fn - "${template}") - string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}" - "${CMAKE_CURRENT_BINARY_DIR}" - out_fn - "${out_fn}") - # get the last completed cache for the codegen execution during configure time + string(REPLACE ".tpl" ".py" config_fn "${template}") + string(REPLACE ".tpl" ".tpl.cc" out_fn "${template}") + string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}" + out_fn "${out_fn}") + # get the last completed cache for the codegen execution during configure + # time foreach(_mod ${ALL_DEPENDENCIES}) dune_module_path(MODULE ${_mod} RESULT ${_mod}_binary_dir BUILD_DIR) if(IS_DIRECTORY ${${_mod}_binary_dir}) @@ -152,62 +130,59 @@ macro(add_subdir_tests subdir) endif() endforeach(_mod DEPENDENCIES) - dune_execute_process(COMMAND - ${CMAKE_BINARY_DIR}/run-in-dune-env - dxt_code_generation.py - "${config_fn}" - "${template}" - "${CMAKE_BINARY_DIR}" - "${out_fn}" - "${last_dep_bindir}" - OUTPUT_VARIABLE - codegen_output) - file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/codegen.${testbase}.log" ${codegen_output}) + dune_execute_process( + COMMAND + ${CMAKE_BINARY_DIR}/run-in-dune-env + dxt_code_generation.py + "${config_fn}" + "${template}" + "${CMAKE_BINARY_DIR}" + "${out_fn}" + "${last_dep_bindir}" + OUTPUT_VARIABLE + codegen_output) + file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/codegen.${testbase}.log" + ${codegen_output}) file(GLOB generated_sources "${out_fn}.*") if("" STREQUAL "${generated_sources}") set(generated_sources ${out_fn}) endif() - add_custom_command(OUTPUT "${generated_sources}" - COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env dxt_code_generation.py "${config_fn}" "${template}" - "${CMAKE_BINARY_DIR}" "${out_fn}" "${last_dep_bindir}" - DEPENDS "${config_fn}" "${template}" - VERBATIM USES_TERMINAL) + add_custom_command( + OUTPUT "${generated_sources}" + COMMAND + ${CMAKE_BINARY_DIR}/run-in-dune-env dxt_code_generation.py + "${config_fn}" "${template}" "${CMAKE_BINARY_DIR}" "${out_fn}" + "${last_dep_bindir}" + DEPENDS "${config_fn}" "${template}" + VERBATIM USES_TERMINAL) foreach(gen_source ${generated_sources}) - string(REPLACE "${out_fn}." - "" - postfix - "${gen_source}") - string(REPLACE "${out_fn}" - "" - postfix - "${postfix}") - string(REPLACE ".cc" - "" - postfix - "${postfix}") + string(REPLACE "${out_fn}." "" postfix "${gen_source}") + string(REPLACE "${out_fn}" "" postfix "${postfix}") + string(REPLACE ".cc" "" postfix "${postfix}") if(NOT "" STREQUAL "${postfix}") set(postfix "__${postfix}") endif() set(target test_${testbase}${postfix}) - dune_add_test(NAME - ${target} - SOURCES - ${gen_source} - ${COMMON_HEADER} - LINK_LIBRARIES - ${link_xt_libs} - ${COMMON_LIBS} - ${GRID_LIBS} - gtest_dune_xt - COMMAND - ${CMAKE_BINARY_DIR}/run-in-dune-env - CMD_ARGS - ${CMAKE_CURRENT_BINARY_DIR}/${target} - --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml - TIMEOUT - ${DXT_TEST_TIMEOUT} - MPI_RANKS - ${ranks}) + dune_add_test( + NAME + ${target} + SOURCES + ${gen_source} + ${COMMON_HEADER} + LINK_LIBRARIES + ${link_xt_libs} + ${COMMON_LIBS} + ${GRID_LIBS} + gtest_dune_xt + COMMAND + ${CMAKE_BINARY_DIR}/run-in-dune-env + CMD_ARGS + ${CMAKE_CURRENT_BINARY_DIR}/${target} + --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml + TIMEOUT + ${DXT_TEST_TIMEOUT} + MPI_RANKS + ${ranks}) list(APPEND ${subdir}_dxt_test_binaries ${target}) set(dxt_test_names_${target} ${target}) set_tests_properties(${target} PROPERTIES LABELS ${subdir}) @@ -215,7 +190,8 @@ macro(add_subdir_tests subdir) endforeach(template ${test_templates}) add_custom_target(${subdir}_test_templates SOURCES ${test_templates}) - # this excludes meta-ini variation test cases because there binary name != test name + # this excludes meta-ini variation test cases because there binary name != + # test name foreach(test ${${subdir}_xt_test_binaries}) if(TARGET test) set_tests_properties(${test} PROPERTIES TIMEOUT ${DXT_TEST_TIMEOUT}) @@ -223,80 +199,31 @@ macro(add_subdir_tests subdir) endif(TARGET test) endforeach() - add_custom_target(${subdir}_test_binaries DEPENDS ${${subdir}_dxt_test_binaries}) # add_dependencies(test - # test_binaries) - add_custom_target(${subdir}_check - COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} -j ${DXT_TEST_PROCS} - DEPENDS ${subdir}_test_binaries USES_TERMINAL) - add_custom_target(${subdir}_recheck - COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} --rerun-failed -j ${DXT_TEST_PROCS} - DEPENDS ${subdir}_test_binaries USES_TERMINAL) + add_custom_target( + ${subdir}_test_binaries DEPENDS ${${subdir}_dxt_test_binaries} + )# add_dependencies(test test_binaries) + add_custom_target( + ${subdir}_check + COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} -j + ${DXT_TEST_PROCS} + DEPENDS ${subdir}_test_binaries + USES_TERMINAL) + add_custom_target( + ${subdir}_recheck + COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} --rerun-failed + -j ${DXT_TEST_PROCS} + DEPENDS ${subdir}_test_binaries + USES_TERMINAL) foreach(target ${${subdir}_dxt_test_binaries}) - set(all_sorted_testnames "${all_sorted_testnames}/${dxt_test_names_${target}}") + set(all_sorted_testnames + "${all_sorted_testnames}/${dxt_test_names_${target}}") endforeach() set(${subdir}_dxt_headercheck_targets "") get_headercheck_targets(${subdir}) - configure_file(${dune-xt-module-path}/dxt_test_binaries.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_test_binaries.cmake) - configure_file(${dune-xt-module-path}/dxt_all_sorted_testnames.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_all_sorted_testnames.cmake) - configure_file(${dune-xt-module-path}/dxt_headercheck_targets.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_headercheck_targets.cmake) - # we use a scatter/gather setup so this still goes thru (with no new/removed tests) on CI where SRC is mounted ro - add_custom_target(${subdir}_scatter_pickles_compile - COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_compiles_totals.pickle" - "${CMAKE_BINARY_DIR}/${subdir}_compiles_totals.pickle") - add_custom_target(${subdir}_scatter_pickles_run - COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_testruns_totals.pickle" - "${CMAKE_BINARY_DIR}/${subdir}_testruns_totals.pickle") - add_custom_target(${subdir}_rerun_test_distribution - ${CMAKE_BINARY_DIR}/run-in-dune-env - distribute_testing.py - "${CMAKE_BINARY_DIR}" - "${CMAKE_CURRENT_SOURCE_DIR}" - "${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_test_binaries.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_all_sorted_testnames.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_headercheck_targets.cmake" - "${DXT_BIN_COUNT}" - VERBATIM - USES_TERMINAL - DEPENDS scatter_pickles_compile scatter_pickles_run) - add_custom_target(${subdir}_copy_builders_if_different - COMMAND ${CMAKE_COMMAND} -E copy_if_different - "${CMAKE_BINARY_DIR}/${subdir}_builder_definitions.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_builder_definitions.cmake") - add_custom_target(${subdir}_gather_pickles_compile - COMMAND ${CMAKE_COMMAND} -E copy_if_different - "${CMAKE_BINARY_DIR}/${subdir}_compiles_totals.pickle" - "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_compiles_totals.pickle" - DEPENDS rerun_test_distribution) - add_custom_target(${subdir}_gather_pickles_run - COMMAND ${CMAKE_COMMAND} -E copy_if_different - "${CMAKE_BINARY_DIR}/${subdir}_testruns_totals.pickle" - "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_testruns_totals.pickle" - DEPENDS rerun_test_distribution) - - add_custom_target(${subdir}_refresh_test_timings) - add_dependencies(${subdir}_copy_builders_if_different ${subdir}_rerun_test_distribution) - add_dependencies(${subdir}_refresh_test_timings - ${subdir}_copy_builders_if_different - ${subdir}_gather_pickles_compile - ${subdir}_gather_pickles_run) endmacro(add_subdir_tests) macro(finalize_test_setup) - set(combine_targets - test_templates - test_binaries - check - recheck - scatter_pickles_compile - scatter_pickles_run - rerun_test_distribution - copy_builders_if_different - gather_pickles_compile - gather_pickles_run - refresh_test_timings) + set(combine_targets test_templates test_binaries check recheck) foreach(target ${combine_targets}) add_custom_target(${target}) foreach(subdir ${dxt_test_dirs}) @@ -331,12 +258,9 @@ macro(finalize_test_setup) endmacro() macro(dxt_exclude_from_headercheck) - exclude_from_headercheck(${ARGV0}) # make this robust to argument being passed with or without "" - string(REGEX - REPLACE "[\ \n]+([^\ ])" - ";\\1" - list - ${ARGV0}) + exclude_from_headercheck(${ARGV0}) # make this robust to argument being passed + # with or without "" + string(REGEX REPLACE "[\ \n]+([^\ ])" ";\\1" list ${ARGV0}) set(list "${list};${ARGV}") foreach(item ${list}) set(item ${CMAKE_CURRENT_SOURCE_DIR}/${item}) @@ -345,16 +269,13 @@ macro(dxt_exclude_from_headercheck) endmacro(dxt_exclude_from_headercheck) macro(dxt_add_python_tests) - add_custom_target(xt_test_python - "${CMAKE_BINARY_DIR}/run-in-dune-env" - "py.test" - "${CMAKE_BINARY_DIR}/python" - "--cov" - "${CMAKE_CURRENT_SOURCE_DIR}/" - "--junitxml=pytest_results.xml" - WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python" - DEPENDS bindings - VERBATIM USES_TERMINAL) + add_custom_target( + xt_test_python + "${CMAKE_BINARY_DIR}/run-in-dune-env" "py.test" "${CMAKE_BINARY_DIR}/python" + "--cov" "${CMAKE_CURRENT_SOURCE_DIR}/" "--junitxml=pytest_results.xml" + WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python" + DEPENDS bindings + VERBATIM USES_TERMINAL) if(NOT TARGET test_python) add_custom_target(test_python) endif(TARGET test_python) diff --git a/cmake/modules/dxt_all_sorted_testnames.cmake.in b/cmake/modules/dxt_all_sorted_testnames.cmake.in deleted file mode 100644 index 85b83fa4e..000000000 --- a/cmake/modules/dxt_all_sorted_testnames.cmake.in +++ /dev/null @@ -1,13 +0,0 @@ -# ~~~ -# This file is part of the dune-xt project: -# https://zivgitlab.uni-muenster.de/ag-ohlberger/dune-community/dune-xt -# Copyright 2009-2021 dune-xt developers and contributors. All rights reserved. -# License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -# with "runtime exception" (http://www.dune-project.org/license.html) -# Authors: -# René Fritze (2016) -# Tobias Leibner (2020) -# ~~~ - -${all_sorted_testnames} \ No newline at end of file diff --git a/cmake/modules/dxt_headercheck_targets.cmake.in b/cmake/modules/dxt_headercheck_targets.cmake.in deleted file mode 100644 index 48e17ac75..000000000 --- a/cmake/modules/dxt_headercheck_targets.cmake.in +++ /dev/null @@ -1,13 +0,0 @@ -# ~~~ -# This file is part of the dune-xt project: -# https://zivgitlab.uni-muenster.de/ag-ohlberger/dune-community/dune-xt -# Copyright 2009-2021 dune-xt developers and contributors. All rights reserved. -# License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -# with "runtime exception" (http://www.dune-project.org/license.html) -# Authors: -# René Fritze (2016) -# Tobias Leibner (2020) -# ~~~ - -${dxt_headercheck_targets} \ No newline at end of file diff --git a/cmake/modules/dxt_test_binaries.cmake.in b/cmake/modules/dxt_test_binaries.cmake.in deleted file mode 100644 index 265df11aa..000000000 --- a/cmake/modules/dxt_test_binaries.cmake.in +++ /dev/null @@ -1,13 +0,0 @@ -# ~~~ -# This file is part of the dune-xt project: -# https://zivgitlab.uni-muenster.de/ag-ohlberger/dune-community/dune-xt -# Copyright 2009-2021 dune-xt developers and contributors. All rights reserved. -# License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -# with "runtime exception" (http://www.dune-project.org/license.html) -# Authors: -# René Fritze (2016) -# Tobias Leibner (2020) -# ~~~ - -${dxt_test_binaries} \ No newline at end of file diff --git a/dune/xt/test/functions/builder_definitions.cmake b/dune/xt/test/functions/builder_definitions.cmake deleted file mode 100644 index ae3241765..000000000 --- a/dune/xt/test/functions/builder_definitions.cmake +++ /dev/null @@ -1,563 +0,0 @@ -set(DXT_BIN_COUNT "8" CACHE STRING "number of bins for test targets") -add_custom_target(test_binaries_builder_0 - DEPENDS headercheck__dune_xt_functions_base_function-as-flux-function.hh - headercheck__dune_xt_functions_base_reinterpret.hh - headercheck__dune_xt_functions_generic_flux-function.hh - headercheck__dune_xt_functions_indicator.hh - headercheck__python_dune_xt_functions_ESV2007.bindings.hh - test_ESV2007_cutoff_2d_3d__3d_simplex_alunonconformgrid - test_ESV2007_exact_solution__2d_simplex_alunonconformgrid - test_ESV2007_force__2d_cube_yaspgrid - test_ESV2007_force__2d_simplex_aluconformgrid - test_checkerboard__3d_cube_alunonconformgrid - test_constant__2d_cube_yaspgrid - test_constant__2d_simplex_alunonconformgrid - test_constant__3d_cube_yaspgrid - test_constant__3d_simplex_albertagrid - test_difference__1d_cube_yaspgrid - test_difference__3d_cube_alunonconformgrid - test_expression_matrix_valued__2d_cube_yaspgrid - test_expression_matrix_valued__2d_simplex_aluconformgrid - test_expression_parametric__3d_cube_yaspgrid - test_expression_vector_valued__3d_simplex_aluconformgrid - test_flattop__1d_cube_yaspgrid - test_flattop__2d_cube_yaspgrid - test_flattop__2d_simplex_alunonconformgrid - test_generic_flux_function__1d_cube_onedgrid - test_generic_flux_function__3d_simplex_alunonconformgrid - test_generic_function__2d_simplex_albertagrid - test_generic_grid_function__2d_simplex_albertagrid - test_generic_grid_function__3d_simplex_albertagrid - test_generic_grid_function__3d_simplex_uggrid - test_indicator_grid_function__2d_cube_alunonconformgrid - test_spe10_model2__3d_simplex_uggrid - test_sum_for_functions__2d_simplex_uggrid - test_sum_for_functions__3d_cube_yaspgrid - test_sum_for_functions__3d_simplex_albertagrid - test_sum_for_grid_functions__3d_simplex_alunonconformgrid - test_visualization__2d_simplex_aluconformgrid - test_visualization__3d_simplex_albertagrid) -set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_ESV2007_exact_solution__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_ESV2007_force__2d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_ESV2007_force__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_checkerboard__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_constant__2d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_constant__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_constant__3d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_constant__3d_simplex_albertagrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_difference__1d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_difference__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_expression_matrix_valued__2d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_expression_matrix_valued__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_expression_parametric__3d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_expression_vector_valued__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_flattop__1d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_flattop__2d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_flattop__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_generic_flux_function__1d_cube_onedgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_generic_flux_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_generic_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_generic_grid_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_generic_grid_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_generic_grid_function__3d_simplex_uggrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_indicator_grid_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_spe10_model2__3d_simplex_uggrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_sum_for_functions__2d_simplex_uggrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_sum_for_functions__3d_cube_yaspgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_sum_for_functions__3d_simplex_albertagrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_sum_for_grid_functions__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_visualization__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_0") -set_tests_properties(test_visualization__3d_simplex_albertagrid PROPERTIES LABELS "builder_0") -add_custom_target(test_binaries_builder_1 - DEPENDS headercheck__dune_xt_functions_base_visualization.hh - headercheck__dune_xt_functions_constant.hh - headercheck__dune_xt_functions_interfaces_element-flux-functions.hh - headercheck__dune_xt_functions_interfaces_element-functions.hh - headercheck__dune_xt_functions_inverse.hh - headercheck__python_dune_xt_functions_expression.hh - test_ESV2007_cutoff_2d_3d__3d_simplex_aluconformgrid - test_ESV2007_exact_solution__2d_simplex_albertagrid - test_ESV2007_exact_solution__2d_simplex_aluconformgrid - test_ESV2007_force__2d_simplex_alunonconformgrid - test_checkerboard__2d_simplex_aluconformgrid - test_constant__1d_cube_onedgrid - test_constant__2d_cube_alunonconformgrid - test_constant__3d_cube_alunonconformgrid - test_constant__3d_simplex_uggrid - test_difference__1d_cube_onedgrid - test_difference__2d_simplex_aluconformgrid - test_difference__2d_simplex_uggrid - test_expression_parametric__2d_simplex_aluconformgrid - test_expression_parametric__3d_simplex_uggrid - test_expression_vector_valued__1d_cube_yaspgrid - test_expression_vector_valued__3d_cube_yaspgrid - test_expression_vector_valued__3d_simplex_uggrid - test_flattop__3d_simplex_alunonconformgrid - test_generic_flux_function__3d_simplex_aluconformgrid - test_generic_function__1d_cube_yaspgrid - test_generic_function__3d_simplex_aluconformgrid - test_generic_function__3d_simplex_uggrid - test_generic_grid_function__1d_cube_onedgrid - test_generic_grid_function__2d_simplex_alunonconformgrid - test_indicator_function__1d_cube_onedgrid - test_indicator_grid_function__3d_cube_alunonconformgrid - test_spe10_model1__2d_simplex_aluconformgrid - test_sum_for_functions__3d_simplex_uggrid - test_visualization__2d_simplex_albertagrid - test_visualization__2d_simplex_uggrid - test_visualization__3d_simplex_alunonconformgrid) -set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_ESV2007_exact_solution__2d_simplex_albertagrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_ESV2007_exact_solution__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_ESV2007_force__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_checkerboard__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_constant__1d_cube_onedgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_constant__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_constant__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_constant__3d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_difference__1d_cube_onedgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_difference__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_difference__2d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_expression_parametric__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_expression_parametric__3d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_expression_vector_valued__1d_cube_yaspgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_expression_vector_valued__3d_cube_yaspgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_expression_vector_valued__3d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_flattop__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_generic_flux_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_generic_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_generic_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_generic_function__3d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_generic_grid_function__1d_cube_onedgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_generic_grid_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_indicator_function__1d_cube_onedgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_indicator_grid_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_spe10_model1__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_sum_for_functions__3d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_visualization__2d_simplex_albertagrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_visualization__2d_simplex_uggrid PROPERTIES LABELS "builder_1") -set_tests_properties(test_visualization__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1") -add_custom_target(test_binaries_builder_2 - DEPENDS headercheck__dune_xt_functions_exceptions.hh - headercheck__dune_xt_functions_expression.hh - headercheck__dune_xt_functions_expression_parametric.hh - headercheck__dune_xt_functions_interfaces_flux-function.hh - headercheck__dune_xt_functions_interfaces_grid-function.hh - headercheck__python_dune_xt_functions_interfaces.hh - test_ESV2007_cutoff_1d__1d_cube_onedgrid - test_ESV2007_cutoff_2d_3d__3d_cube_alunonconformgrid - test_ESV2007_force__2d_cube_alunonconformgrid - test_ESV2007_force__2d_simplex_uggrid - test_checkerboard__3d_simplex_albertagrid - test_difference__3d_simplex_albertagrid - test_expression_matrix_valued__2d_simplex_uggrid - test_expression_matrix_valued__3d_simplex_uggrid - test_expression_parametric__1d_cube_onedgrid - test_expression_parametric__3d_simplex_albertagrid - test_expression_vector_valued__2d_simplex_alunonconformgrid - test_generic_flux_function__3d_simplex_uggrid - test_generic_function__3d_simplex_albertagrid - test_generic_grid_function__2d_simplex_uggrid - test_indicator_function__2d_cube_alunonconformgrid - test_indicator_function__3d_simplex_uggrid - test_indicator_grid_function__1d_cube_onedgrid - test_indicator_grid_function__3d_cube_yaspgrid - test_product__1d_cube_onedgrid - test_product__2d_simplex_aluconformgrid - test_product__2d_simplex_alunonconformgrid - test_product__2d_simplex_uggrid - test_product__3d_simplex_albertagrid - test_product__3d_simplex_alunonconformgrid - test_spe10_model2__3d_simplex_albertagrid - test_spe10_model2__3d_simplex_aluconformgrid - test_sum_for_functions__1d_cube_yaspgrid - test_sum_for_grid_functions__2d_simplex_aluconformgrid - test_sum_for_grid_functions__3d_simplex_albertagrid - test_visualization__2d_cube_alunonconformgrid - test_visualization__2d_simplex_alunonconformgrid) -set_tests_properties(test_ESV2007_cutoff_1d__1d_cube_onedgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_ESV2007_force__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_ESV2007_force__2d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_checkerboard__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_difference__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_expression_matrix_valued__2d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_expression_matrix_valued__3d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_expression_parametric__1d_cube_onedgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_expression_parametric__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_expression_vector_valued__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_generic_flux_function__3d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_generic_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_generic_grid_function__2d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_indicator_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_indicator_function__3d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_indicator_grid_function__1d_cube_onedgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_indicator_grid_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_product__1d_cube_onedgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_product__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_product__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_product__2d_simplex_uggrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_product__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_product__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_spe10_model2__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_spe10_model2__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_sum_for_functions__1d_cube_yaspgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_sum_for_grid_functions__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_sum_for_grid_functions__3d_simplex_albertagrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_visualization__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_2") -set_tests_properties(test_visualization__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2") -add_custom_target(test_binaries_builder_3 - DEPENDS headercheck__dune_xt_functions_base_composition.hh - headercheck__dune_xt_functions_base_sliced.hh - headercheck__dune_xt_functions_base_transformed.hh - headercheck__python_dune_xt_functions_constant.hh - test_ESV2007_cutoff_1d__1d_cube_yaspgrid - test_ESV2007_cutoff_2d_3d__2d_simplex_albertagrid - test_ESV2007_exact_solution__2d_cube_yaspgrid - test_ESV2007_force__2d_simplex_albertagrid - test_constant__2d_simplex_uggrid - test_expression_matrix_valued__1d_cube_onedgrid - test_expression_matrix_valued__2d_cube_alunonconformgrid - test_expression_matrix_valued__2d_simplex_albertagrid - test_expression_matrix_valued__3d_cube_yaspgrid - test_expression_matrix_valued__3d_simplex_alunonconformgrid - test_expression_vector_valued__2d_cube_yaspgrid - test_expression_vector_valued__2d_simplex_albertagrid - test_expression_vector_valued__3d_simplex_alunonconformgrid - test_generic_flux_function__1d_cube_yaspgrid - test_generic_flux_function__3d_cube_alunonconformgrid - test_generic_flux_function__3d_simplex_albertagrid - test_generic_function__1d_cube_onedgrid - test_generic_function__2d_cube_alunonconformgrid - test_generic_function__3d_cube_yaspgrid - test_generic_function__3d_simplex_alunonconformgrid - test_generic_grid_function__3d_cube_yaspgrid - test_indicator_function__2d_simplex_alunonconformgrid - test_indicator_function__2d_simplex_uggrid - test_indicator_function__3d_simplex_albertagrid - test_indicator_grid_function__1d_cube_yaspgrid - test_indicator_grid_function__2d_simplex_albertagrid - test_indicator_grid_function__3d_simplex_aluconformgrid - test_product__2d_simplex_albertagrid - test_product__3d_cube_alunonconformgrid - test_spe10_model1__2d_cube_alunonconformgrid - test_spe10_model1__2d_cube_yaspgrid - test_spe10_model2__3d_simplex_alunonconformgrid - test_sum_for_grid_functions__2d_simplex_uggrid - test_visualization__3d_simplex_aluconformgrid) -set_tests_properties(test_ESV2007_cutoff_1d__1d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_ESV2007_exact_solution__2d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_ESV2007_force__2d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_constant__2d_simplex_uggrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_matrix_valued__1d_cube_onedgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_matrix_valued__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_matrix_valued__2d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_matrix_valued__3d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_matrix_valued__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_vector_valued__2d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_vector_valued__2d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_expression_vector_valued__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_flux_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_flux_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_flux_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_function__1d_cube_onedgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_generic_grid_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_indicator_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_indicator_function__2d_simplex_uggrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_indicator_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_indicator_grid_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_indicator_grid_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_indicator_grid_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_product__2d_simplex_albertagrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_product__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_spe10_model1__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_spe10_model1__2d_cube_yaspgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_spe10_model2__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_sum_for_grid_functions__2d_simplex_uggrid PROPERTIES LABELS "builder_3") -set_tests_properties(test_visualization__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_3") -add_custom_target(test_binaries_builder_4 - DEPENDS headercheck__dune_xt_functions_base_combined-functions.hh - headercheck__dune_xt_functions_base_derivatives-of-element-functions.hh - headercheck__dune_xt_functions_expression_default.hh - headercheck__dune_xt_functions_generic_function.hh - headercheck__dune_xt_functions_spe10_model2.hh - headercheck__python_dune_xt_functions_checkerboard.hh - test_ESV2007_cutoff_2d_3d__2d_simplex_aluconformgrid - test_ESV2007_cutoff_2d_3d__2d_simplex_uggrid - test_checkerboard__2d_cube_alunonconformgrid - test_checkerboard__2d_cube_yaspgrid - test_checkerboard__3d_cube_yaspgrid - test_checkerboard__3d_simplex_alunonconformgrid - test_difference__2d_simplex_albertagrid - test_difference__3d_simplex_uggrid - test_expression_matrix_valued__3d_simplex_albertagrid - test_expression_matrix_valued__3d_simplex_aluconformgrid - test_expression_parametric__2d_simplex_alunonconformgrid - test_expression_parametric__2d_simplex_uggrid - test_expression_parametric__3d_simplex_alunonconformgrid - test_expression_vector_valued__2d_cube_alunonconformgrid - test_flattop__1d_cube_onedgrid - test_flattop__2d_simplex_uggrid - test_flattop__3d_simplex_albertagrid - test_generic_function__2d_simplex_alunonconformgrid - test_generic_grid_function__1d_cube_yaspgrid - test_indicator_function__3d_cube_alunonconformgrid - test_indicator_grid_function__2d_simplex_uggrid - test_product__1d_cube_yaspgrid - test_product__3d_simplex_aluconformgrid - test_sum_for_functions__1d_cube_onedgrid - test_sum_for_functions__2d_simplex_albertagrid - test_sum_for_functions__3d_cube_alunonconformgrid - test_sum_for_grid_functions__1d_cube_onedgrid - test_sum_for_grid_functions__2d_simplex_alunonconformgrid - test_sum_for_grid_functions__3d_cube_alunonconformgrid - test_sum_for_grid_functions__3d_simplex_uggrid - test_visualization__2d_cube_yaspgrid) -set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_uggrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_checkerboard__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_checkerboard__2d_cube_yaspgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_checkerboard__3d_cube_yaspgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_checkerboard__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_difference__2d_simplex_albertagrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_difference__3d_simplex_uggrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_expression_matrix_valued__3d_simplex_albertagrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_expression_matrix_valued__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_expression_parametric__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_expression_parametric__2d_simplex_uggrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_expression_parametric__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_expression_vector_valued__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_flattop__1d_cube_onedgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_flattop__2d_simplex_uggrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_flattop__3d_simplex_albertagrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_generic_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_generic_grid_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_indicator_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_indicator_grid_function__2d_simplex_uggrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_product__1d_cube_yaspgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_product__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_functions__1d_cube_onedgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_functions__2d_simplex_albertagrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_functions__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_grid_functions__1d_cube_onedgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_grid_functions__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_grid_functions__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_sum_for_grid_functions__3d_simplex_uggrid PROPERTIES LABELS "builder_4") -set_tests_properties(test_visualization__2d_cube_yaspgrid PROPERTIES LABELS "builder_4") -add_custom_target(test_binaries_builder_5 - DEPENDS headercheck__dune_xt_functions_ESV2007.hh - headercheck__dune_xt_functions_derivatives.hh - headercheck__dune_xt_functions_expression_base.hh - headercheck__dune_xt_functions_expression_mathexpr.hh - headercheck__dune_xt_functions_spe10_model1.hh - test_ESV2007_cutoff_2d_3d__2d_cube_alunonconformgrid - test_ESV2007_cutoff_2d_3d__2d_cube_yaspgrid - test_checkerboard__1d_cube_onedgrid - test_checkerboard__1d_cube_yaspgrid - test_checkerboard__2d_simplex_uggrid - test_constant__3d_simplex_alunonconformgrid - test_difference__3d_simplex_alunonconformgrid - test_expression_matrix_valued__2d_simplex_alunonconformgrid - test_expression_parametric__2d_cube_alunonconformgrid - test_expression_parametric__3d_cube_alunonconformgrid - test_expression_vector_valued__2d_simplex_aluconformgrid - test_expression_vector_valued__3d_cube_alunonconformgrid - test_flattop__3d_cube_yaspgrid - test_flattop__3d_simplex_aluconformgrid - test_flattop__3d_simplex_uggrid - test_generic_flux_function__3d_cube_yaspgrid - test_generic_function__3d_cube_alunonconformgrid - test_generic_grid_function__2d_cube_alunonconformgrid - test_generic_grid_function__2d_cube_yaspgrid - test_generic_grid_function__2d_simplex_aluconformgrid - test_generic_grid_function__3d_simplex_alunonconformgrid - test_indicator_function__3d_simplex_aluconformgrid - test_indicator_grid_function__2d_cube_yaspgrid - test_indicator_grid_function__2d_simplex_aluconformgrid - test_indicator_grid_function__3d_simplex_albertagrid - test_product__2d_cube_yaspgrid - test_product__3d_cube_yaspgrid - test_spe10_model2__3d_cube_alunonconformgrid - test_sum_for_functions__3d_simplex_alunonconformgrid - test_sum_for_grid_functions__1d_cube_yaspgrid - test_visualization__1d_cube_yaspgrid - test_visualization__3d_cube_alunonconformgrid) -set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_checkerboard__1d_cube_onedgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_checkerboard__1d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_checkerboard__2d_simplex_uggrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_constant__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_difference__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_expression_matrix_valued__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_expression_parametric__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_expression_parametric__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_expression_vector_valued__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_expression_vector_valued__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_flattop__3d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_flattop__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_flattop__3d_simplex_uggrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_generic_flux_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_generic_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_generic_grid_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_generic_grid_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_generic_grid_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_generic_grid_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_indicator_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_indicator_grid_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_indicator_grid_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_indicator_grid_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_product__2d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_product__3d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_spe10_model2__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_sum_for_functions__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_sum_for_grid_functions__1d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_visualization__1d_cube_yaspgrid PROPERTIES LABELS "builder_5") -set_tests_properties(test_visualization__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5") -add_custom_target(test_binaries_builder_6 - DEPENDS headercheck__dune_xt_functions_base_combined-element-functions.hh - headercheck__dune_xt_functions_base_combined-grid-functions.hh - headercheck__dune_xt_functions_flattop.hh - headercheck__dune_xt_functions_generic_grid-function.hh - headercheck__python_dune_xt_functions_indicator.hh - test_ESV2007_cutoff_2d_3d__2d_simplex_alunonconformgrid - test_ESV2007_cutoff_2d_3d__3d_cube_yaspgrid - test_ESV2007_exact_solution__2d_simplex_uggrid - test_checkerboard__2d_simplex_albertagrid - test_checkerboard__2d_simplex_alunonconformgrid - test_checkerboard__3d_simplex_aluconformgrid - test_checkerboard__3d_simplex_uggrid - test_constant__2d_simplex_albertagrid - test_constant__2d_simplex_aluconformgrid - test_constant__3d_simplex_aluconformgrid - test_difference__3d_simplex_aluconformgrid - test_empty - test_expression_matrix_valued__3d_cube_alunonconformgrid - test_expression_parametric__2d_cube_yaspgrid - test_expression_parametric__2d_simplex_albertagrid - test_expression_vector_valued__2d_simplex_uggrid - test_generic_function__2d_cube_yaspgrid - test_generic_function__2d_simplex_uggrid - test_indicator_function__2d_cube_yaspgrid - test_indicator_function__2d_simplex_aluconformgrid - test_indicator_grid_function__3d_simplex_alunonconformgrid - test_indicator_grid_function__3d_simplex_uggrid - test_product__3d_simplex_uggrid - test_spe10_model1__2d_simplex_alunonconformgrid - test_spe10_model1__2d_simplex_uggrid - test_spe10_model2__3d_cube_yaspgrid - test_sum_for_functions__2d_cube_alunonconformgrid - test_sum_for_functions__2d_simplex_aluconformgrid - test_sum_for_grid_functions__2d_simplex_albertagrid - test_sum_for_grid_functions__3d_cube_yaspgrid - test_sum_for_grid_functions__3d_simplex_aluconformgrid - test_visualization__3d_cube_yaspgrid) -set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_cube_yaspgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_ESV2007_exact_solution__2d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_checkerboard__2d_simplex_albertagrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_checkerboard__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_checkerboard__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_checkerboard__3d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_constant__2d_simplex_albertagrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_constant__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_constant__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_difference__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_empty PROPERTIES LABELS "builder_6") -set_tests_properties(test_expression_matrix_valued__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_expression_parametric__2d_cube_yaspgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_expression_parametric__2d_simplex_albertagrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_expression_vector_valued__2d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_generic_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_generic_function__2d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_indicator_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_indicator_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_indicator_grid_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_indicator_grid_function__3d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_product__3d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_spe10_model1__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_spe10_model1__2d_simplex_uggrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_spe10_model2__3d_cube_yaspgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_sum_for_functions__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_sum_for_functions__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_sum_for_grid_functions__2d_simplex_albertagrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_sum_for_grid_functions__3d_cube_yaspgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_sum_for_grid_functions__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6") -set_tests_properties(test_visualization__3d_cube_yaspgrid PROPERTIES LABELS "builder_6") -add_custom_target(test_binaries_builder_7 - DEPENDS headercheck__dune_xt_functions_base_function-as-grid-function.hh - headercheck__dune_xt_functions_checkerboard.hh - headercheck__dune_xt_functions_generic_element-function.hh - headercheck__dune_xt_functions_interfaces_function.hh - headercheck__dune_xt_functions_type_traits.hh - test_ESV2007_cutoff_2d_3d__3d_simplex_albertagrid - test_ESV2007_cutoff_2d_3d__3d_simplex_uggrid - test_ESV2007_exact_solution__2d_cube_alunonconformgrid - test_constant__1d_cube_yaspgrid - test_difference__2d_cube_alunonconformgrid - test_difference__2d_cube_yaspgrid - test_difference__2d_simplex_alunonconformgrid - test_difference__3d_cube_yaspgrid - test_expression_matrix_valued__1d_cube_yaspgrid - test_expression_parametric__1d_cube_yaspgrid - test_expression_parametric__3d_simplex_aluconformgrid - test_expression_vector_valued__1d_cube_onedgrid - test_expression_vector_valued__3d_simplex_albertagrid - test_flattop__2d_cube_alunonconformgrid - test_flattop__2d_simplex_albertagrid - test_flattop__2d_simplex_aluconformgrid - test_flattop__3d_cube_alunonconformgrid - test_generic_function__2d_simplex_aluconformgrid - test_generic_grid_function__3d_cube_alunonconformgrid - test_generic_grid_function__3d_simplex_aluconformgrid - test_indicator_function__1d_cube_yaspgrid - test_indicator_function__2d_simplex_albertagrid - test_indicator_function__3d_cube_yaspgrid - test_indicator_function__3d_simplex_alunonconformgrid - test_indicator_grid_function__2d_simplex_alunonconformgrid - test_product__2d_cube_alunonconformgrid - test_spe10_model1__2d_simplex_albertagrid - test_sum_for_functions__2d_cube_yaspgrid - test_sum_for_functions__2d_simplex_alunonconformgrid - test_sum_for_functions__3d_simplex_aluconformgrid - test_sum_for_grid_functions__2d_cube_alunonconformgrid - test_sum_for_grid_functions__2d_cube_yaspgrid - test_visualization__1d_cube_onedgrid) -set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_albertagrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_uggrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_ESV2007_exact_solution__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_constant__1d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_difference__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_difference__2d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_difference__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_difference__3d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_expression_matrix_valued__1d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_expression_parametric__1d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_expression_parametric__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_expression_vector_valued__1d_cube_onedgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_expression_vector_valued__3d_simplex_albertagrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_flattop__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_flattop__2d_simplex_albertagrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_flattop__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_flattop__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_generic_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_generic_grid_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_generic_grid_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_indicator_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_indicator_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_indicator_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_indicator_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_indicator_grid_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_product__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_spe10_model1__2d_simplex_albertagrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_sum_for_functions__2d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_sum_for_functions__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_sum_for_functions__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_sum_for_grid_functions__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_sum_for_grid_functions__2d_cube_yaspgrid PROPERTIES LABELS "builder_7") -set_tests_properties(test_visualization__1d_cube_onedgrid PROPERTIES LABELS "builder_7") diff --git a/dune/xt/test/la/builder_definitions.cmake b/dune/xt/test/la/builder_definitions.cmake deleted file mode 100644 index 127f57218..000000000 --- a/dune/xt/test/la/builder_definitions.cmake +++ /dev/null @@ -1,118 +0,0 @@ -set(DXT_BIN_COUNT "2" CACHE STRING "number of bins for test targets") -add_custom_target(test_binaries_builder_0 - DEPENDS headercheck__dune_xt_la_container_common.hh - headercheck__dune_xt_la_container_common_matrix.hh - headercheck__dune_xt_la_container_common_matrix_dense.hh - headercheck__dune_xt_la_container_common_vector.hh - headercheck__dune_xt_la_container_common_vector_dense.hh - headercheck__dune_xt_la_container_conversion.hh - headercheck__dune_xt_la_container_eigen_base.hh - headercheck__dune_xt_la_container_eigen_dense.hh - headercheck__dune_xt_la_container_eye-matrix.hh - headercheck__dune_xt_la_container_io.hh - headercheck__dune_xt_la_container_matrix-interface.hh - headercheck__dune_xt_la_container_pattern.hh - headercheck__dune_xt_la_container_vector-array_list.hh - headercheck__dune_xt_la_eigen-solver_default.hh - headercheck__dune_xt_la_eigen-solver_internal_lapacke.hh - headercheck__dune_xt_la_exceptions.hh - headercheck__dune_xt_la_matrix-inverter_default.hh - headercheck__dune_xt_la_matrix-inverter_eigen.hh - headercheck__dune_xt_la_matrix-inverter_fmatrix.hh - headercheck__dune_xt_la_matrix-inverter_internal_eigen.hh - headercheck__dune_xt_la_solver.hh - headercheck__dune_xt_la_solver_eigen.hh - headercheck__dune_xt_la_solver_fasp.hh - headercheck__dune_xt_la_solver_istl.hh - headercheck__dune_xt_la_solver_istl_amg.hh - headercheck__dune_xt_la_solver_istl_preconditioners.hh - headercheck__dune_xt_la_solver_istl_schurcomplement.hh - headercheck__dune_xt_la_test_container.hh - headercheck__dune_xt_la_test_eigensolver.hh - headercheck__dune_xt_la_type_traits.hh - headercheck__python_dune_xt_la_container.bindings.hh - headercheck__python_dune_xt_la_container_container-interface.hh - headercheck__python_dune_xt_la_container_vector-interface.hh - test_algorithms_qr_5x5 - test_algorithms_solve_sym_tridiag_posdef - test_convert - test_eigensolver_for_real_matrix_with_distinct_real_evs - test_eigensolver_for_real_matrix_with_real_evs_from_2d_euler_equations - test_eigensolver_for_real_matrix_with_real_evs_from_3d_pointsource - test_empty - test_matrix_view - test_matrixinverter_for_complex_matrix - test_matrixinverter_for_complex_matrix_2 - test_saddlepoint) -set_tests_properties(test_algorithms_qr_5x5 PROPERTIES LABELS "builder_0") -set_tests_properties(test_algorithms_solve_sym_tridiag_posdef PROPERTIES LABELS "builder_0") -set_tests_properties(test_convert PROPERTIES LABELS "builder_0") -set_tests_properties(test_eigensolver_for_real_matrix_with_distinct_real_evs PROPERTIES LABELS "builder_0") -set_tests_properties(test_eigensolver_for_real_matrix_with_real_evs_from_2d_euler_equations - PROPERTIES LABELS "builder_0") -set_tests_properties(test_eigensolver_for_real_matrix_with_real_evs_from_3d_pointsource PROPERTIES LABELS "builder_0") -set_tests_properties(test_empty PROPERTIES LABELS "builder_0") -set_tests_properties(test_matrix_view PROPERTIES LABELS "builder_0") -set_tests_properties(test_matrixinverter_for_complex_matrix PROPERTIES LABELS "builder_0") -set_tests_properties(test_matrixinverter_for_complex_matrix_2 PROPERTIES LABELS "builder_0") -set_tests_properties(test_saddlepoint PROPERTIES LABELS "builder_0") -add_custom_target(test_binaries_builder_1 - DEPENDS headercheck__dune_xt_la_algorithms.hh - headercheck__dune_xt_la_algorithms_cholesky.hh - headercheck__dune_xt_la_algorithms_qr.hh - headercheck__dune_xt_la_algorithms_solve_sym_tridiag_posdef.hh - headercheck__dune_xt_la_algorithms_triangular_solves.hh - headercheck__dune_xt_la_container.hh - headercheck__dune_xt_la_container_common_matrix_sparse.hh - headercheck__dune_xt_la_container_common_vector_sparse.hh - headercheck__dune_xt_la_container_container-interface.hh - headercheck__dune_xt_la_container_eigen.hh - headercheck__dune_xt_la_container_eigen_sparse.hh - headercheck__dune_xt_la_container_interfaces.hh - headercheck__dune_xt_la_container_istl.hh - headercheck__dune_xt_la_container_matrix-view.hh - headercheck__dune_xt_la_container_vector-array_interface.hh - headercheck__dune_xt_la_container_vector-interface-internal.hh - headercheck__dune_xt_la_container_vector-interface.hh - headercheck__dune_xt_la_container_vector-view.hh - headercheck__dune_xt_la_eigen-solver.hh - headercheck__dune_xt_la_eigen-solver_eigen.hh - headercheck__dune_xt_la_eigen-solver_fmatrix.hh - headercheck__dune_xt_la_eigen-solver_internal_base.hh - headercheck__dune_xt_la_eigen-solver_internal_eigen.hh - headercheck__dune_xt_la_eigen-solver_internal_numpy.hh - headercheck__dune_xt_la_eigen-solver_internal_shifted-qr.hh - headercheck__dune_xt_la_matrix-inverter.hh - headercheck__dune_xt_la_matrix-inverter_internal_base.hh - headercheck__dune_xt_la_solver_common.hh - headercheck__dune_xt_la_solver_istl_saddlepoint.hh - headercheck__dune_xt_la_solver_view.hh - headercheck__dune_xt_la_test_matrixinverter.hh - headercheck__python_dune_xt_la_container_matrix-interface.hh - headercheck__python_dune_xt_la_container_pattern.hh - test_algorithms_cholesky - test_algorithms_qr_5x3 - test_algorithms_qr_block_2x3x3 - test_algorithms_triangular_solves_2x2 - test_algorithms_triangular_solves_3x3 - test_container - test_container_matrix - test_container_vector - test_eigensolver_for_matrix_from_eigens_example - test_eigensolver_for_real_matrix_with_complex_evs - test_eigensolver_for_real_matrix_with_real_evs - test_matrixinverter_for_real_matrix_from_3d_pointsource - test_pattern) -set_tests_properties(test_algorithms_cholesky PROPERTIES LABELS "builder_1") -set_tests_properties(test_algorithms_qr_5x3 PROPERTIES LABELS "builder_1") -set_tests_properties(test_algorithms_qr_block_2x3x3 PROPERTIES LABELS "builder_1") -set_tests_properties(test_algorithms_triangular_solves_2x2 PROPERTIES LABELS "builder_1") -set_tests_properties(test_algorithms_triangular_solves_3x3 PROPERTIES LABELS "builder_1") -set_tests_properties(test_container PROPERTIES LABELS "builder_1") -set_tests_properties(test_container_matrix PROPERTIES LABELS "builder_1") -set_tests_properties(test_container_vector PROPERTIES LABELS "builder_1") -set_tests_properties(test_eigensolver_for_matrix_from_eigens_example PROPERTIES LABELS "builder_1") -set_tests_properties(test_eigensolver_for_real_matrix_with_complex_evs PROPERTIES LABELS "builder_1") -set_tests_properties(test_eigensolver_for_real_matrix_with_real_evs PROPERTIES LABELS "builder_1") -set_tests_properties(test_matrixinverter_for_real_matrix_from_3d_pointsource PROPERTIES LABELS "builder_1") -set_tests_properties(test_pattern PROPERTIES LABELS "builder_1") -- GitLab From 288890f0ca79d5abb52854817bd5d0425c0d14b8 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 16:35:45 +0100 Subject: [PATCH 09/13] Add cmake_format pre-commit hook --- .vcsetup | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.vcsetup b/.vcsetup index 1efe93b62..1e40b0e86 160000 --- a/.vcsetup +++ b/.vcsetup @@ -1 +1 @@ -Subproject commit 1efe93b62e36634240af102da555c2b90d937abe +Subproject commit 1e40b0e86bb7eebef7d005a7ac2371abbc58efb4 -- GitLab From 948a49a79153b31f5a0b89a791c72879d0ac22be Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 16:47:07 +0100 Subject: [PATCH 10/13] Also install pytest-cov --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 82867a81a..b4a4c34ae 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -84,7 +84,7 @@ dune_pybindxi_install_python_package(PATH python) include_dependent_binary_python_dirs() # install jinja2 for code generation into the dune-python virtualenv -execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2) +execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov) add_subdirectory(python) -- GitLab From fc956c7b10670168c64e2558729231ea8e1d94ea Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 17:15:10 +0100 Subject: [PATCH 11/13] Another missing python module --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b4a4c34ae..09c902468 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -84,7 +84,7 @@ dune_pybindxi_install_python_package(PATH python) include_dependent_binary_python_dirs() # install jinja2 for code generation into the dune-python virtualenv -execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov) +execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov ipywidgets) add_subdirectory(python) -- GitLab From fe0a18195a724b5f8350afee009f2ec4bc557f85 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 17:42:52 +0100 Subject: [PATCH 12/13] Apply cmake format --- .vcsetup | 2 +- CMakeLists.txt | 41 ++--- cmake/UseDoxygen.cmake | 23 ++- cmake/modules/CMakeLists.txt | 31 ++-- .../DunePybindxiInstallPythonPackage.cmake | 32 ++-- cmake/modules/DunePybindxiUtils.cmake | 16 +- cmake/modules/DuneUtils.cmake | 94 +++++------ cmake/modules/DuneXTTesting.cmake | 48 ++---- cmake/modules/DuneXtMacros.cmake | 46 ++++-- cmake/modules/DuneXtVersionHelper.cmake | 107 ++++++------ cmake/modules/FindEigen3.cmake | 21 +-- cmake/modules/FindFASP.cmake | 4 +- cmake/modules/FindLIKWID.cmake | 12 +- cmake/modules/FindMPI4PY.cmake | 22 ++- cmake/modules/FindPythonLibsNew.cmake | 65 +++----- cmake/modules/FindSpe10Data.cmake | 31 ++-- cmake/modules/FindTBB.cmake | 155 ++++++++++-------- cmake/modules/GridUtils.cmake | 8 +- cmake/modules/Hints.cmake | 8 +- cmake/modules/XtCompilerSupport.cmake | 12 +- cmake/modules/XtTooling.cmake | 101 +++++------- dune/CMakeLists.txt | 6 +- dune/pybindxi/CMakeLists.txt | 59 +++---- dune/xt/la/CMakeLists.txt | 18 +- dune/xt/test/CMakeLists.txt | 15 +- dune/xt/test/la/CMakeLists.txt | 1 - python/scripts/CMakeLists.txt | 1 - python/wrapper/CMakeLists.txt | 1 - 28 files changed, 487 insertions(+), 493 deletions(-) diff --git a/.vcsetup b/.vcsetup index 1e40b0e86..a9ada4233 160000 --- a/.vcsetup +++ b/.vcsetup @@ -1 +1 @@ -Subproject commit 1e40b0e86bb7eebef7d005a7ac2371abbc58efb4 +Subproject commit a9ada423332d91cadddfc7ba50ce889ed1758435 diff --git a/CMakeLists.txt b/CMakeLists.txt index 09c902468..bcb9e033d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,11 +25,11 @@ set(ENV{PKG_CONFIG_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/../local/lib/pkgconfig:$EN set(CMAKE_COLOR_MAKEFILE ON) # guess dune-common build dir -if(NOT (dune-common_DIR OR dune-common_ROOT OR "${CMAKE_PREFIX_PATH}" MATCHES ".*dune-common.*")) - string(REPLACE ${CMAKE_PROJECT_NAME} - dune-common - dune-common_DIR - ${PROJECT_BINARY_DIR}) +if(NOT + (dune-common_DIR + OR dune-common_ROOT + OR "${CMAKE_PREFIX_PATH}" MATCHES ".*dune-common.*")) + string(REPLACE ${CMAKE_PROJECT_NAME} dune-common dune-common_DIR ${PROJECT_BINARY_DIR}) endif() # find dune-common and set the module path @@ -52,13 +52,14 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) find_package(Python3 REQUIRED COMPONENTS Interpreter Development) add_subdirectory(pybind11) -dune_enable_all_packages(INCLUDE_DIRS - ${dune-xt_SOURCE_DIR}/dune - ${Python3_INCLUDE_DIRS} - MODULE_LIBRARIES - dunepybindxi - gtest_dune_xt - dunext) +dune_enable_all_packages( + INCLUDE_DIRS + ${dune-xt_SOURCE_DIR}/dune + ${Python3_INCLUDE_DIRS} + MODULE_LIBRARIES + dunepybindxi + gtest_dune_xt + dunext) target_link_libraries(dunepybindxi PRIVATE pybind11::module) target_link_libraries(dunepybindxi PRIVATE ${Python3_LIBRARIES}) @@ -68,10 +69,11 @@ target_include_directories(dunepybindxi PRIVATE pybind11::module) # ---------------------------------------------------------------------------------------------------- # General Settings # ---------------------------------------------------------------------------------------------------- -execute_process(COMMAND ${CMAKE_SOURCE_DIR}/getRevision.sh - OUTPUT_VARIABLE COMMIT - ERROR_VARIABLE shell_error - OUTPUT_STRIP_TRAILING_WHITESPACE) +execute_process( + COMMAND ${CMAKE_SOURCE_DIR}/getRevision.sh + OUTPUT_VARIABLE COMMIT + ERROR_VARIABLE shell_error + OUTPUT_STRIP_TRAILING_WHITESPACE) # silence most warnings we are not responsible for include(DuneUtils) @@ -86,7 +88,6 @@ include_dependent_binary_python_dirs() # install jinja2 for code generation into the dune-python virtualenv execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov ipywidgets) - add_subdirectory(python) include(GridUtils) @@ -102,6 +103,6 @@ add_pylicense() finalize_dune_project(GENERATE_CONFIG_H_CMAKE) # patch config.h to remove warnings about unused HAVE_GRIDTYPE -execute_process(COMMAND sed -i -e - "s,^\\([ ]*\\)\#if HAVE_GRIDTYPE$,\\1\#if defined(HAVE_GRIDTYPE) \\&\\& HAVE_GRIDTYPE,g" - ${CMAKE_CURRENT_BINARY_DIR}/config.h) +execute_process( + COMMAND sed -i -e "s,^\\([ ]*\\)\#if HAVE_GRIDTYPE$,\\1\#if defined(HAVE_GRIDTYPE) \\&\\& HAVE_GRIDTYPE,g" + ${CMAKE_CURRENT_BINARY_DIR}/config.h) diff --git a/cmake/UseDoxygen.cmake b/cmake/UseDoxygen.cmake index 4a901a966..561d63aa9 100644 --- a/cmake/UseDoxygen.cmake +++ b/cmake/UseDoxygen.cmake @@ -25,9 +25,9 @@ # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL # THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. # * Run Doxygen # @@ -67,9 +67,10 @@ endmacro() find_package(Doxygen) if(DOXYGEN_FOUND) - find_file(DOXYFILE_IN - NAMES "Doxyfile.cmake.in" "Doxyfile.in" - PATHS "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_ROOT}/Modules/") + find_file( + DOXYFILE_IN + NAMES "Doxyfile.cmake.in" "Doxyfile.in" + PATHS "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_ROOT}/Modules/") include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Doxyfile.in DEFAULT_MSG DOXYFILE_IN) @@ -81,7 +82,10 @@ if(DOXYGEN_FOUND AND DOXYFILE_IN) usedoxygen_set_default(DOXYFILE_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/doc") usedoxygen_set_default(DOXYFILE_HTML_DIR "html") - set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_HTML_DIR}") + set_property( + DIRECTORY + APPEND + PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_HTML_DIR}") set(DOXYFILE_LATEX "NO") set(DOXYFILE_PDFLATEX "NO") @@ -92,7 +96,10 @@ if(DOXYGEN_FOUND AND DOXYFILE_IN) set(DOXYFILE_LATEX "YES") usedoxygen_set_default(DOXYFILE_LATEX_DIR "latex") - set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_LATEX_DIR}") + set_property( + DIRECTORY + APPEND + PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_LATEX_DIR}") if(PDFLATEX_COMPILER) set(DOXYFILE_PDFLATEX "YES") diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt index 8b14c21e1..df6af9caf 100644 --- a/cmake/modules/CMakeLists.txt +++ b/cmake/modules/CMakeLists.txt @@ -11,18 +11,19 @@ # Tobias Leibner (2020) # ~~~ -install(FILES DuneTBB.cmake - DuneUtils.cmake - DuneXtMacros.cmake - DuneXtVersionHelper.cmake - DunePybindxiMacros.cmake - DunePybindxiUtils.cmake - FindPythonLibsNew.cmake - FindEigen3.cmake - FindFASP.cmake - FindLIKWID.cmake - FindTBB.cmake - GridUtils.cmake - XtCompilerSupport.cmake - XtTooling.cmake - DESTINATION ${DUNE_INSTALL_MODULEDIR}) +install( + FILES DuneTBB.cmake + DuneUtils.cmake + DuneXtMacros.cmake + DuneXtVersionHelper.cmake + DunePybindxiMacros.cmake + DunePybindxiUtils.cmake + FindPythonLibsNew.cmake + FindEigen3.cmake + FindFASP.cmake + FindLIKWID.cmake + FindTBB.cmake + GridUtils.cmake + XtCompilerSupport.cmake + XtTooling.cmake + DESTINATION ${DUNE_INSTALL_MODULEDIR}) diff --git a/cmake/modules/DunePybindxiInstallPythonPackage.cmake b/cmake/modules/DunePybindxiInstallPythonPackage.cmake index ee1622436..2f351c23e 100644 --- a/cmake/modules/DunePybindxiInstallPythonPackage.cmake +++ b/cmake/modules/DunePybindxiInstallPythonPackage.cmake @@ -21,8 +21,8 @@ macro(include_dependent_binary_python_dirs) # disable most warnings from depende endforeach(_mod DEPENDENCIES) endmacro(include_dependent_binary_python_dirs) -# copy of dune_python_install_package from dune-common changes: - package is always installed into the dune-env, even -# if a setup.py.in is found instead of a setup.py - if a setup.py.in is found, the whole directory is symlinked to the +# copy of dune_python_install_package from dune-common changes: - package is always installed into the dune-env, even if +# a setup.py.in is found instead of a setup.py - if a setup.py.in is found, the whole directory is symlinked to the # binary dir function(dune_pybindxi_install_python_package) # Parse Arguments @@ -70,8 +70,8 @@ function(dune_pybindxi_install_python_package) if(IS_DIRECTORY ${DUNE_PYTHON_WHEELHOUSE}) set(WHEEL_OPTION "--find-links=${DUNE_PYTHON_WHEELHOUSE}") # - # The following line is a bummer! We cannot have editable packages once we start using global installations! This - # is related to the nightmare that is https://github.com/pypa/pip/issues/3 + # The following line is a bummer! We cannot have editable packages once we start using global installations! This is + # related to the nightmare that is https://github.com/pypa/pip/issues/3 # set(INSTALL_EDITABLE FALSE) endif() @@ -104,10 +104,7 @@ function(dune_pybindxi_install_python_package) if(PYINST_PUREPYTHON AND DUNE_PYTHON_VIRTUALENV_SETUP) message("-- Installing python package at ${CMAKE_CURRENT_SOURCE_DIR}/${PYINST_PATH} into the virtualenv...") - dune_execute_process(COMMAND - "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" - "${INSTALL_CMDLINE}" - ERROR_MESSAGE + dune_execute_process(COMMAND "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" "${INSTALL_CMDLINE}" ERROR_MESSAGE "dune_python_install_package: Error installing into virtualenv!") endif() @@ -119,29 +116,28 @@ function(dune_pybindxi_install_python_package) dune_module_path(MODULE dune-common RESULT scriptdir SCRIPT_DIR) # Determine a target name for installing this package - string(REPLACE "/" - "_" - targetname - "install_python_${CMAKE_CURRENT_SOURCE_DIR}_${PYINST_PATH}") + string(REPLACE "/" "_" targetname "install_python_${CMAKE_CURRENT_SOURCE_DIR}_${PYINST_PATH}") # Add a custom target that globally installs this package if requested - add_custom_target(${targetname} - COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} ${INSTALL_CMDLINE} - COMMENT "Installing the python package at ${PYINST_FULLPATH}") + add_custom_target( + ${targetname} + COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} ${INSTALL_CMDLINE} + COMMENT "Installing the python package at ${PYINST_FULLPATH}") add_dependencies(install_python ${targetname}) # Define rules for `make install` that install a wheel into a central wheelhouse # - # NB: This is necessary, to allow mixing installed and non-installed modules with python packages. The wheelhouse - # will allow to install any missing python packages into a virtual environment. + # NB: This is necessary, to allow mixing installed and non-installed modules with python packages. The wheelhouse will + # allow to install any missing python packages into a virtual environment. # # Construct the wheel installation commandline set(WHEEL_COMMAND ${PYTHON_EXECUTABLE} -m pip wheel -w ${DUNE_PYTHON_WHEELHOUSE} ${PYINST_FULLPATH}) # Add the installation rule - install(CODE "message(\"Installing wheel for python package at ${PYINST_FULLPATH}...\") + install( + CODE "message(\"Installing wheel for python package at ${PYINST_FULLPATH}...\") dune_execute_process(COMMAND ${WHEEL_COMMAND} ERROR_MESSAGE \"Error installing wheel for python package at ${PYINST_FULLPATH}\" )") diff --git a/cmake/modules/DunePybindxiUtils.cmake b/cmake/modules/DunePybindxiUtils.cmake index 38110958b..755d86620 100644 --- a/cmake/modules/DunePybindxiUtils.cmake +++ b/cmake/modules/DunePybindxiUtils.cmake @@ -15,8 +15,8 @@ # ~~~ # Build a Python extension module: dune_pybindxi_add_module(<name> [MODULE | SHARED] [EXCLUDE_FROM_ALL] [NO_EXTRAS] -# [THIN_LTO] source1 [source2 ...]) -# Renamed copy of pybind11_add_module, added code blocks are marked with dune-pybindxi START/END +# [THIN_LTO] source1 [source2 ...]) Renamed copy of pybind11_add_module, added code blocks are marked with dune-pybindxi +# START/END function(dune_pybindxi_add_module target_name) set(options "MODULE;SHARED;EXCLUDE_FROM_ALL;NO_EXTRAS;SYSTEM;THIN_LTO;OPT_SIZE") # the next two lines were added/modified compared to the original function @@ -61,9 +61,9 @@ function(dune_pybindxi_add_module target_name) pybind11_extension(${target_name}) # -fvisibility=hidden is required to allow multiple modules compiled against different pybind versions to work - # properly, and for some features (e.g. py::module_local). We force it on everything inside the `pybind11` - # namespace; also turning it on for a pybind module compilation here avoids potential warnings or issues from having - # mixed hidden/non-hidden types. + # properly, and for some features (e.g. py::module_local). We force it on everything inside the `pybind11` namespace; + # also turning it on for a pybind module compilation here avoids potential warnings or issues from having mixed + # hidden/non-hidden types. if(NOT DEFINED CMAKE_CXX_VISIBILITY_PRESET) set_target_properties(${target_name} PROPERTIES CXX_VISIBILITY_PRESET "hidden") endif() @@ -121,11 +121,7 @@ macro(dxt_add_make_dependent_bindings) dune_module_path(MODULE ${_mod} RESULT ${_mod}_binary_dir BUILD_DIR) set(tdir ${${_mod}_binary_dir}) if(IS_DIRECTORY ${tdir}) - add_custom_target(${_mod}_bindings - COMMAND ${CMAKE_COMMAND} - --build ${tdir} - --target bindings_no_ext - -- -j1) + add_custom_target(${_mod}_bindings COMMAND ${CMAKE_COMMAND} --build ${tdir} --target bindings_no_ext -- -j1) add_dependencies(dependent_bindings ${_mod}_bindings) endif() endforeach() diff --git a/cmake/modules/DuneUtils.cmake b/cmake/modules/DuneUtils.cmake index 197f97180..60ead286a 100644 --- a/cmake/modules/DuneUtils.cmake +++ b/cmake/modules/DuneUtils.cmake @@ -22,7 +22,9 @@ function(TO_LIST_SPACES _LIST_NAME OUTPUT_VAR) foreach(ITEM ${${_LIST_NAME}}) set(NEW_LIST_SPACE ${NEW_LIST_SPACE} ${ITEM}) endforeach() - set(${OUTPUT_VAR} "${NEW_LIST_SPACE}" PARENT_SCOPE) + set(${OUTPUT_VAR} + "${NEW_LIST_SPACE}" + PARENT_SCOPE) endfunction() if(DEFINED dune-xt_DIR) @@ -41,24 +43,28 @@ enable_testing() include(DuneXTTesting) macro(add_header_listing) # header - file(GLOB_RECURSE current_module_header - "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hh" - "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.pbh" - "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hxx" - "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hh" - "${CMAKE_CURRENT_SOURCE_DIR}/python/*.pbh" - "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hxx") + file( + GLOB_RECURSE + current_module_header + "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hh" + "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.pbh" + "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hxx" + "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hh" + "${CMAKE_CURRENT_SOURCE_DIR}/python/*.pbh" + "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hxx") set(COMMON_HEADER ${current_module_header} ${DUNE_HEADERS}) # add header of dependent modules for header listing foreach(_mod ${ALL_DEPENDENCIES}) - file(GLOB_RECURSE HEADER_LIST - "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hh" - "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.pbh" - "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hxx" - "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hh" - "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.pbh" - "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hxx") + file( + GLOB_RECURSE + HEADER_LIST + "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hh" + "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.pbh" + "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hxx" + "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hh" + "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.pbh" + "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hxx") list(APPEND COMMON_HEADER ${HEADER_LIST}) endforeach(_mod DEPENDENCIES) set_source_files_properties(${COMMON_HEADER} PROPERTIES HEADER_FILE_ONLY 1) @@ -78,48 +84,30 @@ endmacro(make_dependent_modules_sys_included) macro(add_pylicense) file(GLOB configs ${PROJECT_SOURCE_DIR}/.pylicense*.py) foreach(cfg ${configs}) - string(REGEX - REPLACE ".*/([^/]*)" - "\\1" - cfg_target - ${cfg}) - string(REPLACE ${PROJECT_SOURCE_DIR} - "" - cfg_target - ${cfg_target}) - string(REGEX - REPLACE "(.*)/[^/]*" - "\\1" - cfg_target - ${cfg_target}) - string(REGEX - REPLACE "/" - "_" - cfg_target - ${cfg_target}) + string(REGEX REPLACE ".*/([^/]*)" "\\1" cfg_target ${cfg}) + string(REPLACE ${PROJECT_SOURCE_DIR} "" cfg_target ${cfg_target}) + string(REGEX REPLACE "(.*)/[^/]*" "\\1" cfg_target ${cfg_target}) + string(REGEX REPLACE "/" "_" cfg_target ${cfg_target}) list(APPEND cfg_targets ${cfg_target}) - add_custom_target(${cfg_target} - ${CMAKE_BINARY_DIR}/run-in-dune-env - pylicense - "--cfg=${cfg}" - "${PROJECT_SOURCE_DIR}" - VERBATIM - USES_TERMINAL) + add_custom_target( + ${cfg_target} + ${CMAKE_BINARY_DIR}/run-in-dune-env pylicense "--cfg=${cfg}" "${PROJECT_SOURCE_DIR}" + VERBATIM USES_TERMINAL) endforeach(cfg ${configs}) add_custom_target(license DEPENDS ${cfg_targets}) endmacro(add_pylicense) function(dump_cmake_variables) - get_cmake_property(_variableNames VARIABLES) - list (SORT _variableNames) - foreach (_variableName ${_variableNames}) - if (ARGV0) - unset(MATCHED) - string(REGEX MATCH ${ARGV0} MATCHED ${_variableName}) - if (NOT MATCHED) - continue() - endif() - endif() - message(STATUS "${_variableName}=${${_variableName}}") - endforeach() + get_cmake_property(_variableNames VARIABLES) + list(SORT _variableNames) + foreach(_variableName ${_variableNames}) + if(ARGV0) + unset(MATCHED) + string(REGEX MATCH ${ARGV0} MATCHED ${_variableName}) + if(NOT MATCHED) + continue() + endif() + endif() + message(STATUS "${_variableName}=${${_variableName}}") + endforeach() endfunction() diff --git a/cmake/modules/DuneXTTesting.cmake b/cmake/modules/DuneXTTesting.cmake index 6fa7d7989..fab1dd992 100644 --- a/cmake/modules/DuneXTTesting.cmake +++ b/cmake/modules/DuneXTTesting.cmake @@ -26,8 +26,7 @@ macro(get_headercheck_targets subdir) if(ENABLE_HEADERCHECK) file(GLOB_RECURSE headerlist "${CMAKE_SOURCE_DIR}/dune/xt/${subdir}/*.hh" - "${CMAKE_SOURCE_DIR}/dune/xt/test/${subdir}/*.hh" - "${CMAKE_SOURCE_DIR}/python/dune/xt/${subdir}/*.hh") + "${CMAKE_SOURCE_DIR}/dune/xt/test/${subdir}/*.hh" "${CMAKE_SOURCE_DIR}/python/dune/xt/${subdir}/*.hh") add_custom_target(${subdir}_headercheck) foreach(header ${headerlist}) list(FIND dxt_ignore_header "${header}" _index) @@ -71,8 +70,7 @@ macro(add_subdir_tests subdir) dune_xt_execute.py ${DEBUG_MACRO_TESTS}) foreach(target ${targetlist_${testbase}}) - target_link_libraries(${target} ${link_xt_libs} ${COMMON_LIBS} - ${GRID_LIBS} gtest_dune_xt) + target_link_libraries(${target} ${link_xt_libs} ${COMMON_LIBS} ${GRID_LIBS} gtest_dune_xt) list(APPEND ${subdir}_dxt_test_binaries ${target}) set(dxt_test_names_${target} ${testlist_${testbase}_${target}}) foreach(test_name ${dxt_test_names_${target}}) @@ -109,8 +107,7 @@ macro(add_subdir_tests subdir) set_tests_properties(${target} PROPERTIES LABELS ${subdir}) endif(EXISTS ${minifile}) endforeach(source) - file(GLOB_RECURSE test_templates - "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}/*.tpl") + file(GLOB_RECURSE test_templates "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}/*.tpl") foreach(template ${test_templates}) set(ranks "1") if(template MATCHES "mpi") @@ -119,10 +116,8 @@ macro(add_subdir_tests subdir) get_filename_component(testbase ${template} NAME_WE) string(REPLACE ".tpl" ".py" config_fn "${template}") string(REPLACE ".tpl" ".tpl.cc" out_fn "${template}") - string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}" - out_fn "${out_fn}") - # get the last completed cache for the codegen execution during configure - # time + string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}" out_fn "${out_fn}") + # get the last completed cache for the codegen execution during configure time foreach(_mod ${ALL_DEPENDENCIES}) dune_module_path(MODULE ${_mod} RESULT ${_mod}_binary_dir BUILD_DIR) if(IS_DIRECTORY ${${_mod}_binary_dir}) @@ -141,18 +136,15 @@ macro(add_subdir_tests subdir) "${last_dep_bindir}" OUTPUT_VARIABLE codegen_output) - file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/codegen.${testbase}.log" - ${codegen_output}) + file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/codegen.${testbase}.log" ${codegen_output}) file(GLOB generated_sources "${out_fn}.*") if("" STREQUAL "${generated_sources}") set(generated_sources ${out_fn}) endif() add_custom_command( OUTPUT "${generated_sources}" - COMMAND - ${CMAKE_BINARY_DIR}/run-in-dune-env dxt_code_generation.py - "${config_fn}" "${template}" "${CMAKE_BINARY_DIR}" "${out_fn}" - "${last_dep_bindir}" + COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env dxt_code_generation.py "${config_fn}" "${template}" + "${CMAKE_BINARY_DIR}" "${out_fn}" "${last_dep_bindir}" DEPENDS "${config_fn}" "${template}" VERBATIM USES_TERMINAL) foreach(gen_source ${generated_sources}) @@ -190,8 +182,7 @@ macro(add_subdir_tests subdir) endforeach(template ${test_templates}) add_custom_target(${subdir}_test_templates SOURCES ${test_templates}) - # this excludes meta-ini variation test cases because there binary name != - # test name + # this excludes meta-ini variation test cases because there binary name != test name foreach(test ${${subdir}_xt_test_binaries}) if(TARGET test) set_tests_properties(${test} PROPERTIES TIMEOUT ${DXT_TEST_TIMEOUT}) @@ -199,24 +190,20 @@ macro(add_subdir_tests subdir) endif(TARGET test) endforeach() - add_custom_target( - ${subdir}_test_binaries DEPENDS ${${subdir}_dxt_test_binaries} - )# add_dependencies(test test_binaries) + add_custom_target(${subdir}_test_binaries DEPENDS ${${subdir}_dxt_test_binaries}) # add_dependencies(test + # test_binaries) add_custom_target( ${subdir}_check - COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} -j - ${DXT_TEST_PROCS} + COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} -j ${DXT_TEST_PROCS} DEPENDS ${subdir}_test_binaries USES_TERMINAL) add_custom_target( ${subdir}_recheck - COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} --rerun-failed - -j ${DXT_TEST_PROCS} + COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} --rerun-failed -j ${DXT_TEST_PROCS} DEPENDS ${subdir}_test_binaries USES_TERMINAL) foreach(target ${${subdir}_dxt_test_binaries}) - set(all_sorted_testnames - "${all_sorted_testnames}/${dxt_test_names_${target}}") + set(all_sorted_testnames "${all_sorted_testnames}/${dxt_test_names_${target}}") endforeach() set(${subdir}_dxt_headercheck_targets "") get_headercheck_targets(${subdir}) @@ -258,8 +245,7 @@ macro(finalize_test_setup) endmacro() macro(dxt_exclude_from_headercheck) - exclude_from_headercheck(${ARGV0}) # make this robust to argument being passed - # with or without "" + exclude_from_headercheck(${ARGV0}) # make this robust to argument being passed with or without "" string(REGEX REPLACE "[\ \n]+([^\ ])" ";\\1" list ${ARGV0}) set(list "${list};${ARGV}") foreach(item ${list}) @@ -271,8 +257,8 @@ endmacro(dxt_exclude_from_headercheck) macro(dxt_add_python_tests) add_custom_target( xt_test_python - "${CMAKE_BINARY_DIR}/run-in-dune-env" "py.test" "${CMAKE_BINARY_DIR}/python" - "--cov" "${CMAKE_CURRENT_SOURCE_DIR}/" "--junitxml=pytest_results.xml" + "${CMAKE_BINARY_DIR}/run-in-dune-env" "py.test" "${CMAKE_BINARY_DIR}/python" "--cov" "${CMAKE_CURRENT_SOURCE_DIR}/" + "--junitxml=pytest_results.xml" WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python" DEPENDS bindings VERBATIM USES_TERMINAL) diff --git a/cmake/modules/DuneXtMacros.cmake b/cmake/modules/DuneXtMacros.cmake index 70635b0ce..5c33f8fa1 100644 --- a/cmake/modules/DuneXtMacros.cmake +++ b/cmake/modules/DuneXtMacros.cmake @@ -23,17 +23,31 @@ include(XtCompilerSupport) include(XtTooling) include(Hints) -set(DXT_DONT_LINK_PYTHON_LIB ${DXT_DONT_LINK_PYTHON_LIB} CACHE STRING "wheelbuilders want to set this to 1") +set(DXT_DONT_LINK_PYTHON_LIB + ${DXT_DONT_LINK_PYTHON_LIB} + CACHE STRING "wheelbuilders want to set this to 1") # library checks ######################################################################### find_package(PkgConfig) -set(DS_REQUIRED_BOOST_LIBS atomic chrono date_time filesystem system thread timer) +set(DS_REQUIRED_BOOST_LIBS + atomic + chrono + date_time + filesystem + system + thread + timer) set(BOOST_ROOT_HINTS "$ENV{BOOST_ROOT}" ${root_hints}) # check if any hints are provided by user -if(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR) +if(DEFINED BOOST_ROOT + OR DEFINED BOOOST_INCLUDEDIR + OR DEFINED BOOST_LIBRARYDIR) find_package(Boost 1.48.0 REQUIRED COMPONENTS ${DS_REQUIRED_BOOST_LIBS}) -else(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR) +else( + DEFINED BOOST_ROOT + OR DEFINED BOOOST_INCLUDEDIR + OR DEFINED BOOST_LIBRARYDIR) # FindBoost can only take a single hint directory from BOOST_ROOT, so we loop over all hints foreach(BOOST_ROOT_HINT ${BOOST_ROOT_HINTS}) set(BOOST_ROOT ${BOOST_ROOT_HINT}) @@ -44,7 +58,10 @@ else(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR endforeach(BOOST_ROOT_HINT ${BOOST_ROOT_HINTS}) # check for Boost again with REQUIRED keyword to make boost mandatory find_package(Boost 1.48.0 REQUIRED COMPONENTS ${DS_REQUIRED_BOOST_LIBS}) -endif(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR) +endif( + DEFINED BOOST_ROOT + OR DEFINED BOOOST_INCLUDEDIR + OR DEFINED BOOST_LIBRARYDIR) if(${Boost_INCLUDE_DIRS}) dune_register_package_flags(INCLUDE_DIRS ${Boost_INCLUDE_DIRS}) endif(${Boost_INCLUDE_DIRS}) @@ -98,9 +115,10 @@ if(HAVE_MPI) if(MPI4PY_FOUND) else() - execute_process(COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env pip install mpi4py - ERROR_VARIABLE shell_error - OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process( + COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env pip install mpi4py + ERROR_VARIABLE shell_error + OUTPUT_STRIP_TRAILING_WHITESPACE) myfind_mpi4py() endif() if(MPI4PY_FOUND) @@ -119,12 +137,18 @@ endif() set(CMAKE_EXPORT_COMPILE_COMMANDS "ON") set(DS_MAX_MIC_THREADS CACHE INTEGER 120) set(DUNE_XT_COMMON_TEST_DIR ${dune-xt_SOURCE_DIR}/dune/xt/common/test) -set(ENABLE_PERFMON 0 CACHE STRING "enable likwid performance monitoring API usage") +set(ENABLE_PERFMON + 0 + CACHE STRING "enable likwid performance monitoring API usage") if(NOT DS_HEADERCHECK_DISABLE) set(ENABLE_HEADERCHECK 1) endif(NOT DS_HEADERCHECK_DISABLE) -set(DXT_TEST_TIMEOUT 180 CACHE STRING "per-test timeout in seconds") -set(DXT_TEST_PROCS 1 CACHE STRING "run N tests in parallel") +set(DXT_TEST_TIMEOUT + 180 + CACHE STRING "per-test timeout in seconds") +set(DXT_TEST_PROCS + 1 + CACHE STRING "run N tests in parallel") set(DUNE_GRID_EXPERIMENTAL_GRID_EXTENSIONS TRUE) diff --git a/cmake/modules/DuneXtVersionHelper.cmake b/cmake/modules/DuneXtVersionHelper.cmake index 05d90ff9f..5caec6ed5 100644 --- a/cmake/modules/DuneXtVersionHelper.cmake +++ b/cmake/modules/DuneXtVersionHelper.cmake @@ -1,59 +1,57 @@ macro(dune_xt_module_version_from_git TARGET_MODULE) - dune_module_to_uppercase(TARGET_MODULE_UPPER ${TARGET_MODULE}) + dune_module_to_uppercase(TARGET_MODULE_UPPER ${TARGET_MODULE}) - if(dune-xt_MODULE_PATH) - set(VERSIONEER_DIR ${dune-xt_MODULE_PATH}) - else() - set(VERSIONEER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) - endif() + if(dune-xt_MODULE_PATH) + set(VERSIONEER_DIR ${dune-xt_MODULE_PATH}) + else() + set(VERSIONEER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) + endif() - if(${TARGET_MODULE}_SOURCE_DIR) - # the "self" case - set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_SOURCE_DIR}) - else() - # the "other module" case - set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_PPREFIX}) - endif() + if(${TARGET_MODULE}_SOURCE_DIR) + # the "self" case + set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_SOURCE_DIR}) + else() + # the "other module" case + set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_PPREFIX}) + endif() - execute_process(COMMAND - ${PYTHON_EXECUTABLE} - ${VERSIONEER_DIR}/versioneer.py - ${_MODULE_SOURCE_DIR} - WORKING_DIRECTORY ${_MODULE_SOURCE_DIR} - OUTPUT_VARIABLE GIT_DESCRIBE_VERSION - ERROR_VARIABLE GIT_DESCRIBE_ERROR - RESULT_VARIABLE GIT_DESCRIBE_ERROR_CODE - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - if(GIT_DESCRIBE_ERROR_CODE) - message(FATAL_ERROR "Extracting version information failed: ${GIT_DESCRIBE_ERROR}") - endif() + execute_process( + COMMAND ${PYTHON_EXECUTABLE} ${VERSIONEER_DIR}/versioneer.py ${_MODULE_SOURCE_DIR} + WORKING_DIRECTORY ${_MODULE_SOURCE_DIR} + OUTPUT_VARIABLE GIT_DESCRIBE_VERSION + ERROR_VARIABLE GIT_DESCRIBE_ERROR + RESULT_VARIABLE GIT_DESCRIBE_ERROR_CODE + OUTPUT_STRIP_TRAILING_WHITESPACE) + if(GIT_DESCRIBE_ERROR_CODE) + message(FATAL_ERROR "Extracting version information failed: ${GIT_DESCRIBE_ERROR}") + endif() - foreach(_MOD_VAR ${TARGET_MODULE} ${TARGET_MODULE_UPPER}) - set(${_MOD_VAR}_VERSION ${GIT_DESCRIBE_VERSION}) - # Reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_module_information - extract_major_minor_version("${GIT_DESCRIBE_VERSION}" DUNE_VERSION) - set(${_MOD_VAR}_VERSION_MAJOR "${DUNE_VERSION_MAJOR}") - set(${_MOD_VAR}_VERSION_MINOR "${DUNE_VERSION_MINOR}") - set(${_MOD_VAR}_VERSION_REVISION "${DUNE_VERSION_REVISION}") - endforeach(_MOD_VAR) - set(CPACK_PACKAGE_NAME "${DUNE_MOD_NAME}") - set(CPACK_PACKAGE_VERSION "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}") - set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") - set(CPACK_SOURCE_IGNORE_FILES "${CMAKE_BINARY_DIR}" "\\\\.svn" "\\\\.git" ".*/*\\\\.gitignore") + foreach(_MOD_VAR ${TARGET_MODULE} ${TARGET_MODULE_UPPER}) + set(${_MOD_VAR}_VERSION ${GIT_DESCRIBE_VERSION}) + # Reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_module_information + extract_major_minor_version("${GIT_DESCRIBE_VERSION}" DUNE_VERSION) + set(${_MOD_VAR}_VERSION_MAJOR "${DUNE_VERSION_MAJOR}") + set(${_MOD_VAR}_VERSION_MINOR "${DUNE_VERSION_MINOR}") + set(${_MOD_VAR}_VERSION_REVISION "${DUNE_VERSION_REVISION}") + endforeach(_MOD_VAR) + set(CPACK_PACKAGE_NAME "${DUNE_MOD_NAME}") + set(CPACK_PACKAGE_VERSION "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}") + set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") + set(CPACK_SOURCE_IGNORE_FILES "${CMAKE_BINARY_DIR}" "\\\\.svn" "\\\\.git" ".*/*\\\\.gitignore") - # reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_project - set(ProjectVersion "${GIT_DESCRIBE_VERSION}") - set(ProjectVersionString "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}") - set(ProjectVersionMajor "${DUNE_VERSION_MAJOR}") - set(ProjectVersionMinor "${DUNE_VERSION_MINOR}") - set(ProjectVersionRevision "${DUNE_VERSION_REVISION}") + # reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_project + set(ProjectVersion "${GIT_DESCRIBE_VERSION}") + set(ProjectVersionString "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}") + set(ProjectVersionMajor "${DUNE_VERSION_MAJOR}") + set(ProjectVersionMinor "${DUNE_VERSION_MINOR}") + set(ProjectVersionRevision "${DUNE_VERSION_REVISION}") - # need to re-run template insertion - if(NOT EXISTS ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in) - file(WRITE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in - "set(PACKAGE_VERSION \"${ProjectVersionString}\") + # need to re-run template insertion + if(NOT EXISTS ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in) + file( + WRITE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in + "set(PACKAGE_VERSION \"${ProjectVersionString}\") if(\"\${PACKAGE_FIND_VERSION_MAJOR}\" EQUAL \"${ProjectVersionMajor}\" AND \"\${PACKAGE_FIND_VERSION_MINOR}\" EQUAL \"${ProjectVersionMinor}\") @@ -63,13 +61,10 @@ macro(dune_xt_module_version_from_git TARGET_MODULE) endif() endif() ") - set(CONFIG_VERSION_FILE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in) - else() - set(CONFIG_VERSION_FILE ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in) - endif() - configure_file( - ${CONFIG_VERSION_FILE} - ${PROJECT_BINARY_DIR}/${ProjectName}-config-version.cmake @ONLY) + set(CONFIG_VERSION_FILE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in) + else() + set(CONFIG_VERSION_FILE ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in) + endif() + configure_file(${CONFIG_VERSION_FILE} ${PROJECT_BINARY_DIR}/${ProjectName}-config-version.cmake @ONLY) endmacro(dune_xt_module_version_from_git) - diff --git a/cmake/modules/FindEigen3.cmake b/cmake/modules/FindEigen3.cmake index e98dacdd2..882dfca4a 100644 --- a/cmake/modules/FindEigen3.cmake +++ b/cmake/modules/FindEigen3.cmake @@ -32,19 +32,13 @@ endif(NOT Eigen3_FIND_VERSION) macro(_eigen3_check_version) file(READ "${EIGEN3_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen3_version_header) - string(REGEX MATCH - "define[ \t]+EIGEN_WORLD_VERSION[ \t]+([0-9]+)" - _eigen3_world_version_match + string(REGEX MATCH "define[ \t]+EIGEN_WORLD_VERSION[ \t]+([0-9]+)" _eigen3_world_version_match "${_eigen3_version_header}") set(EIGEN3_WORLD_VERSION "${CMAKE_MATCH_1}") - string(REGEX MATCH - "define[ \t]+EIGEN_MAJOR_VERSION[ \t]+([0-9]+)" - _eigen3_major_version_match + string(REGEX MATCH "define[ \t]+EIGEN_MAJOR_VERSION[ \t]+([0-9]+)" _eigen3_major_version_match "${_eigen3_version_header}") set(EIGEN3_MAJOR_VERSION "${CMAKE_MATCH_1}") - string(REGEX MATCH - "define[ \t]+EIGEN_MINOR_VERSION[ \t]+([0-9]+)" - _eigen3_minor_version_match + string(REGEX MATCH "define[ \t]+EIGEN_MINOR_VERSION[ \t]+([0-9]+)" _eigen3_minor_version_match "${_eigen3_version_header}") set(EIGEN3_MINOR_VERSION "${CMAKE_MATCH_1}") @@ -70,10 +64,11 @@ if(EIGEN3_INCLUDE_DIR) else(EIGEN3_INCLUDE_DIR) - find_path(EIGEN3_INCLUDE_DIR - NAMES signature_of_eigen3_matrix_library - PATHS ${CMAKE_INSTALL_PREFIX}/include ${KDE4_INCLUDE_DIR} ${include_hints} - PATH_SUFFIXES eigen3 eigen) + find_path( + EIGEN3_INCLUDE_DIR + NAMES signature_of_eigen3_matrix_library + PATHS ${CMAKE_INSTALL_PREFIX}/include ${KDE4_INCLUDE_DIR} ${include_hints} + PATH_SUFFIXES eigen3 eigen) if(EIGEN3_INCLUDE_DIR) _eigen3_check_version() diff --git a/cmake/modules/FindFASP.cmake b/cmake/modules/FindFASP.cmake index 301952317..2ca986227 100644 --- a/cmake/modules/FindFASP.cmake +++ b/cmake/modules/FindFASP.cmake @@ -20,8 +20,8 @@ else("${FASP_LIBRARY}" MATCHES "FASP_LIBRARY-NOTFOUND") set(FASPLIB "${FASP_LIBRARY}") endif("${FASP_LIBRARY}" MATCHES "FASP_LIBRARY-NOTFOUND") message("-- checking for 'fasp' header") -find_path(FASP_INCLUDE_DIR fasp.h - HINTS "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/" "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/fasp/") +find_path(FASP_INCLUDE_DIR fasp.h HINTS "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/" + "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/fasp/") if("${FASP_INCLUDE_DIR}" MATCHES "FASP_INCLUDE_DIR-NOTFOUND") message("-- 'fasp' header not found") else("${FASP_INCLUDE_DIR}" MATCHES "FASP_INCLUDE_DIR-NOTFOUND") diff --git a/cmake/modules/FindLIKWID.cmake b/cmake/modules/FindLIKWID.cmake index d13550921..773a04de1 100644 --- a/cmake/modules/FindLIKWID.cmake +++ b/cmake/modules/FindLIKWID.cmake @@ -11,8 +11,16 @@ # Tobias Leibner (2020) # ~~~ -find_path(LIKWID_INCLUDE_DIR NAMES likwid.h PATHS ${LIKWID_ROOT} PATH_SUFFIXES include) -find_library(LIKWID_LIBRARY NAMES likwid PATHS ${LIKWID_ROOT} PATH_SUFFIXES lib) +find_path( + LIKWID_INCLUDE_DIR + NAMES likwid.h + PATHS ${LIKWID_ROOT} + PATH_SUFFIXES include) +find_library( + LIKWID_LIBRARY + NAMES likwid + PATHS ${LIKWID_ROOT} + PATH_SUFFIXES lib) mark_as_advanced(LIKWID_LIBRARY LIKWID_INCLUDE_DIR) diff --git a/cmake/modules/FindMPI4PY.cmake b/cmake/modules/FindMPI4PY.cmake index 63dad4547..5eeab332c 100644 --- a/cmake/modules/FindMPI4PY.cmake +++ b/cmake/modules/FindMPI4PY.cmake @@ -17,15 +17,17 @@ # 1a660df142e9a macro(myfind_mpi4py) if(NOT MPI4PY_INCLUDE_DIR) - execute_process(COMMAND "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())" - OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR - RESULT_VARIABLE MPI4PY_COMMAND_RESULT - OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process( + COMMAND "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())" + OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR + RESULT_VARIABLE MPI4PY_COMMAND_RESULT + OUTPUT_STRIP_TRAILING_WHITESPACE) if(MPI4PY_COMMAND_RESULT) - execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())" - OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR - RESULT_VARIABLE MPI4PY_COMMAND_RESULT - OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process( + COMMAND "${PYTHON_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())" + OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR + RESULT_VARIABLE MPI4PY_COMMAND_RESULT + OUTPUT_STRIP_TRAILING_WHITESPACE) endif() if(MPI4PY_COMMAND_RESULT) message("jfa: mpi4py not found") @@ -38,7 +40,9 @@ macro(myfind_mpi4py) else(MPI4PY_INCLUDE_DIR MATCHES "Traceback") # successful set(MPI4PY_FOUND TRUE) - set(MPI4PY_INCLUDE_DIR ${MPI4PY_INCLUDE_DIR} CACHE STRING "mpi4py include path") + set(MPI4PY_INCLUDE_DIR + ${MPI4PY_INCLUDE_DIR} + CACHE STRING "mpi4py include path") endif(MPI4PY_INCLUDE_DIR MATCHES "Traceback") endif(MPI4PY_COMMAND_RESULT) else(NOT MPI4PY_INCLUDE_DIR) diff --git a/cmake/modules/FindPythonLibsNew.cmake b/cmake/modules/FindPythonLibsNew.cmake index de2ffa02c..68c79da93 100644 --- a/cmake/modules/FindPythonLibsNew.cmake +++ b/cmake/modules/FindPythonLibsNew.cmake @@ -35,8 +35,8 @@ # * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following # disclaimer in the documentation and/or other materials provided with the distribution. # -# * Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be -# used to endorse or promote products derived from this software without specific prior written permission. +# * Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be used +# to endorse or promote products derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE @@ -68,9 +68,11 @@ endif() # According to http://stackoverflow.com/questions/646518/python-how-to-detect-debug-interpreter testing whether sys has # the gettotalrefcount function is a reliable, cross-platform way to detect a CPython debug interpreter. # -# The library suffix is from the config var LDVERSION sometimes, otherwise VERSION. VERSION will typically be like -# "2.7" on unix, and "27" on windows. -execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "from distutils import sysconfig as s;import sys;import struct; +# The library suffix is from the config var LDVERSION sometimes, otherwise VERSION. VERSION will typically be like "2.7" +# on unix, and "27" on windows. +execute_process( + COMMAND + "${PYTHON_EXECUTABLE}" "-c" "from distutils import sysconfig as s;import sys;import struct; print('.'.join(str(v) for v in sys.version_info)); print(sys.prefix); print(s.get_python_inc(plat_specific=True)); @@ -81,7 +83,10 @@ print(struct.calcsize('@P')); print(s.get_config_var('LDVERSION') or s.get_config_var('VERSION')); print(s.get_config_var('LIBDIR') or ''); print(s.get_config_var('MULTIARCH') or ''); -" RESULT_VARIABLE _PYTHON_SUCCESS OUTPUT_VARIABLE _PYTHON_VALUES ERROR_VARIABLE _PYTHON_ERROR_VALUE) +" + RESULT_VARIABLE _PYTHON_SUCCESS + OUTPUT_VARIABLE _PYTHON_VALUES + ERROR_VARIABLE _PYTHON_ERROR_VALUE) if(NOT _PYTHON_SUCCESS MATCHES 0) if(PythonLibsNew_FIND_REQUIRED) @@ -94,22 +99,10 @@ endif() # Convert the process output into a list if(WIN32) - string(REGEX - REPLACE "\\\\" - "/" - _PYTHON_VALUES - ${_PYTHON_VALUES}) + string(REGEX REPLACE "\\\\" "/" _PYTHON_VALUES ${_PYTHON_VALUES}) endif() -string(REGEX - REPLACE ";" - "\\\\;" - _PYTHON_VALUES - ${_PYTHON_VALUES}) -string(REGEX - REPLACE "\n" - ";" - _PYTHON_VALUES - ${_PYTHON_VALUES}) +string(REGEX REPLACE ";" "\\\\;" _PYTHON_VALUES ${_PYTHON_VALUES}) +string(REGEX REPLACE "\n" ";" _PYTHON_VALUES ${_PYTHON_VALUES}) list(GET _PYTHON_VALUES 0 _PYTHON_VERSION_LIST) list(GET _PYTHON_VALUES 1 PYTHON_PREFIX) list(GET _PYTHON_VALUES 2 PYTHON_INCLUDE_DIR) @@ -135,31 +128,15 @@ if(CMAKE_SIZEOF_VOID_P AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZE endif() # The built-in FindPython didn't always give the version numbers -string(REGEX - REPLACE "\\." - ";" - _PYTHON_VERSION_LIST - ${_PYTHON_VERSION_LIST}) +string(REGEX REPLACE "\\." ";" _PYTHON_VERSION_LIST ${_PYTHON_VERSION_LIST}) list(GET _PYTHON_VERSION_LIST 0 PYTHON_VERSION_MAJOR) list(GET _PYTHON_VERSION_LIST 1 PYTHON_VERSION_MINOR) list(GET _PYTHON_VERSION_LIST 2 PYTHON_VERSION_PATCH) # Make sure all directory separators are '/' -string(REGEX - REPLACE "\\\\" - "/" - PYTHON_PREFIX - ${PYTHON_PREFIX}) -string(REGEX - REPLACE "\\\\" - "/" - PYTHON_INCLUDE_DIR - ${PYTHON_INCLUDE_DIR}) -string(REGEX - REPLACE "\\\\" - "/" - PYTHON_SITE_PACKAGES - ${PYTHON_SITE_PACKAGES}) +string(REGEX REPLACE "\\\\" "/" PYTHON_PREFIX ${PYTHON_PREFIX}) +string(REGEX REPLACE "\\\\" "/" PYTHON_INCLUDE_DIR ${PYTHON_INCLUDE_DIR}) +string(REGEX REPLACE "\\\\" "/" PYTHON_SITE_PACKAGES ${PYTHON_SITE_PACKAGES}) if(CMAKE_HOST_WIN32) set(PYTHON_LIBRARY "${PYTHON_PREFIX}/libs/Python${PYTHON_LIBRARY_SUFFIX}.lib") @@ -184,7 +161,11 @@ else() endif() # message(STATUS "Searching for Python libs in ${_PYTHON_LIBS_SEARCH}") Probably this needs to be more involved. It # would be nice if the config information the python interpreter itself gave us were more complete. - find_library(PYTHON_LIBRARY NAMES "python${PYTHON_LIBRARY_SUFFIX}" PATHS ${_PYTHON_LIBS_SEARCH} NO_DEFAULT_PATH) + find_library( + PYTHON_LIBRARY + NAMES "python${PYTHON_LIBRARY_SUFFIX}" + PATHS ${_PYTHON_LIBS_SEARCH} + NO_DEFAULT_PATH) # If all else fails, just set the name/version and let the linker figure out the path. if(NOT PYTHON_LIBRARY) diff --git a/cmake/modules/FindSpe10Data.cmake b/cmake/modules/FindSpe10Data.cmake index f1429216c..1ca2a6044 100644 --- a/cmake/modules/FindSpe10Data.cmake +++ b/cmake/modules/FindSpe10Data.cmake @@ -10,58 +10,61 @@ # ~~~ set(DXT_DATA_BASEDIR "${CMAKE_BINARY_DIR}/data") -if (Spe10Data_FOUND) +if(Spe10Data_FOUND) return() endif() set(Spe10Data_FOUND 0) -if (NOT EXISTS "${DXT_DATA_BASEDIR}") +if(NOT EXISTS "${DXT_DATA_BASEDIR}") file(MAKE_DIRECTORY "${DXT_DATA_BASEDIR}") endif(NOT EXISTS "${DXT_DATA_BASEDIR}") -if (NOT EXISTS "${DXT_DATA_BASEDIR}/perm_case1.dat") +if(NOT EXISTS "${DXT_DATA_BASEDIR}/perm_case1.dat") # download file 1 - file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/perm_case1.zip ${DXT_DATA_BASEDIR}/perm_case1.zip STATUS DOWNLOAD_STATUS) + file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/perm_case1.zip + ${DXT_DATA_BASEDIR}/perm_case1.zip STATUS DOWNLOAD_STATUS) list(GET DOWNLOAD_STATUS 0 SPE10_FILE1_STATUS) - if (NOT SPE10_FILE1_STATUS EQUAL 0) + if(NOT SPE10_FILE1_STATUS EQUAL 0) message(WARNING "Failed downloading perm_case1.zip! Error: ${DOWNLOAD_STATUS}.") set(Spe10Data_FOUND 0) return() endif(NOT SPE10_FILE1_STATUS EQUAL 0) # extract file 1 - execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/perm_case1.zip" + execute_process( + COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/perm_case1.zip" WORKING_DIRECTORY "${DXT_DATA_BASEDIR}" RESULT_VARIABLE SPE10_FILE1_STATUS OUTPUT_VARIABLE SPE10_FILE1_OUTPUT ERROR_VARIABLE SPE10_FILE1_OUTPUT) - if (NOT SPE10_FILE1_STATUS EQUAL 0) + if(NOT SPE10_FILE1_STATUS EQUAL 0) message(WARNING "Failed extracting perm_case1.zip! Output: ${SPE10_FILE1_OUTPUT}.") set(Spe10Data_FOUND 0) return() endif(NOT SPE10_FILE1_STATUS EQUAL 0) endif(NOT EXISTS ${DXT_DATA_BASEDIR}/perm_case1.dat) -if (NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat") +if(NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat") # download file 2 - file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/por_perm_case2a.zip ${DXT_DATA_BASEDIR}/por_perm_case2a.zip STATUS DOWNLOAD_STATUS) + file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/por_perm_case2a.zip + ${DXT_DATA_BASEDIR}/por_perm_case2a.zip STATUS DOWNLOAD_STATUS) list(GET DOWNLOAD_STATUS 0 SPE10_FILE2_STATUS) - if (NOT SPE10_FILE2_STATUS EQUAL 0) + if(NOT SPE10_FILE2_STATUS EQUAL 0) message(WARNING "Failed downloading por_perm_case2a.zip! Error: ${DOWNLOAD_STATUS}.") set(Spe10Data_FOUND 0) return() endif(NOT SPE10_FILE2_STATUS EQUAL 0) # extract file 2 - execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/por_perm_case2a.zip" + execute_process( + COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/por_perm_case2a.zip" WORKING_DIRECTORY "${DXT_DATA_BASEDIR}" RESULT_VARIABLE SPE10_FILE2_STATUS OUTPUT_VARIABLE SPE10_FILE2_OUTPUT ERROR_VARIABLE SPE10_FILE2_OUTPUT) - if (NOT SPE10_FILE2_STATUS EQUAL 0) + if(NOT SPE10_FILE2_STATUS EQUAL 0) message(WARNING "Failed extracting por_perm_case2a.zip! Output: ${SPE10_FILE2_OUTPUT}.") set(Spe10Data_FOUND 0) return() endif(NOT SPE10_FILE2_STATUS EQUAL 0) -endif (NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat") +endif(NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat") set(Spe10Data_FOUND 1) set(HAVE_SPE10_DATA 1) set(SPE10_MODEL1_FILENAME ${DXT_DATA_BASEDIR}/perm_case1.dat) set(SPE10_MODEL2_FILENAME ${DXT_DATA_BASEDIR}/spe_perm.dat) - diff --git a/cmake/modules/FindTBB.cmake b/cmake/modules/FindTBB.cmake index bf3f81f03..1a1e7b689 100644 --- a/cmake/modules/FindTBB.cmake +++ b/cmake/modules/FindTBB.cmake @@ -53,11 +53,10 @@ # # TBB_FOUND True if TBB was found and is usable TBB_cpf_FOUND True if community # preview edition was found and is usable TBB_allocator_FOUND True if scalable allocator library was found -# and is usable TBB_INCLUDE_DIRS Path to the TBB include dirs. This variable is empty if the internal -# TBB version of an Intel compiler is in use TBB_LIBRARIES List of the TBB libraries that a target -# must be linked to TBB_COMPILE_DEFINITIONS Required compile definitions to use TBB TBB_COMPILE_OPTIONS -# Required compile options to use TBB TBB_INTEL_COMPILER_INTERNAL_TBB True if internal TBB version of Intel compiler is -# in use +# and is usable TBB_INCLUDE_DIRS Path to the TBB include dirs. This variable is empty if the internal TBB +# version of an Intel compiler is in use TBB_LIBRARIES List of the TBB libraries that a target must be +# linked to TBB_COMPILE_DEFINITIONS Required compile definitions to use TBB TBB_COMPILE_OPTIONS Required compile +# options to use TBB TBB_INTEL_COMPILER_INTERNAL_TBB True if internal TBB version of Intel compiler is in use # # In addition, TBB is automatically registered with the dune_enable_all_packages() facility. If you don't want to use # that feature, the module also provides the following function: @@ -83,7 +82,8 @@ option(TBB_DEBUG "Turn on TBB debugging (modifies compiler flags and links again # source for our little test program. We have to compile this multiple times, so store it in a variable for DRY and # better readability -set(tbb_compile_source " +set(tbb_compile_source + " #include <tbb/tbb.h> #include <numeric> @@ -101,62 +101,72 @@ function(parse_tbb_vars_sh) message(STATUS "Taking TBB location from ${TBB_VARS_SH}") find_package(UnixCommands) set(tbb_vars_works FALSE) - execute_process(COMMAND ${BASH} -c ". ${TBB_VARS_SH} > /dev/null" - RESULT_VARIABLE shell_result - OUTPUT_VARIABLE shell_out) + execute_process( + COMMAND ${BASH} -c ". ${TBB_VARS_SH} > /dev/null" + RESULT_VARIABLE shell_result + OUTPUT_VARIABLE shell_out) if(${shell_result} EQUAL 0) set(tbb_vars_opt "") set(tbb_vars_works TRUE) else() # try script from binary Linux installs that requires an 'intel64' argument - execute_process(COMMAND ${BASH} -c ". ${TBB_VARS_SH} intel64 >/dev/null" - RESULT_VARIABLE shell_result - OUTPUT_VARIABLE shell_out) + execute_process( + COMMAND ${BASH} -c ". ${TBB_VARS_SH} intel64 >/dev/null" + RESULT_VARIABLE shell_result + OUTPUT_VARIABLE shell_out) if(${shell_result} EQUAL 0) set(tbb_vars_opt "intel64") set(tbb_vars_works TRUE) endif() endif() if(tbb_vars_works) - execute_process(COMMAND ${BASH} -c "unset CPATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $CPATH" - RESULT_VARIABLE shell_result - OUTPUT_VARIABLE shell_out) - find_path(TBB_INCLUDE_DIRS - NAMES tbb/task_scheduler_init.h - PATHS ${shell_out} - DOC "Path to TBB include directory" - NO_DEFAULT_PATH) - execute_process(COMMAND ${BASH} -c - "unset LIBRARY_PATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $LIBRARY_PATH" - RESULT_VARIABLE shell_result - OUTPUT_VARIABLE shell_out) - set(TBB_LIBRARY_DIR ${shell_out} CACHE PATH "Path to TBB library directory") + execute_process( + COMMAND ${BASH} -c "unset CPATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $CPATH" + RESULT_VARIABLE shell_result + OUTPUT_VARIABLE shell_out) + find_path( + TBB_INCLUDE_DIRS + NAMES tbb/task_scheduler_init.h + PATHS ${shell_out} + DOC "Path to TBB include directory" + NO_DEFAULT_PATH) + execute_process( + COMMAND ${BASH} -c "unset LIBRARY_PATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $LIBRARY_PATH" + RESULT_VARIABLE shell_result + OUTPUT_VARIABLE shell_out) + set(TBB_LIBRARY_DIR + ${shell_out} + CACHE PATH "Path to TBB library directory") else() message(WARNING "Could not parse tbbvars.sh file at {TBB_VARS_SH}") endif() endfunction() # Check whether the user gave us an existing tbbvars.sh file -find_file(TBB_VARS_SH tbbvars.sh DOC "Path to tbbvars.sh script" NO_DEFAULT_PATH) +find_file( + TBB_VARS_SH tbbvars.sh + DOC "Path to tbbvars.sh script" + NO_DEFAULT_PATH) # now we try to find tbbvars.sh on our own -find_file(TBB_VARS_SH tbbvars.sh HINTS ${tbb_bin_hints} DOC "Path to tbbvars.sh script") +find_file( + TBB_VARS_SH tbbvars.sh + HINTS ${tbb_bin_hints} + DOC "Path to tbbvars.sh script") if(TBB_VARS_SH) parse_tbb_vars_sh() else() # Try to find TBB in standard include paths - find_path(TBB_INCLUDE_DIRS tbb/tbb.h - PATHS ENV - CPATH - ${TBB_INCLUDE_DIR} - ${tbb_include_hints} - DOC "Path to TBB include directory") # Try to find some version of the TBB library in standard library - # paths - find_path(TBB_LIBRARY_DIR - "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview${CMAKE_SHARED_LIBRARY_SUFFIX}" - "${CMAKE_SHARED_LIBRARY_PREFIX}tbb${CMAKE_SHARED_LIBRARY_SUFFIX}" - "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview_debug${CMAKE_SHARED_LIBRARY_SUFFIX}" - "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_debug${CMAKE_SHARED_LIBRARY_SUFFIX}" - PATHS ENV LIBRARY_PATH ${tbb_lib_hints} - DOC "Path to TBB library directory") + find_path( + TBB_INCLUDE_DIRS tbb/tbb.h + PATHS ENV CPATH ${TBB_INCLUDE_DIR} ${tbb_include_hints} + DOC "Path to TBB include directory") # Try to find some version of the TBB library in standard library paths + find_path( + TBB_LIBRARY_DIR + "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview${CMAKE_SHARED_LIBRARY_SUFFIX}" + "${CMAKE_SHARED_LIBRARY_PREFIX}tbb${CMAKE_SHARED_LIBRARY_SUFFIX}" + "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview_debug${CMAKE_SHARED_LIBRARY_SUFFIX}" + "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_debug${CMAKE_SHARED_LIBRARY_SUFFIX}" + PATHS ENV LIBRARY_PATH ${tbb_lib_hints} + DOC "Path to TBB library directory") endif() # helper function to invoke find_library() correctly If we are using tbbvars.sh, we exclude system-default library @@ -169,9 +179,16 @@ function(find_tbb_library) cmake_parse_arguments(LIB "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN}) if(TBB_VARS_SH) - find_library(${LIB_VAR} ${LIB_NAME} PATHS ${TBB_LIBRARY_DIR} DOC "${LIB_DOC}" NO_DEFAULT_PATH) + find_library( + ${LIB_VAR} ${LIB_NAME} + PATHS ${TBB_LIBRARY_DIR} + DOC "${LIB_DOC}" + NO_DEFAULT_PATH) else() - find_library(${LIB_VAR} ${LIB_NAME} PATHS ${TBB_LIBRARY_DIR} ${lib_hints} DOC "${LIB_DOC}") + find_library( + ${LIB_VAR} ${LIB_NAME} + PATHS ${TBB_LIBRARY_DIR} ${lib_hints} + DOC "${LIB_DOC}") endif() endfunction() @@ -195,11 +212,7 @@ set(TBB_allocator_FOUND FALSE) foreach(component ${TBB_FIND_COMPONENTS}) if(component STREQUAL "cpf") - find_tbb_library(VAR - TBB_LIBTBB_PREVIEW - NAME - "tbb_preview${tbb_debug_suffix}" - DOC + find_tbb_library(VAR TBB_LIBTBB_PREVIEW NAME "tbb_preview${tbb_debug_suffix}" DOC "Path to TBB community preview library") if(TBB_LIBTBB_PREVIEW) list(APPEND TBB_LIBRARIES ${TBB_LIBTBB_PREVIEW}) @@ -226,7 +239,9 @@ if(NOT TBB_cpf_FOUND) list(APPEND TBB_LIBRARIES ${TBB_LIBTBB}) endif() else() # This avoids special-casing later on - set(TBB_LIBTBB ${TBB_LIBTBB_PREVIEW} CACHE FILEPATH "Path to TBB library") + set(TBB_LIBTBB + ${TBB_LIBTBB_PREVIEW} + CACHE FILEPATH "Path to TBB library") endif() # Don't show these to the user, they are just confusing @@ -243,8 +258,8 @@ set(TBB_INTEL_COMPILER_INTERNAL_TBB OFF) # We didn't manage to find TBB yet, so try if we can fall back to the one shipped as part of Intel's compiler if((NOT TBB_LIBTBB) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")) - # This while doesn't work in debug mode because -tbb always injects -ltbb into the linker flags, and that clashes - # with -ltbb_debug + # This while doesn't work in debug mode because -tbb always injects -ltbb into the linker flags, and that clashes with + # -ltbb_debug if(NOT TBB_DEBUG) message(STATUS "Could not find TBB in normal places, trying to fall back to internal version of Intel Compiler") @@ -269,7 +284,7 @@ if((NOT TBB_LIBTBB) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")) message( STATUS "Cannot link to community preview version when using compiler-internal version of TBB. Please specify the tbbvars.sh script in TBB_VARS_SH" - ) + ) elseif(component STREQUAL "allocator") # we'll check for this by trying to link against the library set(CMAKE_REQUIRED_LIBRARIES tbbmalloc) @@ -292,7 +307,7 @@ if((NOT TBB_LIBTBB) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")) STATUS "Could not find TBB in normal places, and don't know how to fall back to internal version of Intel Compiler for debug version. You can either turn of the TBB_DEBUG option or point the TBB_VARS_SH variable at the tbbvars.sh script shipped with your compiler." - ) + ) endif() endif() @@ -317,15 +332,16 @@ if(TBB_INTEL_COMPILER_INTERNAL_TBB) set(TBB_INCLUDE_DIRS "") set(TBB_LIBRARIES "") - find_package_handle_standard_args(TBB REQUIRED_VARS TBB_COMPILE_OPTIONS TBB_COMPILE_TEST HANDLE_COMPONENTS) + find_package_handle_standard_args( + TBB + REQUIRED_VARS TBB_COMPILE_OPTIONS TBB_COMPILE_TEST + HANDLE_COMPONENTS) else() - find_package_handle_standard_args(TBB - REQUIRED_VARS - TBB_INCLUDE_DIRS - TBB_LIBRARIES - TBB_COMPILE_TEST - HANDLE_COMPONENTS) + find_package_handle_standard_args( + TBB + REQUIRED_VARS TBB_INCLUDE_DIRS TBB_LIBRARIES TBB_COMPILE_TEST + HANDLE_COMPONENTS) endif() @@ -338,15 +354,16 @@ include(XtCompilerSupport) if(TBB_FOUND) set(TBB_CACHE_ALIGNED_ALLOCATOR_ALIGNMENT 128) message(STATUS "defaulting TBB_CACHE_ALIGNED_ALLOCATOR_ALIGNMENT to 128") - dune_register_package_flags(COMPILE_DEFINITIONS - ENABLE_TBB=1 - ${TBB_COMPILE_DEFINITIONS} - COMPILE_OPTIONS - ${TBB_COMPILE_OPTIONS} - INCLUDE_DIRS - ${TBB_INCLUDE_DIRS} - LIBRARIES - ${TBB_LIBRARIES}) + dune_register_package_flags( + COMPILE_DEFINITIONS + ENABLE_TBB=1 + ${TBB_COMPILE_DEFINITIONS} + COMPILE_OPTIONS + ${TBB_COMPILE_OPTIONS} + INCLUDE_DIRS + ${TBB_INCLUDE_DIRS} + LIBRARIES + ${TBB_LIBRARIES}) foreach(_idir ${TBB_INCLUDE_DIRS}) include_sys_dir(${_idir}) endforeach() diff --git a/cmake/modules/GridUtils.cmake b/cmake/modules/GridUtils.cmake index e53e9abdb..6d396f424 100644 --- a/cmake/modules/GridUtils.cmake +++ b/cmake/modules/GridUtils.cmake @@ -11,9 +11,13 @@ # Tobias Leibner (2020) # ~~~ -set(GRIDTYPE "YASPGRID" CACHE STRING "GRIDTYPE") +set(GRIDTYPE + "YASPGRID" + CACHE STRING "GRIDTYPE") -set(GRIDDIM "2" CACHE STRING "GRIDDIM") +set(GRIDDIM + "2" + CACHE STRING "GRIDDIM") add_definitions("-DGRIDDIM=${GRIDDIM}") add_definitions("-DGRIDTYPE=${GRIDTYPE}") diff --git a/cmake/modules/Hints.cmake b/cmake/modules/Hints.cmake index ade5ac4c6..bc5fa271a 100644 --- a/cmake/modules/Hints.cmake +++ b/cmake/modules/Hints.cmake @@ -16,12 +16,8 @@ macro(append_to_each INPUTLIST POSTFIX OUTPUTLIST) endforeach(ENTRY ${INPUTLIST}) endmacro() -set(root_hints - "${CMAKE_SOURCE_DIR}/../local/" - "${CMAKE_SOURCE_DIR}/../environments/debian-minimal/local/" - "${CMAKE_SOURCE_DIR}/../environments/debian-full/local/" - "$ENV{HOME}/" - "$ENV{HOME}/Software/") +set(root_hints "${CMAKE_SOURCE_DIR}/../local/" "${CMAKE_SOURCE_DIR}/../environments/debian-minimal/local/" + "${CMAKE_SOURCE_DIR}/../environments/debian-full/local/" "$ENV{HOME}/" "$ENV{HOME}/Software/") set(bin_hints "") append_to_each("${root_hints}" "bin/" bin_hints) diff --git a/cmake/modules/XtCompilerSupport.cmake b/cmake/modules/XtCompilerSupport.cmake index b740373e0..82b55ce9e 100644 --- a/cmake/modules/XtCompilerSupport.cmake +++ b/cmake/modules/XtCompilerSupport.cmake @@ -34,7 +34,8 @@ macro(INCLUDE_SYS_DIR) endmacro(INCLUDE_SYS_DIR) include(CheckCXXSourceCompiles) -check_cxx_source_compiles(" +check_cxx_source_compiles( + " #include <map> int main(void) { @@ -42,9 +43,12 @@ check_cxx_source_compiles(" a.emplace(2, 2); return 0; }; -" HAVE_MAP_EMPLACE) +" + HAVE_MAP_EMPLACE) -check_cxx_source_compiles(" +check_cxx_source_compiles( + " void foo([[maybe_unused]] bool arg) {} int main(void){}; -" HAS_WORKING_UNUSED_ATTRIBUTE) +" + HAS_WORKING_UNUSED_ATTRIBUTE) diff --git a/cmake/modules/XtTooling.cmake b/cmake/modules/XtTooling.cmake index 4f88e4160..ef7318b74 100644 --- a/cmake/modules/XtTooling.cmake +++ b/cmake/modules/XtTooling.cmake @@ -17,16 +17,9 @@ macro(add_analyze) message(STATUS "adding analyze target") add_custom_target(analyze SOURCES ${ARGN}) foreach(_file ${ARGN}) - string(REPLACE "/" - "_" - fn - ${_file}) - add_custom_target("analyze_${fn}" - ${ANALYZER} - -fixit - -p=${CMAKE_CURRENT_BINARY_DIR} - -analyze - ${CMAKE_CURRENT_SOURCE_DIR}/${_file}) + string(REPLACE "/" "_" fn ${_file}) + add_custom_target("analyze_${fn}" ${ANALYZER} -fixit -p=${CMAKE_CURRENT_BINARY_DIR} -analyze + ${CMAKE_CURRENT_SOURCE_DIR}/${_file}) add_dependencies(analyze "analyze_${fn}") endforeach(_file) else() @@ -35,7 +28,7 @@ macro(add_analyze) endmacro(add_analyze) macro(add_format) - message(NOTICE clang-format support was moved to a `pre-commit` hook. See dune-xt/.pre-commit-config.yaml) + message(NOTICE "clang-format support was moved to a `pre-commit` hook. See dune-xt/.pre-commit-config.yaml.") add_custom_target("format" echo 'clang-format is now a pre-commit hook' && false) endmacro(add_format) @@ -45,36 +38,37 @@ endmacro() macro(add_tidy_subdir _dxt_subdir) set(BASE ${PROJECT_SOURCE_DIR}/dune/xt/${_dxt_subdir}) - file(GLOB_RECURSE _files - "${BASE}/*.hh" - "${BASE}/*.h" - "${BASE}/*.cc" - "${BASE}/*.cxx" - "${BASE}/*.cpp" - "${BASE}/*.c") + file( + GLOB_RECURSE + _files + "${BASE}/*.hh" + "${BASE}/*.h" + "${BASE}/*.cc" + "${BASE}/*.cxx" + "${BASE}/*.cpp" + "${BASE}/*.c") set(BASE ${PROJECT_SOURCE_DIR}/python/dune/xt/${_dxt_subdir}) - file(GLOB_RECURSE _pyfiles - "${BASE}/*.hh" - "${BASE}/*.h" - "${BASE}/*.cc" - "${BASE}/*.cxx" - "${BASE}/*.cpp" - "${BASE}/*.c") + file( + GLOB_RECURSE + _pyfiles + "${BASE}/*.hh" + "${BASE}/*.h" + "${BASE}/*.cc" + "${BASE}/*.cxx" + "${BASE}/*.cpp" + "${BASE}/*.c") list(APPEND _files ${_pyfiles}) list(REMOVE_DUPLICATES _files) - set(TIDY_ARGS - -config= - -format-style=file - -extra-arg-before='-includeconfig.h' - -p=${CMAKE_CURRENT_BINARY_DIR} - -header-filter=\".*/dune/xt/${_dxt_subdir}.*\") - add_custom_target(tidy_${_dxt_subdir} - COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} - -export-fixes=${CMAKE_CURRENT_BINARY_DIR}/clang-tidy.fixes ${_files} - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) - add_custom_target(fix_tidy_${_dxt_subdir} - COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} -fix ${_files} - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) + set(TIDY_ARGS -config= -format-style=file -extra-arg-before='-includeconfig.h' -p=${CMAKE_CURRENT_BINARY_DIR} + -header-filter=\".*/dune/xt/${_dxt_subdir}.*\") + add_custom_target( + tidy_${_dxt_subdir} + COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} -export-fixes=${CMAKE_CURRENT_BINARY_DIR}/clang-tidy.fixes ${_files} + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) + add_custom_target( + fix_tidy_${_dxt_subdir} + COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} -fix ${_files} + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) add_dependencies(tidy tidy_${_dxt_subdir}) add_dependencies(fix_tidy fix_tidy_${_dxt_subdir}) endmacro(add_tidy) @@ -90,20 +84,12 @@ endmacro(add_forced_doxygen_target) macro(DEPENDENCYCHECK) add_custom_target(dependencycheck SOURCES ${ARGN}) foreach(HEADER ${ARGN}) - string(REPLACE "/" - "_" - fn - ${HEADER}) + string(REPLACE "/" "_" fn ${HEADER}) set(TEST_NAME "dependencycheck_${fn}") to_list_spaces(CMAKE_CXX_FLAGS TEST_NAME_FLAGS) set(XARGS ${TEST_NAME_FLAGS} -DHAVE_CONFIG_H -H -c ${HEADER} -w) - add_custom_target(${TEST_NAME} - + - ${dune-xt_SOURCE_DIR}/cmake/dependencyinfo.py - ${CMAKE_CXX_COMPILER} - ${XARGS} - ${CMAKE_CURRENT_SOURCE_DIR} - ${fn}.dep) + add_custom_target(${TEST_NAME} + ${dune-xt_SOURCE_DIR}/cmake/dependencyinfo.py ${CMAKE_CXX_COMPILER} ${XARGS} + ${CMAKE_CURRENT_SOURCE_DIR} ${fn}.dep) add_dependencies(dependencycheck ${TEST_NAME}) endforeach(HEADER) endmacro(DEPENDENCYCHECK) @@ -119,14 +105,15 @@ macro(ADD_CPPCHECK) file(APPEND ${CPPINLINST} "${SOURCEFILE}\n") endforeach(SOURCEFILE) to_list_spaces(CPPCHECK_FLAGS_SPLIT ${CMAKE_CXX_FLAGS}) - add_custom_target(cppcheck - cppcheck - --enable=all - --xml - --report-progress - --file-list=${CPPINLINST} - ${CPPCHECK_FLAGS_SPLIT} - 2>cppcheck.xml) + add_custom_target( + cppcheck + cppcheck + --enable=all + --xml + --report-progress + --file-list=${CPPINLINST} + ${CPPCHECK_FLAGS_SPLIT} + 2>cppcheck.xml) else(EXISTS ${CPPCHECK_BINARY}) message(STATUS "Not adding cppcheck target because cppcheck executable not found") endif(EXISTS ${CPPCHECK_BINARY}) diff --git a/dune/CMakeLists.txt b/dune/CMakeLists.txt index c8bb8ca8e..cf13ca7c0 100644 --- a/dune/CMakeLists.txt +++ b/dune/CMakeLists.txt @@ -13,4 +13,8 @@ add_subdirectory(xt) add_subdirectory(pybindxi) -install(DIRECTORY xt DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/ FILES_MATCHING PATTERN "*.hh") +install( + DIRECTORY xt + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/ + FILES_MATCHING + PATTERN "*.hh") diff --git a/dune/pybindxi/CMakeLists.txt b/dune/pybindxi/CMakeLists.txt index 1af710289..400e9651c 100644 --- a/dune/pybindxi/CMakeLists.txt +++ b/dune/pybindxi/CMakeLists.txt @@ -13,32 +13,33 @@ dune_library_add_sources(dunepybindxi SOURCES interpreter.cc) -install(FILES attr.h - buffer_info.h - cast.h - chrono.h - common.h - complex.h - eigen.h - embed.h - eval.h - functional.h - gil.h - interpreter.hh - iostream.h - numpy.h - operators.h - options.h - pybind11.h - pytypes.h - stl.h - stl_bind.h - stl/filesystem.h - detail/class.h - detail/common.h - detail/descr.h - detail/init.h - detail/internals.h - detail/type_caster_base.h - detail/typeid.h - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/pybindxi) +install( + FILES attr.h + buffer_info.h + cast.h + chrono.h + common.h + complex.h + eigen.h + embed.h + eval.h + functional.h + gil.h + interpreter.hh + iostream.h + numpy.h + operators.h + options.h + pybind11.h + pytypes.h + stl.h + stl_bind.h + stl/filesystem.h + detail/class.h + detail/common.h + detail/descr.h + detail/init.h + detail/internals.h + detail/type_caster_base.h + detail/typeid.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/pybindxi) diff --git a/dune/xt/la/CMakeLists.txt b/dune/xt/la/CMakeLists.txt index 77ac49685..98ba1a13f 100644 --- a/dune/xt/la/CMakeLists.txt +++ b/dune/xt/la/CMakeLists.txt @@ -14,14 +14,16 @@ set(lib_dune_xt_la_sources container/pattern.cc eigen-solver/internal/numpy.cc) if(DUNE_XT_WITH_PYTHON_BINDINGS) - list(APPEND lib_dune_xt_la_sources - container/common.cc - container/eigen/dense.cc - container/eigen/sparse.cc - container/istl.cc - solver/common.cc - solver/eigen.cc - solver/istl.cc) + list( + APPEND + lib_dune_xt_la_sources + container/common.cc + container/eigen/dense.cc + container/eigen/sparse.cc + container/istl.cc + solver/common.cc + solver/eigen.cc + solver/istl.cc) endif() dune_library_add_sources(dunext SOURCES ${lib_dune_xt_la_sources}) diff --git a/dune/xt/test/CMakeLists.txt b/dune/xt/test/CMakeLists.txt index a19d85470..57c844adb 100644 --- a/dune/xt/test/CMakeLists.txt +++ b/dune/xt/test/CMakeLists.txt @@ -18,18 +18,15 @@ dependencycheck(${xtcommon}) include_directories(SYSTEM ${CMAKE_CURRENT_SOURCE_DIR}/gtest) dune_library_add_sources(gtest_dune_xt SOURCES common.cxx gtest/gtest-all.cc) -install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/gtest - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/xt/test/ - FILES_MATCHING - PATTERN "*") +install( + DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/gtest + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/xt/test/ + FILES_MATCHING + PATTERN "*") install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/main.hxx DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/xt/test/) # this should ideally move back into the grid subdir, along with the files -dune_symlink_to_source_files(FILES - gmsh_2d_simplices.msh - dgf_1d_interval.dgf - dgf_2d_interval.dgf - dgf_3d_interval.dgf +dune_symlink_to_source_files(FILES gmsh_2d_simplices.msh dgf_1d_interval.dgf dgf_2d_interval.dgf dgf_3d_interval.dgf dgf_4d_interval.dgf) add_subdir_tests(common) diff --git a/dune/xt/test/la/CMakeLists.txt b/dune/xt/test/la/CMakeLists.txt index e534d9ed8..1b9da9166 100644 --- a/dune/xt/test/la/CMakeLists.txt +++ b/dune/xt/test/la/CMakeLists.txt @@ -10,4 +10,3 @@ # René Fritze (2018 - 2019) # Tobias Leibner (2020) # ~~~ - diff --git a/python/scripts/CMakeLists.txt b/python/scripts/CMakeLists.txt index 0cbecd1eb..20dc2369d 100644 --- a/python/scripts/CMakeLists.txt +++ b/python/scripts/CMakeLists.txt @@ -11,4 +11,3 @@ # # do not delete # ~~~ - diff --git a/python/wrapper/CMakeLists.txt b/python/wrapper/CMakeLists.txt index 0cbecd1eb..20dc2369d 100644 --- a/python/wrapper/CMakeLists.txt +++ b/python/wrapper/CMakeLists.txt @@ -11,4 +11,3 @@ # # do not delete # ~~~ - -- GitLab From e5de4412c20f65bfc4b13eafacbc4e72d3401f59 Mon Sep 17 00:00:00 2001 From: Tobias Leibner <tobias.leibner@googlemail.com> Date: Wed, 24 Nov 2021 17:43:57 +0100 Subject: [PATCH 13/13] [python] Add more python packages --- CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bcb9e033d..87d480a37 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -86,7 +86,8 @@ dune_pybindxi_install_python_package(PATH python) include_dependent_binary_python_dirs() # install jinja2 for code generation into the dune-python virtualenv -execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov ipywidgets) +execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov ipywidgets k3d xmljson + vtk lxml loguru) add_subdirectory(python) -- GitLab