build:ubuntu_cpp: stage: build needs: [] tags: - docker script: - mkdir -p build_cpp - mkdir -p install_cpp - cd build_cpp - cmake -DCMAKE_INSTALL_PREFIX:PATH=../install_cpp -DCMAKE_BUILD_TYPE=Debug -DWERROR=ON -DCOVERAGE=ON .. - make -j4 all install artifacts: expire_in: 1 week paths: - build_cpp/ - install_cpp/ build:ubuntu_cpp_g++10: stage: build needs: [] tags: - docker script: - apt install -y g++-10 - mkdir -p build_cpp - mkdir -p install_cpp - cd build_cpp - export CXX=/usr/bin/g++-10 - cmake -DCMAKE_INSTALL_PREFIX:PATH=../install_cpp -DCMAKE_BUILD_TYPE=Debug -DWERROR=ON -DCOVERAGE=ON .. - make -j4 all install build:ubuntu_cpp_g++12: stage: build needs: [] tags: - docker script: - apt install -y g++-12 - mkdir -p build_cpp - mkdir -p install_cpp - cd build_cpp - export CXX=/usr/bin/g++-12 - cmake -DCMAKE_INSTALL_PREFIX:PATH=../install_cpp -DCMAKE_BUILD_TYPE=Debug -DWERROR=ON -DCOVERAGE=ON .. - make -j4 all install build:ubuntu_cpp_clang12: stage: build needs: [] tags: - docker script: - apt install -y clang-12 - mkdir -p build_cpp - mkdir -p install_cpp - cd build_cpp - export CXX=/usr/bin/clang++-12 - cmake -DCMAKE_INSTALL_PREFIX:PATH=../install_cpp -DCMAKE_BUILD_TYPE=Debug -DWERROR=ON -DCOVERAGE=ON .. - make -j4 all install build:ubuntu_cpp_clang15: stage: build needs: [] tags: - docker script: - apt install -y clang-15 - mkdir -p build_cpp - mkdir -p install_cpp - cd build_cpp - export CXX=/usr/bin/clang++-15 - cmake -DCMAKE_INSTALL_PREFIX:PATH=../install_cpp -DCMAKE_BUILD_TYPE=Debug -DWERROR=ON -DCOVERAGE=ON .. - make -j4 all install build:ubuntu_python: stage: build needs: [] tags: - docker script: - python3 -m pip install virtualenv - virtualenv venv - source venv/bin/activate # Numpy dependancy for unit test - python3 -m pip install -r requirements.txt - python3 -m pip install . artifacts: expire_in: 1 week paths: - venv/ build:windows_cpp: stage: build needs: [] tags: - windows image: buildtools before_script: # Install Chocolatey - Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) # Install dependencies - choco install cmake.install --installargs '"ADD_CMAKE_TO_PATH=System"' -Y - choco install git -Y - choco install python -Y # Update PATH - $env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User") script: - mkdir -p build_cpp - mkdir -p install_cpp - cd build_cpp - cmake -DCMAKE_INSTALL_PREFIX:PATH=../install_cpp -DCMAKE_BUILD_TYPE=Debug .. - cmake --build . -j2 - cmake --install . --config Debug artifacts: expire_in: 1 week paths: - build_cpp/ - install_cpp/ build:windows_python: stage: build needs: [] tags: - windows image: buildtools before_script: # Install Chocolatey - Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) # Install dependencies - choco install cmake.install --installargs '"ADD_CMAKE_TO_PATH=System"' -Y - choco install git -Y - choco install python -Y # Update PATH - $env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User") script: - python -m pip install virtualenv - virtualenv venv - venv\Scripts\Activate.ps1 # Numpy dependancy for unit test - python -m pip install -r requirements.txt - python -m pip install . artifacts: expire_in: 1 week paths: - venv/