Skip to content

Commit 3052fe0

Browse files
authored
Merge branch 'main' into status-const
2 parents 55c2b86 + 0d68a36 commit 3052fe0

File tree

8 files changed

+169
-180
lines changed

8 files changed

+169
-180
lines changed

.github/workflows/ci.yml

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,17 @@ jobs:
2525
fail-fast: false
2626
matrix:
2727
os:
28+
- ubuntu-24.04
2829
- ubuntu-22.04
29-
- ubuntu-20.04
30+
- ubuntu-24.04-arm
31+
- ubuntu-22.04-arm
32+
- macos-15
3033
- macos-14
3134
- macos-13
35+
- windows-2025
36+
- windows-2022
3237
steps:
33-
- uses: actions/checkout@v4
38+
- uses: actions/checkout@v5
3439
- run: bash -x build-cmake.sh
3540
- run: bash check.sh
3641

@@ -40,13 +45,16 @@ jobs:
4045
fail-fast: false
4146
matrix:
4247
os:
48+
- ubuntu-24.04
4349
- ubuntu-22.04
44-
- ubuntu-20.04
50+
- ubuntu-24.04-arm
51+
- ubuntu-22.04-arm
52+
- macos-15
4553
- macos-14
4654
- macos-13
4755
steps:
48-
- uses: actions/checkout@v4
49-
- uses: actions/setup-python@v5
56+
- uses: actions/checkout@v5
57+
- uses: actions/setup-python@v6
5058
with: {python-version: '3.x'}
5159
- run: python -m pip install meson ninja
5260
- run: bash -x build-meson.sh
@@ -58,11 +66,14 @@ jobs:
5866
fail-fast: false
5967
matrix:
6068
os:
69+
- ubuntu-24.04
6170
- ubuntu-22.04
62-
- ubuntu-20.04
71+
- ubuntu-24.04-arm
72+
- ubuntu-22.04-arm
73+
- macos-15
6374
- macos-14
6475
- macos-13
6576
steps:
66-
- uses: actions/checkout@v4
77+
- uses: actions/checkout@v5
6778
- run: make
6879
- run: bash check.sh

.github/workflows/mpi4py.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
steps:
2424

2525
- name: Checkout mpi-stubs
26-
uses: actions/checkout@v4
26+
uses: actions/checkout@v5
2727
with:
2828
path: mpi-stubs
2929

@@ -36,12 +36,12 @@ jobs:
3636
echo LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$mpi_stubs/lib >> $GITHUB_ENV
3737
3838
- name: Setup Python
39-
uses: actions/setup-python@v5
39+
uses: actions/setup-python@v6
4040
with:
4141
python-version: 3
4242

4343
- name: Checkout mpi4py
44-
uses: actions/checkout@v4
44+
uses: actions/checkout@v5
4545
with:
4646
repository: mpi4py/mpi4py
4747
path: mpi4py

CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
cmake_minimum_required(VERSION 3.5.0)
2-
project(mpi-stubs VERSION 4.2 LANGUAGES C)
1+
cmake_minimum_required(VERSION 3.5.0...4.1.0)
2+
project(mpi-abi-stubs VERSION 5.0 LANGUAGES C)
33

44
option(BUILD_SHARED_LIBS "Build libraries as SHARED" TRUE)
55

66
add_library(mpi_abi mpistubs.c)
77
set_target_properties(mpi_abi PROPERTIES VERSION 0)
8+
set_target_properties(mpi_abi PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS 1)
89

910
include(GNUInstallDirs)
1011
install(FILES mpi.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
# header_and_stub_library
1+
# mpi-abi-stubs
22

33
The reference for the MPI standard ABI instantiated in mpi.h and a stub library libmpi_abi.so

build-cmake.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/sh
22
set -eu
33
cmake -B build -DCMAKE_INSTALL_PREFIX="${PREFIX:-$PWD}"
4-
cmake --build build
5-
cmake --install build
4+
cmake --build build --config Release
5+
cmake --install build --config Release
66
(test -d lib64 && ln -f -s lib64 lib) || true

check.sh

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,18 @@ export PATH=${prefix}/bin:$PATH
66

77
case "$(uname)" in
88
Linux)
9+
lib="lib"
910
so=".so"
1011
;;
1112
Darwin)
1213
ldd () { otool -L "$1"; }
14+
lib="lib"
1315
so=".dylib"
1416
;;
17+
*_NT-*)
18+
lib=""
19+
so=".dll"
20+
;;
1521
esac
1622

1723
tempdir="$(mktemp -d)"
@@ -41,13 +47,11 @@ command -v mpicc
4147
command -v mpicxx
4248
echo "$(mpicc -show-incdir)/mpi.h":
4349
grep -E 'MPI_(SUB)?VERSION' "$(mpicc -show-incdir)/mpi.h"
44-
echo "$(mpicc -show-libdir)/lib$(mpicc -show-libs)$so":
45-
ldd "$(mpicc -show-libdir)/lib$(mpicc -show-libs)$so"
50+
echo "$(mpicc -show-libdir)/$lib$(mpicc -show-libs)$so":
51+
ldd "$(mpicc -show-libdir)/$lib$(mpicc -show-libs)$so"
4652

4753
set -x
4854

49-
RPATH=-Wl,-rpath,$(mpicc -show-libdir)
50-
5155
mpicc -show
5256
mpicc -show-incdir
5357
mpicc -show-libdir
@@ -58,8 +62,8 @@ for cc in gcc clang; do
5862
diff cc.log mpicc.log
5963
mpicc -cc="$cc" ./helloworld.c -c
6064
test -f helloworld.o && rm helloworld.o
61-
mpicc -cc="$cc" ./helloworld.c "$RPATH"
62-
ldd a.out && rm a.out
65+
mpicc -cc="$cc" ./helloworld.c -o hw.exe
66+
ldd hw.exe && rm hw.exe
6367
done
6468

6569
mpicxx -show
@@ -72,6 +76,6 @@ for cxx in g++ clang++; do
7276
diff cxx.log mpicxx.log
7377
mpicxx -cxx="$cxx" ./helloworld.cxx -c
7478
test -f helloworld.o && rm helloworld.o
75-
mpicxx -cxx="$cxx" ./helloworld.cxx "$RPATH"
76-
ldd a.out && rm a.out
79+
mpicxx -cxx="$cxx" ./helloworld.cxx -o hw.exe
80+
ldd hw.exe && rm hw.exe
7781
done

0 commit comments

Comments
 (0)