Skip to content

Commit

Permalink
Merge branch 'dev' of https://github.com/colmap/colmap into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
ishipachev committed May 15, 2022
2 parents 98f3fa6 + f4c6bea commit 701b070
Show file tree
Hide file tree
Showing 499 changed files with 8,056 additions and 30,307 deletions.
15 changes: 0 additions & 15 deletions .appveyor.yml

This file was deleted.

48 changes: 48 additions & 0 deletions .azure-pipelines/build-mac.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
parameters:
displayName: 'Mac 10.15'
macVersion: '10.15'

jobs:
- job: mac_build_${{ replace(parameters.macVersion, '.', '') }}
displayName: '${{ parameters.displayName }}'
pool:
vmImage: 'macOS-${{ parameters.macVersion }}'
steps:
- script: |
brew install \
cmake \
ninja \
boost \
eigen \
freeimage \
metis \
glog \
gflags \
ceres-solver \
qt5 \
glew \
cgal
displayName: 'Install dependencies'
- script: |
export PATH="/usr/local/opt/qt@5/bin:$PATH"
cmake --version
mkdir build
cd build
cmake .. \
-GNinja \
-DTESTS_ENABLED=ON \
-DQt5_DIR=/usr/local/opt/qt/lib/cmake/Qt5
ninja
displayName: 'Configure and build'
- script: |
cd build
ctest
tests_pass=$?
if [ $tests_pass -ne 0 ]; then
echo "\n\n\nTests failed, rerunning with verbose output"
ctest --rerun-failed --output-on-failure
fi
exit $tests_pass
displayName: 'Run tests'
78 changes: 78 additions & 0 deletions .azure-pipelines/build-ubuntu.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
parameters:
displayName: 'Ubuntu 18.04'
ubuntuVersion: '18.04'
cudaEnabled: false
asanEnabled: false

jobs:
- job: ubuntu_build_${{ replace(parameters.ubuntuVersion, '.', '') }}_cuda_${{ parameters.cudaEnabled }}_asan_${{ parameters.asanEnabled }}
displayName: '${{ parameters.displayName }}'
pool:
vmImage: 'ubuntu-${{ parameters.ubuntuVersion }}'
steps:
- script: |
sudo apt-get update && sudo apt-get install -y \
build-essential \
ninja-build \
libboost-program-options-dev \
libboost-filesystem-dev \
libboost-graph-dev \
libboost-system-dev \
libboost-test-dev \
libeigen3-dev \
libceres-dev \
libfreeimage-dev \
libmetis-dev \
libgoogle-glog-dev \
libgflags-dev \
libglew-dev \
qtbase5-dev \
libqt5opengl5-dev \
libcgal-dev \
libcgal-qt5-dev \
libgl1-mesa-dri \
xvfb
displayName: 'Install dependencies'
- ${{ if eq(parameters.cudaEnabled, true) }}:
- script: |
sudo apt-get install -y \
nvidia-cuda-toolkit \
nvidia-cuda-toolkit-gcc
echo '##vso[task.setvariable variable=CC]/usr/bin/cuda-gcc'
echo '##vso[task.setvariable variable=CXX]/usr/bin/cuda-g++'
displayName: 'Install CUDA'
- ${{ if eq(parameters.asanEnabled, true) }}:
- script: |
sudo apt-get install -y clang-10
echo '##vso[task.setvariable variable=CC]/usr/bin/clang'
echo '##vso[task.setvariable variable=CXX]/usr/bin/clang++'
displayName: 'Install Clang'
- script: |
cmake --version
mkdir build
cd build
cmake .. \
-GNinja \
-DTESTS_ENABLED=ON \
-DCUDA_ARCHS=6.0 \
-DASAN_ENABLED=${{ parameters.asanEnabled }}
ninja
displayName: 'Configure and build'
- script: |
export DISPLAY=":99.0"
export QT_QPA_PLATFORM="offscreen"
Xvfb :99 &
sleep 3
cd build
ctest -E "(feature/sift_test)|(util/opengl_utils_test)|(mvs/gpu_mat_test)"
tests_pass=$?
if [ $tests_pass -ne 0 ]; then
echo "Tests failed, rerunning with verbose output"
ctest --rerun-failed --output-on-failure
fi
exit $tests_pass
displayName: 'Run tests'
17 changes: 17 additions & 0 deletions .azure-pipelines/build-windows-vcpkg.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
--triplet
x64-windows
boost-filesystem
boost-graph
boost-program-options
boost-regex
boost-system
boost-test
ceres[lapack,suitesparse]
cgal
eigen3
freeimage
metis
gflags
glew
glog
qt5-base
62 changes: 62 additions & 0 deletions .azure-pipelines/build-windows.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
parameters:
visualStudioVersion: '2019'

