-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* cmake: Don't use Clang/GNU command line options with MSVC * changelog: Update changelog * cmake: Define NOMINMAX on Windows * cmake: Use CXX_COMPILER_ID instead of COMPILE_LANG_AND_ID * core: Add export symbol * [core] Remove a warning * [core] Don't add extern with dllexport * core: Split explicit template instantiation for constraints * [core] Fix missing definition * [core] Update constraints.hpp * [core] Add missing includes * [python] Add windows_dll_manager module to manage add_dll_directory on Windows * [python] Fix __init__.py * [cmake] Build Windows pyd in the right directory * [python] Remove pinocchio reference * [cmake] Fix path used to launch generate_stubs * [core] Use explicit instantiation macro from jrl-cmakemodules * cmake: Generate binaries in bin and lib * [core] Use new define name * [cmake] Update jrl-cmakemodules * [changelog] Fix changelog * [python] Add support to other site-package structure * [ci] Update MacOS/Linux recipe * [ci] Add Windows * [core] Fix pre-commit * [cmake] Use standard jrl-cmakemodules * [ci] Fix Windows workflow * [core] Fix some warnings * [ci] Try to publish on Windows * [core] Fix clang error * [ci] Add windows to publish workflow * [ci] Try to publish on Windows * [core] Update LogRecord iter and al_iter instead of casting * [cmake] Update jrl-cmakemodules to remove a warnings under ClangCl * [ci] Add pkg-config as Windows dependency * [cmake] Update jrl-cmakemodules to try to fix template instantiation on Windows * [core] Use new DLLAPI macro * [cmake] Update jrl-cmakemodules * [core] Add dllexport on template definition * [core] Forget some definition * [core] Fix another missing definition * [core] Manage MSVC error on template instantiation * [python] Fix dll relative directory * [ci] Test publish script on non release version * [cmake] Use standard jrl-cmakemodules * [changelog] Add changelog entry
- Loading branch information
Showing
56 changed files
with
496 additions
and
108 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ dependencies: | |
- cmake | ||
- ninja | ||
- cxx-compiler | ||
- pkg-config | ||
- ccache | ||
- eigenpy>=3.2 | ||
- pinocchio | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
name: proxsuite-nlp | ||
channels: | ||
- conda-forge | ||
dependencies: | ||
- python | ||
- cmake | ||
- ninja | ||
- pkg-config | ||
- ccache | ||
- eigenpy>=3.2 | ||
- pinocchio | ||
- eigen | ||
- fmt | ||
- example-robot-data | ||
- pytest | ||
- casadi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
name: CI - Windows via Conda | ||
on: | ||
push: | ||
paths-ignore: | ||
- 'doc/**' | ||
- 'scripts/**' | ||
- '.gitlab-ci.yml' | ||
- '.gitignore' | ||
- '*.md' | ||
- 'CITATION.cff' | ||
- 'CITATIONS.bib' | ||
pull_request: | ||
paths-ignore: | ||
- 'doc/' | ||
- 'scripts/' | ||
- '.gitlab-ci.yml' | ||
- '.gitignore' | ||
- '*.md' | ||
- 'CITATION.cff' | ||
- 'CITATIONS.bib' | ||
|
||
jobs: | ||
build: | ||
name: ${{ matrix.os }} - ${{ matrix.compiler }} | ||
runs-on: ${{ matrix.os }} | ||
env: | ||
CCACHE_BASEDIR: "${GITHUB_WORKSPACE}" | ||
CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache" | ||
CCACHE_COMPRESS: true | ||
CCACHE_COMPRESSLEVEL: 6 | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: ["windows-2019"] | ||
compiler: ["cl", "clang-cl"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: recursive | ||
|
||
- uses: actions/cache@v3 | ||
with: | ||
path: .ccache | ||
key: ccache-windows-conda-${{ matrix.compiler }}-${{ matrix.os }}-${{ github.sha }} | ||
restore-keys: ccache-windows-conda-${{ matrix.compiler }}-${{ matrix.os }}- | ||
|
||
- uses: conda-incubator/setup-miniconda@v3 | ||
with: | ||
activate-environment: proxsuite-nlp | ||
auto-update-conda: true | ||
environment-file: .github/workflows/conda/environment_windows.yml | ||
python-version: "3.10" | ||
auto-activate-base: false | ||
|
||
- name: Build proxsuite-nlp | ||
shell: cmd /C CALL {0} | ||
env: | ||
CC: ${{ matrix.compiler }} | ||
CXX: ${{ matrix.compiler }} | ||
run: | | ||
call conda list | ||
call "%programfiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" amd64 | ||
:: Create build directory | ||
mkdir build | ||
pushd build | ||
:: Configure (Ninja use CC and CXX to determine the compiler) | ||
cmake ^ | ||
-G "Ninja" ^ | ||
-DCMAKE_INSTALL_PREFIX=%CONDA_PREFIX%\Library ^ | ||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache ^ | ||
-DCMAKE_BUILD_TYPE=Release ^ | ||
-DPYTHON_SITELIB=%CONDA_PREFIX%\Lib\site-packages ^ | ||
-DPYTHON_EXECUTABLE=%CONDA_PREFIX%\python.exe ^ | ||
-DBUILD_PYTHON_INTERFACE=ON ^ | ||
-DGENERATE_PYTHON_STUBS=ON ^ | ||
-DBUILD_BENCHMARK=ON ^ | ||
.. | ||
:: Build | ||
cmake --build . | ||
if errorlevel 1 exit 1 | ||
:: Testing | ||
ctest --output-on-failure | ||
if errorlevel 1 exit 1 | ||
:: Install | ||
cmake --install . | ||
:: Test Python import | ||
cd .. | ||
python -c "import proxsuite_nlp" | ||
if errorlevel 1 exit 1 | ||
check: | ||
if: always() | ||
name: check-windows-conda | ||
|
||
needs: | ||
- build | ||
|
||
runs-on: Ubuntu-latest | ||
|
||
steps: | ||
- name: Decide whether the needed jobs succeeded or failed | ||
uses: re-actors/alls-green@release/v1 | ||
with: | ||
jobs: ${{ toJSON(needs) }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.