diff options
| -rw-r--r-- | .gitignore | 2 | ||||
| -rwxr-xr-x | .travis-upload.sh | 10 | ||||
| -rw-r--r-- | .travis.descriptor.json.in | 23 | ||||
| -rw-r--r-- | .travis.yml | 20 | ||||
| -rw-r--r-- | CMakeLists.txt | 5 | ||||
| -rw-r--r-- | appveyor.yml | 77 |
6 files changed, 86 insertions, 51 deletions
diff --git a/.gitignore b/.gitignore index ad8aea5da..ec74b0fa4 100644 --- a/.gitignore +++ b/.gitignore | |||
| @@ -4,10 +4,12 @@ doc-build/ | |||
| 4 | 4 | ||
| 5 | # Generated source files | 5 | # Generated source files |
| 6 | src/common/scm_rev.cpp | 6 | src/common/scm_rev.cpp |
| 7 | .travis.descriptor.json | ||
| 7 | 8 | ||
| 8 | # Project/editor files | 9 | # Project/editor files |
| 9 | *.swp | 10 | *.swp |
| 10 | .idea/ | 11 | .idea/ |
| 12 | .vscode/ | ||
| 11 | 13 | ||
| 12 | # *nix related | 14 | # *nix related |
| 13 | # Common convention for backup or temporary files | 15 | # Common convention for backup or temporary files |
diff --git a/.travis-upload.sh b/.travis-upload.sh index 2eeda4c50..9aed815d4 100755 --- a/.travis-upload.sh +++ b/.travis-upload.sh | |||
| @@ -1,17 +1,16 @@ | |||
| 1 | if [ "$TRAVIS_EVENT_TYPE" = "push" ]&&[ "$TRAVIS_BRANCH" = "master" ]; then | 1 | if [ "$TRAVIS_EVENT_TYPE" = "push" ]&&[ "$TRAVIS_BRANCH" = "master" ]; then |
| 2 | GITDATE="`git show -s --date=short --format='%ad' | sed 's/-//g'`" | 2 | GITDATE="`git show -s --date=short --format='%ad' | sed 's/-//g'`" |
| 3 | GITREV="`git show -s --format='%h'`" | 3 | GITREV="`git show -s --format='%h'`" |
| 4 | mkdir -p artifacts | ||
| 4 | 5 | ||
| 5 | if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then | 6 | if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then |
| 6 | REV_NAME="citra-${GITDATE}-${GITREV}-linux-amd64" | 7 | REV_NAME="citra-linux-${GITDATE}-${GITREV}" |
| 7 | UPLOAD_DIR="/citra/nightly/linux-amd64" | ||
| 8 | mkdir "$REV_NAME" | 8 | mkdir "$REV_NAME" |
| 9 | 9 | ||
| 10 | cp build/src/citra/citra "$REV_NAME" | 10 | cp build/src/citra/citra "$REV_NAME" |
| 11 | cp build/src/citra_qt/citra-qt "$REV_NAME" | 11 | cp build/src/citra_qt/citra-qt "$REV_NAME" |
| 12 | elif [ "$TRAVIS_OS_NAME" = "osx" ]; then | 12 | elif [ "$TRAVIS_OS_NAME" = "osx" ]; then |
| 13 | REV_NAME="citra-${GITDATE}-${GITREV}-osx-amd64" | 13 | REV_NAME="citra-osx-${GITDATE}-${GITREV}" |
| 14 | UPLOAD_DIR="/citra/nightly/osx-amd64" | ||
| 15 | mkdir "$REV_NAME" | 14 | mkdir "$REV_NAME" |
| 16 | 15 | ||
| 17 | cp build/src/citra/Release/citra "$REV_NAME" | 16 | cp build/src/citra/Release/citra "$REV_NAME" |
| @@ -121,4 +120,7 @@ EOL | |||
| 121 | 120 | ||
| 122 | ARCHIVE_NAME="${REV_NAME}.tar.xz" | 121 | ARCHIVE_NAME="${REV_NAME}.tar.xz" |
| 123 | tar -cJvf "$ARCHIVE_NAME" "$REV_NAME" | 122 | tar -cJvf "$ARCHIVE_NAME" "$REV_NAME" |
| 123 | |||
| 124 | # move the compiled archive into the artifacts directory to be uploaded by travis releases | ||
| 125 | mv "$ARCHIVE_NAME" artifacts/ | ||
| 124 | fi | 126 | fi |
diff --git a/.travis.descriptor.json.in b/.travis.descriptor.json.in new file mode 100644 index 000000000..fac2eee93 --- /dev/null +++ b/.travis.descriptor.json.in | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | { | ||
| 2 | "package": { | ||
| 3 | "name": "nightly", | ||
| 4 | "repo": "citra", | ||
| 5 | "subject": "citra-emu", | ||
| 6 | "desc": "Build created on @BUILD_DATE@", | ||
| 7 | "website_url": "www.citra-emu.org", | ||
| 8 | "public_download_numbers": false, | ||
| 9 | "public_stats": false | ||
| 10 | }, | ||
| 11 | "version": { | ||
| 12 | "name": "nightly-@GIT_REV@", | ||
| 13 | "released": "@BUILD_DATE@", | ||
| 14 | "gpgSign": false | ||
| 15 | }, | ||
| 16 | "files": [ | ||
| 17 | { | ||
| 18 | "includePattern": "artifacts/(.*\\.tar.xz)", | ||
| 19 | "uploadPattern": "$1" | ||
| 20 | } | ||
| 21 | ], | ||
| 22 | "publish": true | ||
| 23 | } | ||
diff --git a/.travis.yml b/.travis.yml index cc34e039c..8b43d6439 100644 --- a/.travis.yml +++ b/.travis.yml | |||
| @@ -1,5 +1,4 @@ | |||
| 1 | language: cpp | 1 | language: cpp |
| 2 | |||
| 3 | matrix: | 2 | matrix: |
| 4 | include: | 3 | include: |
| 5 | - os: linux | 4 | - os: linux |
| @@ -9,10 +8,6 @@ matrix: | |||
| 9 | sudo: false | 8 | sudo: false |
| 10 | osx_image: xcode7.3 | 9 | osx_image: xcode7.3 |
| 11 | 10 | ||
| 12 | env: | ||
| 13 | global: | ||
| 14 | - secure: "AXHFIafTmbGDsHD3mUVj5a4I397DQjti/WoqAJGUp2PglxTcc04BwxZ9Z+xLuf5N2Hs5r9ojAJLT8OGxJCLBDXzneQTNSqXbFuYSLbqrEAiIRlA9eRIotWCg+wYcO+5e8MKX+cHVKwiIWasUB21AtCdq6msh6Y3pUshZp212VPg=" | ||
| 15 | |||
| 16 | addons: | 11 | addons: |
| 17 | apt: | 12 | apt: |
| 18 | sources: | 13 | sources: |
| @@ -27,8 +22,15 @@ addons: | |||
| 27 | 22 | ||
| 28 | cache: | 23 | cache: |
| 29 | directories: | 24 | directories: |
| 30 | - $HOME/.local | 25 | - "$HOME/.local" |
| 26 | |||
| 27 | install: "./.travis-deps.sh" | ||
| 28 | script: "./.travis-build.sh" | ||
| 29 | after_success: "./.travis-upload.sh" | ||
| 31 | 30 | ||
| 32 | install: ./.travis-deps.sh | 31 | deploy: |
| 33 | script: ./.travis-build.sh | 32 | provider: bintray |
| 34 | after_success: ./.travis-upload.sh | 33 | file: "${HOME}/build/${TRAVIS_REPO_SLUG}/.travis.descriptor.json" |
| 34 | user: citra-emu | ||
| 35 | key: | ||
| 36 | secure: "MADIMRKlcr+O2iCmavkbIvUWexopOhnzXuDHKXfGyGY93Im8NCTrbb3tDoLH+bRYQrjNCeaV36ffhpDULU+eH11L4yF5/KY4modEKW4sq3cnAJkm5DUOc/sujlRCwzfjg6NFZGhjxfSlt0ltKRdCKEB/j1vR2GD7d/eQ4diJukQ=" \ No newline at end of file | ||
diff --git a/CMakeLists.txt b/CMakeLists.txt index 52a1fd492..e232d99a4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
| @@ -253,6 +253,11 @@ get_git_head_revision(GIT_REF_SPEC GIT_REV) | |||
| 253 | git_describe(GIT_DESC --always --long --dirty) | 253 | git_describe(GIT_DESC --always --long --dirty) |
| 254 | git_branch_name(GIT_BRANCH) | 254 | git_branch_name(GIT_BRANCH) |
| 255 | 255 | ||
| 256 | # configure the bintray travis release json | ||
| 257 | string(TIMESTAMP BUILD_DATE "%Y-%m-%d") | ||
| 258 | configure_file("${CMAKE_SOURCE_DIR}/.travis.descriptor.json.in" "${CMAKE_SOURCE_DIR}/.travis.descriptor.json" @ONLY) | ||
| 259 | unset(BUILD_DATE) | ||
| 260 | |||
| 256 | set(INI_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/externals/inih") | 261 | set(INI_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/externals/inih") |
| 257 | include_directories(${INI_PREFIX}) | 262 | include_directories(${INI_PREFIX}) |
| 258 | add_subdirectory(${INI_PREFIX}) | 263 | add_subdirectory(${INI_PREFIX}) |
diff --git a/appveyor.yml b/appveyor.yml index 0ffb680ff..8a4d1b0da 100644 --- a/appveyor.yml +++ b/appveyor.yml | |||
| @@ -1,9 +1,8 @@ | |||
| 1 | # shallow clone | 1 | # shallow clone |
| 2 | clone_depth: 5 | 2 | clone_depth: 10 |
| 3 | 3 | ||
| 4 | environment: | 4 | # don't build on tag |
| 5 | BUILD_PASSWORD: | 5 | skip_tags: true |
| 6 | secure: EXGNlWKJsCtbeImEJ5EP9qrxZ+EqUFfNy+CP61nDOMA= | ||
| 7 | 6 | ||
| 8 | cache: | 7 | cache: |
| 9 | - C:\ProgramData\chocolatey\bin -> appveyor.yml | 8 | - C:\ProgramData\chocolatey\bin -> appveyor.yml |
| @@ -30,42 +29,44 @@ build: | |||
| 30 | project: build/citra.sln | 29 | project: build/citra.sln |
| 31 | parallel: true | 30 | parallel: true |
| 32 | 31 | ||
| 33 | test_script: | 32 | after_build: |
| 34 | - cd build && ctest -VV -C Release && cd .. | 33 | - ps: | |
| 35 | 34 | $GITDATE = $(git show -s --date=short --format='%ad') -replace "-","" | |
| 36 | on_success: | 35 | $GITREV = $(git show -s --format='%h') |
| 37 | # copying the needed QT Dlls is now done post build. See the CMakeLists.txt file in the citra-qt folder | 36 | # Where are these spaces coming from? Regardless, let's remove them |
| 38 | - ps: > | 37 | $MSVC_BUILD_NAME = "citra-windows-msvc-$GITDATE-$GITREV.zip" -replace " ", "" |
| 39 | if (!"$env:APPVEYOR_PULL_REQUEST_TITLE" -and ("$env:APPVEYOR_REPO_BRANCH" -eq "master")) | 38 | $MSVC_BUILD_PDB = "citra-windows-msvc-$GITDATE-$GITREV-debugsymbols.zip" -replace " ", "" |
| 40 | { | 39 | $BINTRAY_VERSION = "nightly-$GITREV" -replace " ", "" |
| 41 | $GITDATE = $(git show -s --date=short --format='%ad') -replace "-","" | ||
| 42 | $GITREV = $(git show -s --format='%h') | ||
| 43 | # Where are these spaces coming from? Regardless, let's remove them | ||
| 44 | $BUILD_NAME = "citra-${GITDATE}-${GITREV}-windows-amd64.7z" -replace " ","" | ||
| 45 | $BUILD_NAME_PDB = "citra-${GITDATE}-${GITREV}-windows-amd64-debugsymbols.7z" -replace " ","" | ||
| 46 | $BUILD_NAME_NOQT = "citra-noqt-${GITDATE}-${GITREV}-windows-amd64.7z" -replace " ","" | ||
| 47 | 40 | ||
| 48 | # Remove unnecessary files | 41 | # set the build names as env vars so the artifacts can upload them |
| 49 | rm .\build\bin\release\*tests* | 42 | $env:MSVC_BUILD_NAME = $MSVC_BUILD_NAME |
| 43 | $env:MSVC_BUILD_PDB = $MSVC_BUILD_PDB | ||
| 44 | $env:BINTRAY_VERSION = $BINTRAY_VERSION | ||
| 50 | 45 | ||
| 51 | # Put the pdb files in a separate archive and remove them from the main download | 46 | 7z a -tzip $MSVC_BUILD_PDB .\build\bin\release\*.pdb |
| 52 | 7z a $BUILD_NAME_PDB .\build\bin\release\*.pdb | 47 | rm .\build\bin\release\*.pdb |
| 53 | rm .\build\bin\release\*.pdb | 48 | 7z a -tzip $MSVC_BUILD_NAME .\build\bin\release\* .\license.txt .\README.md |
| 54 | 49 | ||
| 55 | # Zip up the build folder and documentation | 50 | test_script: |
| 56 | 7z a $BUILD_NAME .\build\bin\release\* .\license.txt .\README.md | 51 | - cd build && ctest -VV -C Release && cd .. |
| 57 | # Do a second archive with only the binaries (excludes dlls) and documentation | ||
| 58 | 7z a $BUILD_NAME_NOQT .\build\bin\release\*.exe .\license.txt .\README.md | ||
| 59 | 52 | ||
| 53 | artifacts: | ||
| 54 | - path: $(MSVC_BUILD_NAME) | ||
| 55 | name: msvcbuild | ||
| 56 | type: zip | ||
| 57 | - path: $(MSVC_BUILD_PDB) | ||
| 58 | name: msvcdebug | ||
| 59 | type: zip | ||
| 60 | 60 | ||
| 61 | # Download WinSCP and upload to server | 61 | deploy: |
| 62 | choco install winscp.portable | 62 | - provider: BinTray |
| 63 | WinSCP.exe /command ` | 63 | username: citra-emu |
| 64 | "option batch abort" ` | 64 | api_key: |
| 65 | "option confirm off" ` | 65 | secure: qaZZfXp5Vv9xw5EmCxKLhGnNYhiNMDCdP84l0+h6HetfmvFlvHxyohWEVokLjl7d |
| 66 | "open sftp://citra-builds:${env:BUILD_PASSWORD}@builds.citra-emu.org -hostkey=*" ` | 66 | subject: citra-emu |
| 67 | "put $BUILD_NAME /citra/nightly/windows-amd64/" ` | 67 | repo: citra |
| 68 | "put $BUILD_NAME_NOQT /citra/nightly/windows-noqt-amd64/" ` | 68 | package: nightly |
| 69 | "put $BUILD_NAME_PDB /citra/nightly/windows-amd64-debugsymbols/" ` | 69 | version: $(BINTRAY_VERSION) |
| 70 | "exit" | 70 | publish: true |
| 71 | } | 71 | on: |
| 72 | branch: master | ||