-
Notifications
You must be signed in to change notification settings - Fork 11
Fix #438, add a deactivation option through CMake #543
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
2ddea38
50ef0d3
a344e13
7cd09d0
a4dd216
d1fa96c
28e5e9f
dfa2c4a
53ca0e2
b4a0ffa
6656850
414e81c
0d820fb
c3fdb3a
dde8e78
1ae59da
437e4d9
9d3d531
5a7865e
c96f63a
6fe2479
5734392
046af3d
ea1273f
e4dfc1f
726300b
454028b
602bd2c
277ba83
853b68b
8b77f8b
3cdaca4
06452b9
2368539
2b44ba5
1d1fde0
a5fb4bf
2aa9a58
32a5f3f
139f523
b40afb1
1d18d32
909945e
54d6cf3
c23e586
b90fcd2
8002a56
a68ddfb
b21e9bc
fa33ee3
6773295
fc22cf3
2cf8c95
3a7c06a
4fedbd8
522da47
daa7017
3ef949c
0773e51
6a0b48f
ab3d747
be47571
c4ddac6
4f5598e
29b6f6a
0f8d31f
37157f8
d6c1c91
708c9c9
6bdb9b6
f34cdb0
370813c
82a222e
1e171ad
3d9e16d
c512904
bb29d9b
8e6decd
12e45f7
01faac8
b398efb
e700bfa
5d89837
e165c55
ec26672
5a89616
5d8842c
75b3052
063b0c3
e9380ba
6c2af6b
497b872
8b139d6
b31deef
c192dab
069ac76
252f4a2
7b554f2
ad35695
3ed9d85
c905f4d
23c6e1f
12175f9
f7c466f
6e40eef
8816811
e48a682
98c854b
9af74c8
a357171
1c08893
c274f02
39f1595
917377e
aa6e9ab
8ec2586
d8106aa
acf493a
6b21418
1f24f12
817b8d9
f74b935
b87eeca
022102b
a2d0dae
c303700
513501e
922f158
ea775f9
da0a6df
77b5d50
62bbf52
9b9e1ac
5512329
03a6db5
0c3b806
40338f3
2489a27
c40bb13
d264058
5fb8ca5
a0145e8
9cad52f
fb3239f
2e18f18
953da81
0b892a3
122b426
5a743f0
7967ca8
90449bc
38b920f
0721aed
cd93bd3
2fdecdc
91c6084
9c9a30e
280644c
51001e0
63f3021
84998e9
06d25a5
bf78c1d
2c0fa72
862b91a
60e2c08
b6618f7
f393fb1
14c55a8
60d6f27
11dd913
bd50615
9ed98cc
175685a
bd0262d
e90fa69
cb517a3
77ffda0
1aaef2f
4152e5a
598cb33
b002e7e
a3860f0
962cf5b
7567c92
0582fe6
31bd954
a88e808
dc415a4
dedaac2
88b2b4f
9c8406b
ebf264c
9ac7313
63c4b63
9cb23fd
b3e2bf9
ae7e1d2
4a24d07
672ba06
d7aeaed
5efa39d
ff523ec
b5d48a6
0791050
628a733
93336a8
a25fdf5
eb4b25c
ba86bac
69a0e5d
16ffa94
9ed7be9
70856a5
2deb23b
2bdd76d
5cc878c
6d0dd16
19e59ad
4ad3d74
aa50266
25e3992
62d3998
aae37be
8166351
4dceea4
26a2f3a
cd86d2a
adc5865
aba9e54
279a114
16370b9
8acb8a0
c00e36e
f557884
c9ea244
0a88724
bf561de
9327b4e
a2da9b2
42c5787
bd1cbe2
9c533e7
95d7eca
9f1915b
5f90d73
db980f1
1896472
237f3ae
780e1e1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -52,6 +52,7 @@ jobs: | |
| PDI_SYSTEM: macos | ||
| PDI_COMPILER: clang | ||
| PDI_MPI: openmpi | ||
| CTEST_DIR: "/tmp/tests_output" | ||
| steps: | ||
| - run: brew install open-mpi | ||
| - uses: actions/checkout@v4 | ||
|
|
@@ -63,4 +64,4 @@ jobs: | |
| uses: mikepenz/action-junit-report@v5 | ||
| if: ( success() || failure() ) # always run even if the previous step fails | ||
| with: | ||
| report_paths: '${{github.workspace}}/tests.xml' | ||
| report_paths: '/tmp/tests_output/tests_*.xml' | ||
|
Comment on lines
-66
to
+67
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why is it different than the linux case?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Because the MacOS runners do not use a virtual machine (directly uses |
||
|
JAuriac marked this conversation as resolved.
JAuriac marked this conversation as resolved.
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -33,20 +33,28 @@ set -xe | |
|
|
||
|
|
||
|
|
||
| # Make our work dirs | ||
| # Make work directories | ||
|
|
||
| SRCDIR="${PWD}" | ||
|
|
||
| TEST_DIR="${TEST_DIR:-${PWD}}" | ||
| cd "${TEST_DIR}" | ||
| cd "$(mktemp -d pdibuild.XXXXX)" | ||
| TEST_DIR="${PWD}" | ||
| TEST_DIR="${PWD}" # TEST_DIR is pdibuild.<XXXXX> | ||
|
|
||
| TEST_DIR_WITH_PDI="${TEST_DIR}/with_pdi" | ||
| mkdir "${TEST_DIR_WITH_PDI}" | ||
|
|
||
| TEST_DIR_NO_PDI="${TEST_DIR}/no_pdi" | ||
| mkdir "${TEST_DIR_NO_PDI}" | ||
|
|
||
| TEST_DIR_API="${TEST_DIR}/api" | ||
| mkdir "${TEST_DIR_API}" | ||
|
|
||
| cd "${SRCDIR}" | ||
| cd "$(dirname "$0")/.." | ||
| SRCDIR="${PWD}" | ||
|
JAuriac marked this conversation as resolved.
|
||
|
|
||
| cd "${TEST_DIR}" | ||
| PDI_ROOT="${PWD}" # PDI_ROOT is the root of the pdi repository, | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. So you basically renamed
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
| # which contains pdi, no-pdi, and test_api among others | ||
|
|
||
|
|
||
|
|
||
|
|
@@ -122,8 +130,29 @@ fi | |
|
|
||
|
|
||
|
|
||
| # Configure, build & test | ||
| # Create directory for ctest output files. | ||
| mkdir -p ${CTEST_DIR} | ||
|
|
||
| # Configure, build & test for pdi, including example and test_api | ||
|
|
||
| cd "${TEST_DIR_WITH_PDI}" | ||
| cmake -DDIST_PROFILE=Devel ${CMAKE_FLAGS} "${PDI_ROOT}" | ||
| make ${MAKEFLAGS} | ||
| ctest --output-on-failure --timeout 90 ${CTEST_FLAGS} ${CTEST_DIR:+--output-junit "${CTEST_DIR}/tests_pdi.xml"} ${EXCLUDED_PDI_TESTS:+-E $EXCLUDED_PDI_TESTS} | ||
|
|
||
| # Configure, build & test for pdi's example with CMAKE_PREFIX_PATH (find_package) for no-pdi, only if Paraconf is available | ||
|
|
||
| if [[ "x${PDI_LIBS}" = "xprovided" ]]; then | ||
|
|
||
| cd "${TEST_DIR_NO_PDI}" | ||
| cmake -DCMAKE_PREFIX_PATH="${PDI_ROOT}/no-pdi" "${PDI_ROOT}/example" | ||
| make ${MAKEFLAGS} | ||
| ctest --output-on-failure --timeout 90 ${CTEST_FLAGS} ${CTEST_DIR:+--output-junit "${CTEST_DIR}/tests_no-pdi_example.xml"} ${EXCLUDED_PDI_TESTS:+-E $EXCLUDED_PDI_TESTS} | ||
| fi | ||
|
|
||
| # Configure, build & test for pdi's API specific tests with CMAKE_PREFIX_PATH (find_package) for no-pdi, with or without Paraconf | ||
|
|
||
| cmake -DDIST_PROFILE=Devel ${CMAKE_FLAGS} "${SRCDIR}" | ||
| cd "${TEST_DIR_API}" | ||
| cmake -DCMAKE_PREFIX_PATH="${PDI_ROOT}/no-pdi" "${PDI_ROOT}/test_api" | ||
| make ${MAKEFLAGS} | ||
| ctest --output-on-failure --timeout 90 ${CTEST_FLAGS} ${EXCLUDED_PDI_TESTS:+-E $EXCLUDED_PDI_TESTS} | ||
| ctest --output-on-failure --timeout 90 ${CTEST_FLAGS} ${CTEST_DIR:+--output-junit "${CTEST_DIR}/tests_no-pdi_api.xml"} ${EXCLUDED_PDI_TESTS:+-E $EXCLUDED_PDI_TESTS} | ||
|
JAuriac marked this conversation as resolved.
|
|
JAuriac marked this conversation as resolved.
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| #============================================================================= | ||
| # Copyright (C) 2025 Commissariat a l'energie atomique et aux energies alternatives (CEA) | ||
| # | ||
| # All rights reserved. | ||
| # | ||
| # Redistribution and use in source and binary forms, with or without | ||
| # modification, are permitted provided that the following conditions are met: | ||
| # * Redistributions of source code must retain the above copyright notice, | ||
| # this list of conditions and the following disclaimer. | ||
| # * 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 CEA, nor the names of the 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 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS 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. | ||
| #============================================================================= | ||
|
|
||
| cmake_minimum_required(VERSION 3.16...3.29) | ||
| project(PDI LANGUAGES C) | ||
|
|
||
| include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/PDIConfig.cmake") |
|
JAuriac marked this conversation as resolved.
JAuriac marked this conversation as resolved.
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,60 @@ | ||
| #============================================================================= | ||
| # Copyright (C) 2025 Commissariat a l'energie atomique et aux energies alternatives (CEA) | ||
| # | ||
| # All rights reserved. | ||
| # | ||
| # Redistribution and use in source and binary forms, with or without | ||
| # modification, are permitted provided that the following conditions are met: | ||
| # * Redistributions of source code must retain the above copyright notice, | ||
| # this list of conditions and the following disclaimer. | ||
| # * 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 CEA, nor the names of the 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 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS 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. | ||
| #============================================================================= | ||
|
|
||
| # Check for available but not supported components | ||
| if(DEFINED PDI_FIND_COMPONENTS) | ||
| foreach(component ${PDI_FIND_COMPONENTS}) | ||
| if(NOT component STREQUAL "C") | ||
| message(FATAL_ERROR | ||
| "no-PDI configuration: The component '${component}' is not supported. | ||
| Only the C component is supported.") | ||
| endif() | ||
| endforeach() | ||
| endif() | ||
|
|
||
| # Create the PDI_C target only once | ||
| if(NOT TARGET PDI_C) | ||
| add_library(PDI_C INTERFACE) | ||
| add_library(PDI::pdi ALIAS PDI_C) | ||
| add_library(PDI::PDI_C ALIAS PDI_C) | ||
|
|
||
| set_target_properties(PDI_C PROPERTIES | ||
| INTERFACE_INCLUDE_DIRECTORIES | ||
| "${CMAKE_CURRENT_LIST_DIR}/../include" | ||
| ) | ||
|
|
||
| if(NOT TARGET paraconf::paraconf) | ||
| find_package(paraconf QUIET COMPONENTS C) | ||
| endif() | ||
|
|
||
| if("${paraconf_FOUND}") | ||
| target_link_libraries(PDI_C INTERFACE paraconf::paraconf) | ||
| target_compile_definitions(PDI_C INTERFACE PARACONF_FOUND) | ||
| endif() | ||
| endif() |
|
JAuriac marked this conversation as resolved.
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| #============================================================================= | ||
| # Copyright (C) 2025 Commissariat a l'energie atomique et aux energies alternatives (CEA) | ||
| # | ||
| # All rights reserved. | ||
| # | ||
| # Redistribution and use in source and binary forms, with or without | ||
| # modification, are permitted provided that the following conditions are met: | ||
| # * Redistributions of source code must retain the above copyright notice, | ||
| # this list of conditions and the following disclaimer. | ||
| # * 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 CEA, nor the names of the 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 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS 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. | ||
| #============================================================================= | ||
|
|
||
| set(PDI_VERSION "1.9.2") |
Uh oh!
There was an error while loading. Please reload this page.