--- version: 0.6.4-{build} configuration: Release image: Visual Studio 2017 platform: x64 environment: BINTRAY_APIKEY: secure: "iGl5mzE9/ta9kFELUxDw9XtlYMSCMai9xowXIkYzU8WKHz7NfW0mLwMJZvblZFXJ" cache: - c:\tools\vcpkg\installed\ -> appveyor.yml - .deps -> deps\CMakeLists.txt, appveyor.yml build: verbosity: minimal install: - set QT_DIR=C:\Qt\5.10.1\msvc2017_64 - set PATH=%PATH%;%QT_DIR%\bin;C:\MinGW\bin - set PATH=%PATH%;C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" - cd "C:\Tools\vcpkg"&& git pull && .\bootstrap-vcpkg.bat && cd %APPVEYOR_BUILD_FOLDER% - vcpkg install nlohmann-json:%PLATFORM%-windows boost-asio:%PLATFORM%-windows boost-beast:%PLATFORM%-windows boost-iostreams:%PLATFORM%-windows boost-random:%PLATFORM%-windows boost-signals2:%PLATFORM%-windows boost-system:%PLATFORM%-windows boost-thread:%PLATFORM%-windows libsodium:%PLATFORM%-windows lmdb:%PLATFORM%-windows openssl:%PLATFORM%-windows zlib:%PLATFORM%-windows - vcpkg upgrade --no-dry-run build_script: # VERSION format: branch-master/branch-1.2 # INSTVERSION format: x.y.z # WINVERSION format: 9999.0.0.123/1.2.0.234 - if "%APPVEYOR_REPO_TAG%"=="false" set INSTVERSION=0.6.4 - if "%APPVEYOR_REPO_TAG%"=="false" set VERSION=0.6.4 - if "%APPVEYOR_REPO_TAG%"=="false" if "%APPVEYOR_REPO_BRANCH%"=="master" set INSTVERSION=9999.0 - if "%APPVEYOR_REPO_TAG%"=="false" set WINVERSION=%INSTVERSION%.0.%APPVEYOR_BUILD_NUMBER% # VERSION format: v1.2.3/v1.3.4 # INSTVERSION format: 1.2.3/1.3.4 # WINVERSION format: 1.2.3.123/1.3.4.234 - if "%APPVEYOR_REPO_TAG%"=="true" set VERSION=%APPVEYOR_REPO_TAG_NAME% - if "%APPVEYOR_REPO_TAG%"=="true" set INSTVERSION=%VERSION:~1% - if "%APPVEYOR_REPO_TAG%"=="true" set WINVERSION=%VERSION:~1%.%APPVEYOR_BUILD_NUMBER% - set DATE=%date:~10,4%-%date:~4,2%-%date:~7,2% - echo %VERSION% - echo %INSTVERSION% - echo %DATE% # Build & install the dependencies - cmake -G "Visual Studio 15 2017 Win64" -Hdeps -B.deps -DCMAKE_TOOLCHAIN_FILE=C:/Tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DUSE_BUNDLED_BOOST=OFF -DUSE_BUNDLED_JSON=OFF -DMTX_STATIC=ON - cmake --build .deps --config Release # Build nheko - rm -f cmake/FindOlm.cmake - cmake -G "Visual Studio 15 2017 Win64" -H. -Bbuild -DCMAKE_TOOLCHAIN_FILE=C:/Tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DLMDBXX_INCLUDE_DIR=.deps/usr/include -DTWEENY_INCLUDE_DIR=.deps/usr/include -DCMARK_INCLUDE_DIR=C:/projects/nheko/.deps/usr/include -DCMARK_LIBRARY=C:/projects/nheko/.deps/usr/lib/cmark.lib -DJSON_INCLUDE_DIR=.deps/usr/include - cmake --build build --config Release after_build: # Variables - set BUILD=%APPVEYOR_BUILD_FOLDER% - echo %BUILD% - mkdir NhekoRelease - copy build\Release\nheko.exe NhekoRelease\nheko.exe - windeployqt --qmldir %QT_DIR%\qml\ --release NhekoRelease\nheko.exe - copy C:\Tools\vcpkg\installed\x64-windows\lib\*.lib .\NhekoRelease\ - copy C:\Tools\vcpkg\installed\x64-windows\bin\*.dll .\NhekoRelease\ - copy C:\projects\nheko\.deps\usr\lib\cmark.lib .\NhekoRelease\ - copy C:\projects\nheko\.deps\usr\bin\cmark.dll .\NhekoRelease\ - 7z a nheko_win_64.zip .\NhekoRelease\* - ls -lh build\Release\ - ls -lh NhekoRelease\ - mkdir NhekoData - xcopy .\NhekoRelease\*.* NhekoData\*.* /s /e /c /y # # Create the Qt Installer Framework version # - mkdir installer - mkdir installer\config - mkdir installer\packages - mkdir installer\packages\com.mujx.nheko - mkdir installer\packages\com.mujx.nheko\data - mkdir installer\packages\com.mujx.nheko\meta - mkdir installer\packages\com.mujx.nheko.cleanup\meta # Copy installer data - copy %BUILD%\resources\nheko.ico installer\config - copy %BUILD%\resources\nheko.png installer\config - copy %BUILD%\COPYING installer\packages\com.mujx.nheko\meta\license.txt - copy %BUILD%\COPYING installer\packages\com.mujx.nheko.cleanup\meta\license.txt - copy %BUILD%\deploy\installer\config.xml installer\config - copy %BUILD%\deploy\installer\controlscript.qs installer\config - copy %BUILD%\deploy\installer\uninstall.qs installer\packages\com.mujx.nheko\data - copy %BUILD%\deploy\installer\gui\package.xml installer\packages\com.mujx.nheko\meta - copy %BUILD%\deploy\installer\gui\installscript.qs installer\packages\com.mujx.nheko\meta - copy %BUILD%\deploy\installer\cleanup\package.xml installer\packages\com.mujx.nheko.cleanup\meta - copy %BUILD%\deploy\installer\cleanup\installscript.qs installer\packages\com.mujx.nheko.cleanup\meta # Amend version and date - sed -i "s/__VERSION__/0.6.4/" installer\config\config.xml - sed -i "s/__VERSION__/0.6.4/" installer\packages\com.mujx.nheko\meta\package.xml - sed -i "s/__VERSION__/0.6.4/" installer\packages\com.mujx.nheko.cleanup\meta\package.xml - sed -i "s/__DATE__/%DATE%/" installer\packages\com.mujx.nheko\meta\package.xml - sed -i "s/__DATE__/%DATE%/" installer\packages\com.mujx.nheko.cleanup\meta\package.xml # Copy nheko data - xcopy NhekoData\*.* installer\packages\com.mujx.nheko\data\*.* /s /e /c /y - move NhekoRelease\nheko.exe installer\packages\com.mujx.nheko\data - mkdir tools - curl -L -O https://download.qt.io/official_releases/qt-installer-framework/3.0.4/QtInstallerFramework-win-x86.exe - 7z x QtInstallerFramework-win-x86.exe -otools -aoa - set PATH=%BUILD%\tools\bin;%PATH% - binarycreator.exe -f -c installer\config\config.xml -p installer\packages nheko-installer.exe - mv nheko-installer.exe nheko-%APPVEYOR_REPO_TAG_NAME%-installer.exe on_success: - if "%APPVEYOR_REPO_TAG%" == "true" (curl -T nheko-%APPVEYOR_REPO_TAG_NAME%-installer.exe -uredsky17:%BINTRAY_APIKEY% https://api.bintray.com/content/nheko-reborn/nheko/%APPVEYOR_REPO_TAG_NAME%/nheko/%APPVEYOR_REPO_TAG_NAME%/) deploy: - description: "Development builds" provider: GitHub auth_token: secure: "ShStWeqp+TkYqJPQr7uFZb+B8ZTgC7Iwth+IkhjfRDCTLhy8gtWvlPzlQilder3E" artifact: nheko-${APPVEYOR_REPO_TAG_NAME}-installer.exe force_update: true prerelease: true on: appveyor_repo_tag: true - provider: S3 access_key_id: ${AWS_ACCESS_KEY} secret_access_key: ${AWS_SECRET_KEY} bucket: ${AWS_BUCKET_NAME} region: ${AWS_DEFAULT_REGION} set_public: true artifact: nheko-$(APPVEYOR_REPO_TAG_NAME)-installer.exe, nheko_win_64.zip artifacts: - path: nheko_win_64.zip - path: nheko-$(APPVEYOR_REPO_TAG_NAME)-installer.exe