summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rwxr-xr-x.travis-upload.sh10
-rw-r--r--.travis.descriptor.json.in23
-rw-r--r--.travis.yml20
-rw-r--r--CMakeLists.txt5
-rw-r--r--appveyor.yml77
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
6src/common/scm_rev.cpp 6src/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 @@
1if [ "$TRAVIS_EVENT_TYPE" = "push" ]&&[ "$TRAVIS_BRANCH" = "master" ]; then 1if [ "$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/
124fi 126fi
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 @@
1language: cpp 1language: cpp
2
3matrix: 2matrix:
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
12env:
13 global:
14 - secure: "AXHFIafTmbGDsHD3mUVj5a4I397DQjti/WoqAJGUp2PglxTcc04BwxZ9Z+xLuf5N2Hs5r9ojAJLT8OGxJCLBDXzneQTNSqXbFuYSLbqrEAiIRlA9eRIotWCg+wYcO+5e8MKX+cHVKwiIWasUB21AtCdq6msh6Y3pUshZp212VPg="
15
16addons: 11addons:
17 apt: 12 apt:
18 sources: 13 sources:
@@ -27,8 +22,15 @@ addons:
27 22
28cache: 23cache:
29 directories: 24 directories:
30 - $HOME/.local 25 - "$HOME/.local"
26
27install: "./.travis-deps.sh"
28script: "./.travis-build.sh"
29after_success: "./.travis-upload.sh"
31 30
32install: ./.travis-deps.sh 31deploy:
33script: ./.travis-build.sh 32 provider: bintray
34after_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)
253git_describe(GIT_DESC --always --long --dirty) 253git_describe(GIT_DESC --always --long --dirty)
254git_branch_name(GIT_BRANCH) 254git_branch_name(GIT_BRANCH)
255 255
256# configure the bintray travis release json
257string(TIMESTAMP BUILD_DATE "%Y-%m-%d")
258configure_file("${CMAKE_SOURCE_DIR}/.travis.descriptor.json.in" "${CMAKE_SOURCE_DIR}/.travis.descriptor.json" @ONLY)
259unset(BUILD_DATE)
260
256set(INI_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/externals/inih") 261set(INI_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/externals/inih")
257include_directories(${INI_PREFIX}) 262include_directories(${INI_PREFIX})
258add_subdirectory(${INI_PREFIX}) 263add_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
2clone_depth: 5 2clone_depth: 10
3 3
4environment: 4# don't build on tag
5 BUILD_PASSWORD: 5skip_tags: true
6 secure: EXGNlWKJsCtbeImEJ5EP9qrxZ+EqUFfNy+CP61nDOMA=
7 6
8cache: 7cache:
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
33test_script: 32after_build:
34 - cd build && ctest -VV -C Release && cd .. 33 - ps: |
35 34 $GITDATE = $(git show -s --date=short --format='%ad') -replace "-",""
36on_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 50test_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
53artifacts:
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 61deploy:
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