diff --git a/.appveyor.yml b/.appveyor.yml index 008636fbd68ac6c8d458f01de918c0a179249e38..81ef526123df12e48705d45da1a643ffa0151264 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -7,8 +7,10 @@ environment: matrix: # - BUILD: 'Debug' # CONFIG: debug +# SHADOW_BUILD_DIR: $(APPVEYOR_BUILD_FOLDER)\build_windows_debug - BUILD: 'Release' CONFIG: installer + SHADOW_BUILD_DIR: $(APPVEYOR_BUILD_FOLDER)\build_windows_install install: - git submodule update --init --recursive @@ -18,14 +20,14 @@ install: - if "%CONFIG%" EQU "installer" ( cinst nsis -y -installArgs /D="%programfiles(x86)%\NSIS" ) build_script: - - C:\Qt\5.5\msvc2013\bin\qmake -r CONFIG-=debug_and_release CONFIG+=%CONFIG% CONFIG+=WarningsAsErrorsOn qgroundcontrol.pro - - jom + - mkdir %SHADOW_BUILD_DIR% && cd %SHADOW_BUILD_DIR% && C:\Qt\5.5\msvc2013\bin\qmake -r CONFIG-=debug_and_release CONFIG+=%CONFIG% CONFIG+=WarningsAsErrorsOn %APPVEYOR_BUILD_FOLDER%\qgroundcontrol.pro + - cd %SHADOW_BUILD_DIR% && jom test_script: - - if "%CONFIG%" EQU "debug" ( debug\qgroundcontrol --unittest ) + - if "%CONFIG%" EQU "debug" ( %SHADOW_BUILD_DIR%\debug\qgroundcontrol --unittest ) artifacts: - - path: 'release\qgroundcontrol-installer.exe' + - path: '%SHADOW_BUILD_DIR%\release\qgroundcontrol-installer.exe' name: s3 deploy: @@ -37,11 +39,11 @@ deploy: bucket: qgroundcontrol set_public: true folder: $(APPVEYOR_REPO_BRANCH) - artifact: 'release\qgroundcontrol-installer.exe' + artifact: '$(SHADOW_BUILD_DIR)\release\qgroundcontrol-installer.exe' on: CONFIG: installer - provider: GitHub - artifact: 'release\qgroundcontrol-installer.exe' + artifact: '$(SHADOW_BUILD_DIR)\release\qgroundcontrol-installer.exe' draft: false prerelease: false on: diff --git a/.travis.yml b/.travis.yml index 3a8537ddac4a61f62bab55b78110901c01021b8e..5e6c7ec54909d6b7c07c9e43e8d38ef1078f552b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,24 +12,24 @@ matrix: fast_finish: true include: - os: linux - env: SPEC=linux-g++-64 CONFIG=debug + env: SPEC=linux-g++-64 CONFIG=debug SHADOW_BUILD_DIR=/tmp/build_linux_debug sudo: false - os: linux - env: SPEC=linux-g++-64 CONFIG=installer + env: SPEC=linux-g++-64 CONFIG=installer SHADOW_BUILD_DIR=/tmp/build_linux_install sudo: false - os: osx osx_image: xcode7 - env: SPEC=macx-clang CONFIG=debug QT_FATAL_WARNINGS=1 + env: SPEC=macx-clang CONFIG=debug QT_FATAL_WARNINGS=1 SHADOW_BUILD_DIR=/tmp/build_macos_debug - os: osx osx_image: xcode7 - env: SPEC=macx-clang CONFIG=installer + env: SPEC=macx-clang CONFIG=installer SHADOW_BUILD_DIR=/tmp/build_macos_install # - os: android # language: android -# env: SPEC=android-g++ CONFIG=debug +# env: SPEC=android-g++ CONFIG=debug SHADOW_BUILD_DIR=/tmp/build_android_debug # sudo: false - os: android language: android - env: SPEC=android-g++ CONFIG=installer + env: SPEC=android-g++ CONFIG=installer SHADOW_BUILD_DIR=/tmp/build_android_install sudo: false - os: linux env: CONFIG=doxygen @@ -109,22 +109,22 @@ before_script: - ln -s /usr/bin/ccache ~/bin/gcc-4.8 - export PATH=~/bin:$PATH - if [[ "${TRAVIS_OS_NAME}" = "android" && "${CONFIG}" = "installer" && -z ${ANDROID_STOREPASS} ]]; then export CONFIG=release; fi - - if [ "${CONFIG}" != "doxygen" ]; then qmake -r qgroundcontrol.pro CONFIG+=${CONFIG} CONFIG+=WarningsAsErrorsOn -spec ${SPEC}; fi + - if [ "${CONFIG}" != "doxygen" ]; then mkdir $(SHADOW_BUILD_DIR} && cd $(SHADOW_BUILD_DIR} && qmake -r ${TRAVIS_BUILD_DIR}/qgroundcontrol.pro CONFIG+=${CONFIG} CONFIG+=WarningsAsErrorsOn -spec ${SPEC}; fi script: - - ./tools/update_android_version.sh + - ${TRAVIS_BUILD_DIR}/tools/update_android_version.sh - echo 'Building QGroundControl' && echo -en 'travis_fold:start:script.1\\r' - - if [ "${CONFIG}" != "doxygen" ]; then make -j4; fi - - if [ "${CONFIG}" = "doxygen" ]; then cd src && doxygen documentation.dox; fi + - if [ "${CONFIG}" != "doxygen" ]; then cd $(SHADOW_BUILD_DIR} && make -j4; fi + - if [ "${CONFIG}" = "doxygen" ]; then cd ${TRAVIS_BUILD_DIR}/src && doxygen documentation.dox; fi - echo -en 'travis_fold:end:script.1\\r' - - if [[ "${TRAVIS_OS_NAME}" = "linux" && "${CONFIG}" = "debug" ]]; then ./debug/qgroundcontrol --unittest; fi - - if [[ "${TRAVIS_OS_NAME}" = "osx" && "${CONFIG}" = "debug" ]]; then ./debug/qgroundcontrol.app/Contents/MacOS/qgroundcontrol --unittest; fi + - if [[ "${TRAVIS_OS_NAME}" = "linux" && "${CONFIG}" = "debug" ]]; then $(SHADOW_BUILD_DIR}/debug/qgroundcontrol --unittest; fi + - if [[ "${TRAVIS_OS_NAME}" = "osx" && "${CONFIG}" = "debug" ]]; then $(SHADOW_BUILD_DIR}/debug/qgroundcontrol.app/Contents/MacOS/qgroundcontrol --unittest; fi after_success: - if [[ "${TRAVIS_OS_NAME}" = "android" && "${TRAVIS_PULL_REQUEST}" = "false" && "${TRAVIS_BRANCH}" = "master" ]]; then pip install --user google-api-python-client PyOpenSSL && openssl aes-256-cbc -K $encrypted_25db6eb7c3fd_key -iv $encrypted_25db6eb7c3fd_iv -in Google_Play_Android_Developer-bb93ae7d61ca.p12.enc -out android/Google_Play_Android_Developer-bb93ae7d61ca.p12 -d - && ./tools/google_play_upload.py org.mavlink.qgroundcontrol release/package/qgroundcontrol.apk + && ${TRAVIS_BUILD_DIR}/tools/google_play_upload.py org.mavlink.qgroundcontrol $(SHADOW_BUILD_DIR}/release/package/qgroundcontrol.apk ; fi @@ -134,7 +134,7 @@ deploy: secret_access_key: secure: BsLXeXUPsCJdX4tawrDnO8OFK5Hk4kzlDTiyH93En6TbjUargVAWDMcHVj7TUhr7+3Tao1W1zb0G4SJe9kHv+jrky0yE72KvoG3YAON0VXWKizxBAKkgHE2RxSTNAwDeKbi2G6YJfNDescBBfX7zEohShdXglQu7CGaUQKRaiI4= bucket: qgroundcontrol - local_dir: release/package + local_dir: $(SHADOW_BUILD_DIR}/release/package upload-dir: ${TRAVIS_BRANCH} acl: public_read skip_cleanup: true @@ -145,9 +145,9 @@ deploy: api-key: secure: K/Zqr/FCC7QvzFxYvBtCinPkacQq2ubJ2qm982+38Zf/KjibVOF1dEbVdrGZmII6Tg5DaQzNXGYkg5PvYmJgT9xRsqeQjeYIUYqYZpAt+HYWA38AVfMU8jip/1P1wmwqD469nzJOBBa8yfsMs6Ca7tBaNl/zTxCRGnAgEzqtkdQ= file: - - release/package/qgroundcontrol.apk - - release/package/qgroundcontrol.dmg - - release/package/qgroundcontrol.tar.bz2 + - $(SHADOW_BUILD_DIR}/release/package/qgroundcontrol.apk + - $(SHADOW_BUILD_DIR}/release/package/qgroundcontrol.dmg + - $(SHADOW_BUILD_DIR}/release/package/qgroundcontrol.tar.bz2 skip_cleanup: true on: tags: true