jobs:
- job: windows_build_${{ parameters.visualStudioVersion }}
displayName: 'Windows VS${{ parameters.visualStudioVersion }}'
timeoutInMinutes: 240
pool:
vmImage: 'windows-${{ parameters.visualStudioVersion }}'
variables:
vcpkgGitCommitId: 5cf60186a241e84e8232641ee973395d4fde90e1
steps:
- task: Cache@2
displayName: 'Cache vcpkg'
inputs:
key: $(Build.SourcesDirectory)/.azure-pipelines/build-windows-vcpkg.txt | "$(vcpkgGitCommitId)" | "$(Agent.OS)" | "${{ parameters.visualStudioVersion }}"
path: '$(Build.BinariesDirectory)/vcpkg'

- task: run-vcpkg@0
displayName: 'Run vcpkg'
inputs:
vcpkgArguments: '@$(Build.SourcesDirectory)/.azure-pipelines/build-windows-vcpkg.txt'
vcpkgGitCommitId: $(vcpkgGitCommitId)
vcpkgGitURL: https://github.com/microsoft/vcpkg

- pwsh: |
curl -L -o `
$(Build.BinariesDirectory)/ninja.zip `
https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-win.zip
Expand-Archive -LiteralPath $(Build.BinariesDirectory)/ninja.zip -DestinationPath $(Build.BinariesDirectory)
displayName: Prepare build
- task: run-cmake@0
displayName: 'Configure and build'
inputs:
cmakeListsOrSettingsJson: 'CMakeListsTxtAdvanced'
cmakeListsTxtPath: '$(Build.SourcesDirectory)/CMakeLists.txt'
cmakeBuildType: 'Release'
cmakeGenerator: 'Ninja'
cmakeAppendedArgs: -GNinja -DCMAKE_MAKE_PROGRAM=$(Build.BinariesDirectory)/ninja.exe -DCMAKE_BUILD_TYPE=Release -DTESTS_ENABLED=ON
useVcpkgToolchainFile: true

- pwsh: |
$env:PATH = "$(Build.BinariesDirectory)/vcpkg/installed/x64-windows/release/bin/;$env:Path"
ctest
$tests_pass=$LastExitCode
if ($tests_pass -ne 0) {
echo "`n`n`nTests failed, rerunning with verbose output"
ctest --rerun-failed --output-on-failure
}
exit $tests_pass
workingDirectory: $(Build.ArtifactStagingDirectory)
displayName: 'Run tests'
- pwsh: |
# Deleting a directory that breaks the caching of vcpkg.
# Could potentially be disabled again in future vcpkg versions.
$path = "$(Build.BinariesDirectory)/vcpkg/installed/x64-windows/tools/meson/test cases"
if (Test-Path $path) {
Remove-Item -Recurse -Force $path
}
displayName: 'Cleanup environment'
37 changes: 37 additions & 0 deletions .azure-pipelines/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
trigger:
- dev

jobs:
- template: build-windows.yaml
parameters:
visualStudioVersion: 2019
# Temporarily disabled, because of issue of compiling Eigen with VS2022.
# - template: build-windows.yaml
# parameters:
# visualStudioVersion: 2022
- template: build-ubuntu.yaml
parameters:
displayName: 'Ubuntu 18.04'
ubuntuVersion: 18.04
- template: build-ubuntu.yaml
parameters:
displayName: 'Ubuntu 20.04'
ubuntuVersion: 20.04
- template: build-ubuntu.yaml
parameters:
displayName: 'Ubuntu 20.04 (CUDA)'
ubuntuVersion: 20.04
cudaEnabled: true
- template: build-ubuntu.yaml
parameters:
displayName: 'Ubuntu 20.04 (ASan)'
ubuntuVersion: 20.04
asanEnabled: true
- template: build-mac.yaml
parameters:
displayName: 'Mac 10.15'
macVersion: 10.15
- template: build-mac.yaml
parameters:
displayName: 'Mac 11'
macVersion: 11
Loading

0 comments on commit 701b070

Please sign in to comment.