Attention une mise à jour du service Gitlab va être effectuée le mardi 30 novembre entre 17h30 et 18h00. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes. Cette mise à jour intermédiaire en version 14.0.12 nous permettra de rapidement pouvoir mettre à votre disposition une version plus récente.

.appveyor.yml 2.77 KB
Newer Older
Laurent Belcour's avatar
Laurent Belcour committed
1
os:
2
  - Visual Studio 2017
Laurent Belcour's avatar
Laurent Belcour committed
3 4 5 6

build:
  verbosity: detailed

7 8 9 10 11 12 13 14
environment:
  matrix:
    - builder: cmake
    - builder: scons

init:
  - call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64

Laurent Belcour's avatar
Laurent Belcour committed
15 16 17 18
install:
  - SET "PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"
  - python --version
  - python -m ensurepip
19 20 21
  - pip install -U setuptools
  - pip install -U wheel
  - pip install scons==2.4.1
Laurent Belcour's avatar
Laurent Belcour committed
22
  - cinst nsis.portable
23 24 25 26 27 28
  - hg clone https://bitbucket.org/eigen/eigen external\eigen3
  - cd external\eigen3
  - mkdir build & cd build
  - cmake .. -DCMAKE_INSTALL_PREFIX="..\..\build" -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles"
  - nmake install
  - cd ..\..\..\
Laurent Belcour's avatar
Laurent Belcour committed
29 30

before_build:
31
  # BOOST Python require x86 compilation
32
  #- call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
33
  #- call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
Laurent Belcour's avatar
Laurent Belcour committed
34

35 36
# Build script
#
Laurent Belcour's avatar
Laurent Belcour committed
37
build_script:
38
   # Build first time
Laurent Belcour's avatar
Laurent Belcour committed
39 40 41
  - git submodule init
  - git submodule update

42
  # Build externals
43 44 45 46
  # First we need to build ALTA to get Eigen
  #- dir C:\Python27\libs
  #- dir C:\Libraries\boost_1_63_0
  #- dir C:\Libraries\boost_1_63_0\lib64-msvc-14.0
47 48 49 50
  - if "%builder%" == "scons" (
       scons --cfg=./configs/scons/config-windows-appveyor.py &
       appveyor PushArtifact config.log
    )
Laurent Belcour's avatar
Laurent Belcour committed
51

52
  # Install CERES
53 54 55 56 57 58 59 60
  - cd external
  - git clone https://ceres-solver.googlesource.com/ceres-solver
  - cd ceres-solver
  - mkdir build-ceres
  - cd build-ceres
  - cmake .. -DBUILD_SHARED_LIBS=ON -DMINIGLOG=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX="..\..\build" -DEIGEN_INCLUDE_DIR="..\..\build\include" -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles"
  - nmake install
  - cd ..\..\..
Laurent Belcour's avatar
Laurent Belcour committed
61

62
  # Rebuild with CERES and Python
63 64 65 66 67 68 69 70 71 72
  - if "%builder%" == "scons" (
      scons --cfg=./configs/scons/config-windows-appveyor.py &
      appveyor PushArtifact config.log
    ) else (
      mkdir build &
      cd build &
      cmake .. -DEIGEN3_INCLUDE_DIR="external/build/include/eigen3" -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles" &
      nmake &
      cd ..
    )
Laurent Belcour's avatar
Laurent Belcour committed
73

74
  # Generate product
Laurent Belcour's avatar
Laurent Belcour committed
75 76
  - makensis sources\scripts\installer.nsi
  - appveyor PushArtifact sources\scripts\ALTA.exe
77 78 79 80 81


# Perform custom tests
#
test_script:
82
  - ./setpath.bat
83 84
  - if "%builder%" == "scons" (
      scons --cfg=./configs/scons/config-windows-appveyor.py tests
85
      appveoyr PushArtifact build\sources\tests\*.log
86 87 88
    ) else
      cd build &
      nmake test &
89
      appveyor PushArtifact Testing\Temporary\LastTest.log &
90 91
      cd ..
    )
92

93 94 95

# Outputed files
#
96 97 98 99
artifacts:
   - path: sources\scripts\ALTA.exe
     name: ALTA
   - path: config.log
100 101 102 103 104 105
     name: SconsLog
   - path: 'build\sources\tests\*.log'
     name: SConsTestsLog
     type: zip
   - path: build\Testing\Temporary\LastTest.log
     name: CMakeTestsLog