Skip to content

Commit 713cef8

Browse files
Merge pull request #349 from F2I-Consulting/dev
v2.10.0.0
2 parents 0475d33 + 558df97 commit 713cef8

220 files changed

Lines changed: 49701 additions & 62028 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/github-actions.yml

Lines changed: 68 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,14 @@ jobs:
2121
cmake --build . --config Release --target INSTALL
2222
- name: Boost install
2323
run: |
24-
(New-Object System.Net.WebClient).DownloadFile("https://sourceforge.net/projects/boost/files/boost-binaries/1.78.0//boost_1_78_0-msvc-14.2-64.exe", "${{ runner.temp }}\boost.exe")
24+
(New-Object System.Net.WebClient).DownloadFile("https://sourceforge.net/projects/boost/files/boost-binaries/1.85.0/boost_1_85_0-msvc-14.2-64.exe", "${{ runner.temp }}\boost.exe")
2525
Start-Process -Wait -FilePath "${{ runner.temp }}\boost.exe" "/SILENT","/SP-","/SUPPRESSMSGBOXES","/DIR=${{ runner.temp }}\boost-install"
2626
- name: CMake build and install
2727
run: |
2828
cd ${{ github.workspace }}/..
2929
mkdir build
3030
cd build
31-
cmake -G"Visual Studio 16 2019" -A x64 -T host=x64 -Wno-dev -Wno-deprecated -DHDF5_ROOT=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16 -DMINIZIP_ROOT=${{ runner.temp }}/minizip-install -DZLIB_ROOT=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16 -DSZIP_LIBRARY_RELEASE=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16/lib/szip.lib -DBoost_INCLUDE_DIR=${{ runner.temp }}\boost-install -DWITH_EXAMPLE=TRUE -DWITH_RESQML2_2=TRUE -DWITH_TEST=TRUE ${{ github.workspace }}
31+
cmake -G"Visual Studio 16 2019" -A x64 -T host=x64 -Wno-dev -Wno-deprecated -DHDF5_ROOT=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16 -DMINIZIP_ROOT=${{ runner.temp }}/minizip-install -DZLIB_ROOT=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16 -DSZIP_LIBRARY_RELEASE=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16/lib/szip.lib -DBoost_INCLUDE_DIR=${{ runner.temp }}\boost-install -DWITH_EXAMPLE=TRUE -DWITH_RESQML2_2=TRUE -DWITH_TEST=TRUE -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/fesapi-install ${{ github.workspace }}
3232
cmake --build . --config Release -j2
3333
cmake --build . --config Release --target INSTALL
3434
- name: Copy hdf5 dll
@@ -41,6 +41,10 @@ jobs:
4141
- name: Run Cpp example
4242
run: |
4343
${{ github.workspace }}\..\build\Release\example.exe
44+
- uses: actions/upload-artifact@v4
45+
with:
46+
name: windows-2019
47+
path: ${{ runner.temp }}/fesapi-install
4448
windows-2019-staticLink-cs:
4549
runs-on: windows-2019
4650
steps:
@@ -52,7 +56,7 @@ jobs:
5256
tar -xzf ${{ runner.temp }}\zlib.tar.gz
5357
mkdir zlib-build
5458
cd zlib-build
55-
cmake -G"Visual Studio 16 2019" -A x64 -T host=x64 -Wno-dev -Wno-deprecated -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/zlib-install ${{ runner.temp }}/zlib-1.3
59+
cmake -G"Visual Studio 16 2019" -A x64 -T host=x64 -Wno-dev -Wno-deprecated -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/zlib-install ${{ runner.temp }}/zlib-1.3.1
5660
cmake --build . --config Release -j2
5761
cmake --build . --config Release --target INSTALL
5862
- name: Minizip static lib install
@@ -87,11 +91,11 @@ jobs:
8791
cd ${{ github.workspace }}/..
8892
mkdir build
8993
cd build
90-
cmake -G"Visual Studio 16 2019" -A x64 -T host=x64 -Wno-dev -Wno-deprecated -DHDF5_ROOT=${{ runner.temp }}/hdf5-install -DHDF5_USE_STATIC_LIBRARIES=TRUE -DMINIZIP_ROOT=${{ runner.temp }}/minizip-install -DZLIB_ROOT=${{ runner.temp }}\hdf5-1.12.0-Std-win10_64-vs16\include -DZLIB_USE_STATIC_LIBS=TRUE -DBoost_INCLUDE_DIR=${{ runner.temp }}\boost-install -DWITH_EXAMPLE=TRUE -DWITH_RESQML2_2=TRUE -DWITH_DOTNET_WRAPPING=TRUE -DSWIG_EXECUTABLE=${{ runner.temp }}/swigwin-4.2.0/swig.exe ${{ github.workspace }}
94+
cmake -G"Visual Studio 16 2019" -A x64 -T host=x64 -Wno-dev -Wno-deprecated -DHDF5_ROOT=${{ runner.temp }}/hdf5-install -DHDF5_USE_STATIC_LIBRARIES=TRUE -DMINIZIP_ROOT=${{ runner.temp }}/minizip-install -DZLIB_ROOT=${{ runner.temp }}/zlib-install -DZLIB_USE_STATIC_LIBS=TRUE -DBoost_INCLUDE_DIR=${{ runner.temp }}/boost-install -DWITH_EXAMPLE=TRUE -DWITH_RESQML2_2=TRUE -DWITH_DOTNET_WRAPPING=TRUE -DSWIG_EXECUTABLE=${{ runner.temp }}/swigwin-4.2.0/swig.exe -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/fesapi-install ${{ github.workspace }}
9195
cmake --build . --config Release -j2
9296
cmake --build . --config Release --target INSTALL
9397
- name: Add msbuild to PATH
94-
uses: microsoft/setup-msbuild@v1.1
98+
uses: microsoft/setup-msbuild@v2
9599
with:
96100
msbuild-architecture: x64
97101
- name: Build the C# example
@@ -105,7 +109,7 @@ jobs:
105109
- name: Run C# example
106110
run: |
107111
${{ github.workspace }}\cs\example\bin\x64\Release\example.exe
108-
ubuntu-20-java8:
112+
ubuntu-20-java11:
109113
runs-on: ubuntu-20.04
110114
strategy:
111115
fail-fast: false # 'false' means Don't stop matrix workflows even if some matrix failed.
@@ -119,15 +123,15 @@ jobs:
119123
# { xcc_name: 'clang 12', xcc_pkg: clang-12, cc: clang, cxx: clang++ },
120124
]
121125
env:
122-
XCC: $${{ matrix.xcc_name }} # Set environment variables
126+
XCC: $${{ matrix.xcc_name }}
123127
CC: ${{ matrix.cc }}
124128
CXX: ${{ matrix.cxx }}
125129
steps:
126130
- uses: actions/checkout@v4
127131
- uses: actions/setup-java@v4
128132
with:
129133
distribution: 'temurin' # See 'Supported distributions' for available options
130-
java-version: '8'
134+
java-version: '11'
131135
- name: APT install
132136
run: |
133137
sudo apt update
@@ -150,48 +154,66 @@ jobs:
150154
cd ..
151155
mkdir build
152156
cd build
153-
cmake -DHDF5_ROOT=${{ runner.temp }}/install-hdf5-1.12.2 -DHDF5_USE_STATIC_LIBRARIES=TRUE -DCMAKE_BUILD_TYPE=Release -DWITH_JAVA_WRAPPING=TRUE ${{ github.workspace }} -D CMAKE_C_COMPILER=${{ matrix.cc }} -D CMAKE_CXX_COMPILER=${{ matrix.cxx }}
157+
cmake -DHDF5_ROOT=${{ runner.temp }}/install-hdf5-1.12.2 -DHDF5_USE_STATIC_LIBRARIES=TRUE -DCMAKE_BUILD_TYPE=Release -DWITH_JAVA_WRAPPING=TRUE ${{ github.workspace }} -DCMAKE_C_COMPILER=${{ matrix.cc }} -DCMAKE_CXX_COMPILER=${{ matrix.cxx }} -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/fesapi-install
154158
cmake --build . -j2
155159
cmake --install .
156160
- name: Run java example
157161
run: |
158162
cd ${{ github.workspace }}/java/src
159-
javac -cp `find ${{ github.workspace }}/../build/install -name fesapiJava*.jar` com/f2i_consulting/example/FesapiJavaExample.java
160-
java -Djava.library.path=${{ github.workspace }}/../build/install/lib -cp `find ${{ github.workspace }}/../build/install -name fesapiJava*.jar`:. com.f2i_consulting.example.FesapiJavaExample
161-
ubuntu-20-python3:
162-
runs-on: ubuntu-20.04
163+
javac -cp `find ${{ runner.temp }}/fesapi-install -name fesapiJava*.jar` com/f2i_consulting/example/FesapiJavaExample.java
164+
java -Djava.library.path=${{ runner.temp }}/fesapi-install/lib -cp `find ${{ runner.temp }}/fesapi-install -name fesapiJava*.jar`:. com.f2i_consulting.example.FesapiJavaExample
165+
- uses: actions/upload-artifact@v4
166+
with:
167+
name: ubuntu-20.04-${{ matrix.cxx }}
168+
path: ${{ runner.temp }}/fesapi-install
169+
build_wheels:
170+
name: Build wheels on ${{ matrix.os }}
171+
runs-on: ${{ matrix.os }}
172+
strategy:
173+
matrix:
174+
os: [ubuntu-latest]
163175
steps:
164176
- uses: actions/checkout@v4
165-
- name: APT install
166-
run: |
167-
sudo apt update
168-
sudo apt install -y libminizip-dev libboost-all-dev
169-
# Build HDF5 instead of downloading the package because the package is not built with -fPIC causing relocation issue.
170-
- name: HDF5 build and install
171-
run: |
172-
cd ${{ runner.temp }}
173-
wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.14/hdf5-1.14.0/src/hdf5-1.14.0.tar.gz
174-
tar -xzf hdf5-1.14.0.tar.gz
175-
cd hdf5-1.14.0
176-
mkdir build
177-
cd build
178-
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE:STRING=Release -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_TESTING:BOOL=OFF -DHDF5_BUILD_TOOLS:BOOL=OFF -DHDF5_BUILD_EXAMPLES:BOOL=OFF -DHDF5_BUILD_CPP_LIB:BOOL=OFF -DHDF5_BUILD_HL_LIB:BOOL=OFF -DHDF5_ENABLE_Z_LIB_SUPPORT:BOOL=ON -DCMAKE_INSTALL_PREFIX:STRING=${{ runner.temp }}/install-hdf5-1.14.0 ..
179-
cmake --build . --config Release
180-
make -j4
181-
make install
182-
- name: CMake build and install
183-
run: |
184-
cd ..
185-
mkdir build
186-
cd build
187-
cmake -DHDF5_ROOT=${{ runner.temp }}/install-hdf5-1.14.0 -DHDF5_USE_STATIC_LIBRARIES=TRUE -DCMAKE_BUILD_TYPE=Release -DWITH_PYTHON_WRAPPING=TRUE ${{ github.workspace }}
188-
cmake --build . -j2
189-
cmake --install .
190-
- name: Run Python example
191-
run: |
192-
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${{ github.workspace }}/../build/install/lib
193-
pip3 install ${{ github.workspace }}/python/dist/*.whl
194-
python3 ${{ github.workspace }}/python/example/example.py
177+
- name: Stub `setup.py` check
178+
# It will be generated during CMake run
179+
# https://github.com/pypa/cibuildwheel/issues/1139
180+
run: touch python/setup.py
181+
- name: Build wheels
182+
uses: pypa/cibuildwheel@v2.19.2
183+
env:
184+
CIBW_BUILD: cp38-manylinux_* cp39-manylinux_* cp310-manylinux_* cp311-manylinux_* cp312-manylinux_* cp313-manylinux_*
185+
CIBW_ARCHS: auto64
186+
CIBW_BEFORE_ALL: >
187+
yum install -y wget minizip-devel gcc-c++ boost-devel &&
188+
yum search epel-release &&
189+
yum info epel-release &&
190+
yum install -y epel-release &&
191+
yum --enablerepo=epel install -y cmake3 &&
192+
cd / &&
193+
wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.3/src/hdf5-1.12.3.tar.gz &&
194+
tar xf hdf5-1.12.3.tar.gz &&
195+
mkdir hdf5-build &&
196+
cd hdf5-build &&
197+
cmake3 -G "Unix Makefiles" -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_TESTING:BOOL=OFF -DHDF5_BUILD_TOOLS:BOOL=OFF -DHDF5_BUILD_EXAMPLES:BOOL=OFF -DHDF5_BUILD_CPP_LIB:BOOL=OFF -DHDF5_BUILD_HL_LIB:BOOL=OFF -DCMAKE_INSTALL_PREFIX:STRING=/hdf5-install ../hdf5-1.12.3 &&
198+
cmake3 --build . -j2 --config Release &&
199+
cmake3 --install . &&
200+
cd / &&
201+
mkdir build &&
202+
cd build &&
203+
cmake3 -DCMAKE_BUILD_TYPE=Release -DHDF5_ROOT=/hdf5-install -DHDF5_USE_STATIC_LIBRARIES=TRUE -DWITH_PYTHON_WRAPPING=TRUE -DCMAKE_INSTALL_PREFIX:STRING=/fesapi-install {project} &&
204+
cmake3 --build . -j2 --config Release &&
205+
cmake3 --install .
206+
CIBW_REPAIR_WHEEL_COMMAND_LINUX: >
207+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/fesapi-install/lib64 &&
208+
auditwheel repair -w {dest_dir} {wheel}
209+
CIBW_TEST_COMMAND: python {project}/python/example/example.py
210+
with:
211+
package-dir: ./python
212+
output-dir: wheelhouse
213+
- uses: actions/upload-artifact@v4
214+
with:
215+
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
216+
path: ./wheelhouse/*.whl
195217
ubuntu-20-mpi:
196218
runs-on: ubuntu-20.04
197219
steps:
@@ -208,11 +230,11 @@ jobs:
208230
cd ${{ runner.temp }}
209231
mkdir build
210232
cd build
211-
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=mpic++ -DCMAKE_C_COMPILER=mpicc -DHDF5_PREFER_PARALLEL:BOOL=TRUE -DWITH_EXAMPLE:BOOL=TRUE ${{ github.workspace }}
233+
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=mpic++ -DCMAKE_C_COMPILER=mpicc -DHDF5_PREFER_PARALLEL:BOOL=TRUE -DWITH_EXAMPLE:BOOL=TRUE -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/fesapi-install ${{ github.workspace }}
212234
cmake --build . -j2
213235
cmake --install .
214236
- name: Run example
215-
run: mpiexec -n 2 ${{ runner.temp }}/build/install/example
237+
run: mpiexec -n 2 ${{ runner.temp }}/fesapi-install/example
216238
ubuntu-20-valgrind-unitTest:
217239
runs-on: ubuntu-20.04
218240
steps:
@@ -226,7 +248,7 @@ jobs:
226248
cd ..
227249
mkdir build
228250
cd build
229-
cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_EXAMPLE=TRUE -DWITH_RESQML2_2=TRUE -DWITH_TEST=TRUE ${{ github.workspace }}
251+
cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_EXAMPLE=TRUE -DWITH_RESQML2_2=TRUE -DWITH_TEST=TRUE -DCMAKE_INSTALL_PREFIX=${{ runner.temp }}/fesapi-install ${{ github.workspace }}
230252
cmake --build . -j2
231253
cmake --install .
232254
- name: Run Valgrind on example
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Actions to run when releasing
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
env:
8+
GH_TOKEN: ${{ secrets.RELEASE_TOKEN }}
9+
GITHUB_REF_NAME: ${{ github.ref_name }}
10+
11+
jobs:
12+
# Remark : https://github.com/orgs/community/discussions/46034
13+
add-checksum:
14+
runs-on: ubuntu-latest
15+
steps:
16+
# It is necessary to checkout the repository for GitHub CLI to know which repository to target
17+
- name: Checkout repository
18+
uses: actions/checkout@v4
19+
- name: ZIP checksum
20+
run: |
21+
gh release download --archive=zip
22+
shasum -a 256 *.zip > fesapi-${GITHUB_REF_NAME#v}.zip.sha256.txt
23+
gh release upload ${{ github.ref_name }} fesapi-${GITHUB_REF_NAME#v}.zip.sha256.txt
24+
- name: TAR.GZ checksum
25+
run: |
26+
gh release download --archive=tar.gz
27+
shasum -a 256 *.tar.gz > fesapi-${GITHUB_REF_NAME#v}.tar.gz.sha256.txt
28+
gh release upload ${{ github.ref_name }} fesapi-${GITHUB_REF_NAME#v}.tar.gz.sha256.txt
29+

.gitignore

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@
33
/cs/example/Program.cs
44
/cs/example/HdfProxyFactoryExample.cs
55
/cs/example/HdfProxyExample.cs
6-
/cs/EtpClientExample/EtpClientExample.cs
7-
/cs/EtpClientExample/MyOwnClientCoreHandlers.cs
8-
/cs/EtpClientExample/MyOwnDiscoveryProtocolHandlers.cs
9-
/cs/EtpClientExample/MyOwnStoreProtocolHandlers.cs
106
/swig/swigCsInclude.i
117
/swig/swigJavaInclude.i
128
/swig/swigPythonInclude.i

CMakeLists.txt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ set (FESAPI_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
1212

1313
# version mechanism
1414
set (Fesapi_VERSION_MAJOR 2)
15-
set (Fesapi_VERSION_MINOR 9)
15+
set (Fesapi_VERSION_MINOR 10)
1616
set (Fesapi_VERSION_PATCH 0)
17-
set (Fesapi_VERSION_TWEAK 1)
17+
set (Fesapi_VERSION_TWEAK 0)
1818

1919
set (Fesapi_VERSION ${Fesapi_VERSION_MAJOR}.${Fesapi_VERSION_MINOR}.${Fesapi_VERSION_PATCH}.${Fesapi_VERSION_TWEAK})
2020

@@ -140,6 +140,7 @@ list(APPEND FESAPI_PROXIES_SOURCES
140140
${FESAPI_ROOT_DIR}/src/proxies/envC.cpp
141141
${FESAPI_ROOT_DIR}/src/proxies/gsoap_resqml2_0_1C.cpp
142142
${FESAPI_ROOT_DIR}/src/proxies/gsoap_eml2_3C.cpp
143+
${FESAPI_ROOT_DIR}/src/proxies/gsoap_uom1_0C.cpp
143144
${FESAPI_ROOT_DIR}/src/proxies/namespace.cpp
144145
${FESAPI_ROOT_DIR}/src/proxies/stdsoap2.cpp
145146
${FESAPI_ROOT_DIR}/src/proxies/struct_tm.cpp
@@ -151,6 +152,8 @@ list(APPEND FESAPI_PROXIES_HEADERS
151152
${FESAPI_ROOT_DIR}/src/proxies/gsoap_resqml2_0_1Stub.h
152153
${FESAPI_ROOT_DIR}/src/proxies/gsoap_eml2_3H.h
153154
${FESAPI_ROOT_DIR}/src/proxies/gsoap_eml2_3Stub.h
155+
${FESAPI_ROOT_DIR}/src/proxies/gsoap_uom1_0H.h
156+
${FESAPI_ROOT_DIR}/src/proxies/gsoap_uom1_0Stub.h
154157
${FESAPI_ROOT_DIR}/src/proxies/stdsoap2.h
155158
)
156159

README.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# If you just want some precompiled binaries (just to test for example)
2-
- Please first look in the [assets](https://github.com/F2I-Consulting/fesapi/releases) of the releases if it as already provided
2+
- Please first check in the [assets](https://github.com/F2I-Consulting/fesapi/releases) of the releases if your version has already been provided? For a Python version, just look at [PyPI](https://pypi.org/project/fesapi/).
33
- If not, create an [issue](https://github.com/F2I-Consulting/fesapi/issues/new?assignees=&labels=&projects=&template=feature_request.md) and ask for the version you would want.
44
# Prepare your build environment
55
- Create a folder called fesapiEnv.
@@ -23,7 +23,7 @@ We advise you to install these third party libraries respectively into
2323
- fesapiEnv/dependencies/minizip-particularVersion
2424
- fesapiEnv/dependencies/boost-particularVersion
2525
# Configure the build
26-
Fesapi uses cmake as its build tool. A 3.12 version or later of cmake is required https://cmake.org/download/. We also recommend using cmake-gui (already included in the bin folder of the binary releases of cmake) which provides a graphical user interface on top of cmake. If you want to use cmake in command line, you would find example in [Azure Pipeline file](./azure-pipelines.yml). Follow the below instructions :
26+
FESAPI uses cmake as its build tool. A 3.12 version or later of cmake is required https://cmake.org/download/. We also recommend using cmake-gui (already included in the bin folder of the binary releases of cmake) which provides a graphical user interface on top of cmake. If you want to use cmake in command line, you would find example in [GitHub Actions file](./.github/workflows/github-actions.yml). Follow the below instructions :
2727

2828
- yourPath/fesapiEnv/fesapi defines where is the source code folder
2929
- yourPath/fesapiEnv/build/theNameYouWant defines where to build the binaries
@@ -59,15 +59,14 @@ As a first way to start, we advise people to look at examples provided with FESA
5959
- C++ : [in example/example.cpp](./example/example.cpp)
6060
- C# : in cs/example/example.sln (Program.cs will be generated by cmake configuration when WITH_DOTNET_WRAPPING is ON, the source file is initially located [in cmake/Program.cs](./cmake/Program.cs))
6161
- Java (JDK 1.5 and later) : in java/src/com/f2i_consulting/example/FesapiJavaExample.java (FesapiJavaExample.java will be generated by cmake configuration when WITH_JAVA_WRAPPING is ON, the source file is initially located [in cmake/FesapiJavaExample.java](./cmake/FesapiJavaExample.java))
62-
- Python3 (no support for Python2) : [in python/example/example.py](./python/example/example.py) (please follow instructions in the documentation header of this example python file)
62+
- Python3 (no support for Python2) : [in python/example/example.py](./python/example/example.py) or as a jupyter notebook [in python/example/fesapi.ipynb](./python/example/fesapi.ipynb)
6363

6464
You can also find Doxygen generated documentation [here](https://f2i-consulting.com/fesapi/doxygen/)
6565

6666
# Testing
6767
This software was tested with :
6868
- Catch2 from [Catch Org](https://github.com/catchorg/Catch2)
69-
- [GitHub actions](https://github.com/features/actions)
70-
- [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines/)
69+
- [GitHub Actions](https://github.com/features/actions)
7170

7271
# Credits
7372
This software was developed with :

cmake/FesapiCppConfig.cmake.in

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
include(CMakeFindDependencyMacro)
2+
3+
# Include the actual targets
4+
include("${CMAKE_CURRENT_LIST_DIR}/FesapiCppTargets.cmake")

0 commit comments

Comments
 (0)