mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-13 05:20:45 +00:00
Switch from travis/appveyor to github actions for CI
This commit is contained in:
@@ -0,0 +1,304 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- v1.x
|
||||
- ci-test
|
||||
pull_request:
|
||||
branches:
|
||||
- v1.x
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
||||
jobs:
|
||||
commit-msg:
|
||||
name: Commit message check
|
||||
runs-on: ubuntu-18.04
|
||||
strategy:
|
||||
fail-fast: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 100
|
||||
- name: Check commit messages
|
||||
run: |
|
||||
if git log --oneline | tail -n +2 | head -n 100 | cut -d ' ' -f2- | grep -q '.\{73\}'; then
|
||||
(echo -n "::error::";
|
||||
echo "Some commit message summary lines are too long. See CONTRIBUTING.md for more information.";
|
||||
echo "Invalid commits:";
|
||||
echo;
|
||||
git log --oneline | tail -n +2 | head -n 100 | cut -d ' ' -f2- | grep '.\{73\}';) | tr '\n' '\001' | sed -e 's#\x01#%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
clang-format:
|
||||
name: Code formatting check
|
||||
runs-on: ubuntu-18.04
|
||||
strategy:
|
||||
fail-fast: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 5
|
||||
- name: Add LLVM apt repository
|
||||
run: |
|
||||
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
sudo add-apt-repository -y 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.8 main'
|
||||
- name: Install clang-format-3.8
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -y -qq clang-format-3.8
|
||||
- name: Run clang-format-3.8
|
||||
run: |
|
||||
. ./util/clang_format_all.sh
|
||||
git clean -f
|
||||
- name: Check formatting
|
||||
run: |
|
||||
git diff --quiet || (
|
||||
(echo -n "::error::";
|
||||
echo "clang-format issues were found. See CONTRIBUTING.md for more information.";
|
||||
echo;
|
||||
git diff;) | tr '\n' '\001' | sed -e 's#\x01#%0A#g';
|
||||
exit 1;
|
||||
)
|
||||
windows:
|
||||
name: Windows
|
||||
needs: [commit-msg, clang-format]
|
||||
runs-on: windows-2019
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
name: [ VS2015 x86 Development, VS2015 x64 Development, VS2015 x64 Release, VS2017 x64 Development, VS2019 x64 Development ]
|
||||
include:
|
||||
- name: VS2015 x86 Development
|
||||
compiler: VS2015
|
||||
toolset: v140
|
||||
platform: x86
|
||||
configuration: Development
|
||||
- name: VS2015 x64 Development
|
||||
compiler: VS2015
|
||||
toolset: v140
|
||||
platform: x64
|
||||
configuration: Development
|
||||
- name: VS2015 x64 Release
|
||||
compiler: VS2015
|
||||
toolset: v140
|
||||
platform: x64
|
||||
configuration: Release
|
||||
- name: VS2017 x64 Development
|
||||
compiler: VS2017
|
||||
toolset: v141
|
||||
platform: x64
|
||||
configuration: Development
|
||||
- name: VS2019 x64 Development
|
||||
compiler: VS2019
|
||||
toolset: v142
|
||||
platform: x64
|
||||
configuration: Development
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 5
|
||||
- name: Download optional 3rdparty extras
|
||||
run: |
|
||||
curl https://renderdoc.org/qrenderdoc_3rdparty.zip -O
|
||||
7z x qrenderdoc_3rdparty.zip
|
||||
- name: Set up Visual Studio tools
|
||||
uses: microsoft/setup-msbuild@v1.0.0
|
||||
- name: Building solution
|
||||
run: msbuild.exe renderdoc.sln "/p:Configuration=${{ matrix.configuration }}" "/p:Platform=${{ matrix.platform }}" "/p:PlatformToolset=${{ matrix.toolset }}"
|
||||
shell: powershell
|
||||
- if: matrix.configuration == 'Development'
|
||||
name: Running core unit tests
|
||||
run: |
|
||||
if ! ./*/Development/renderdoccmd.exe test unit -o test.log; then
|
||||
echo "::error::$(cat test.log)" | tr -d '\r' | tr '\n' '\001' | sed -e 's#\x01#%0D%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
- if: matrix.configuration == 'Development'
|
||||
name: Running UI unit tests
|
||||
run: |
|
||||
if ! ./*/Development/qrenderdoc.exe --unittest test.log; then
|
||||
echo "::error::$(cat test.log)" | tr -d '\r' | tr '\n' '\001' | sed -e 's#\x01#%0D%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
docs:
|
||||
name: Documentation Build
|
||||
needs: [commit-msg, clang-format]
|
||||
runs-on: ubuntu-18.04
|
||||
env:
|
||||
QT_SELECT: qt5
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 5
|
||||
- name: Install compilation dependencies
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -y -qq libx11-dev mesa-common-dev libgl1-mesa-dev qtbase5-dev libxcb-keysyms1-dev
|
||||
- name: Install sphinx dependencies
|
||||
run: sudo pip3 install Sphinx
|
||||
- name: Build cut-down renderdoc for python modules
|
||||
run: |
|
||||
mkdir build
|
||||
pushd build
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_GL=OFF -DENABLE_GLES=OFF -DENABLE_VULKAN=OFF -DENABLE_RENDERDOCCMD=OFF -DENABLE_QRENDERDOC=OFF ..
|
||||
make -j2
|
||||
popd
|
||||
- name: Build documentation
|
||||
run: |
|
||||
cd docs
|
||||
make html SPHINXOPTS=-W
|
||||
linux:
|
||||
name: Linux
|
||||
needs: [commit-msg, clang-format]
|
||||
runs-on: ubuntu-18.04
|
||||
env:
|
||||
QT_SELECT: qt5
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
name: [ GCC 5 Development, Clang 3.8 Development, Clang 3.8 Release, Clang 9 Development ]
|
||||
include:
|
||||
- name: GCC 5 Development
|
||||
cc: gcc-5
|
||||
cxx: g++-5
|
||||
type: Debug
|
||||
- name: Clang 3.8 Development
|
||||
cc: clang-3.8
|
||||
cxx: clang++-3.8
|
||||
type: Debug
|
||||
- name: Clang 3.8 Release
|
||||
cc: clang-3.8
|
||||
cxx: clang++-3.8
|
||||
type: Release
|
||||
- name: Clang 9 Development
|
||||
cc: clang-9
|
||||
cxx: clang++-9
|
||||
type: Debug
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 5
|
||||
- name: Add LLVM apt repository
|
||||
run: |
|
||||
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
sudo add-apt-repository -y 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.8 main'
|
||||
- name: Install compilation dependencies
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -y -qq libx11-dev mesa-common-dev libgl1-mesa-dev qtbase5-dev libqt5svg5-dev libqt5x11extras5-dev libxcb-keysyms1-dev clang++-3.8 g++-5
|
||||
- name: Build
|
||||
run: |
|
||||
mkdir build
|
||||
pushd build
|
||||
CC=${{ matrix.cc }} CXX=${{ matrix.cxx }} cmake -DCMAKE_BUILD_TYPE=${{ matrix.type }} ..
|
||||
make -j2
|
||||
popd
|
||||
- if: matrix.type == 'Debug'
|
||||
name: Run core unit tests
|
||||
run: |
|
||||
if ! ./build/bin/renderdoccmd test unit -o test.log; then
|
||||
echo "::error::$(cat test.log)" | tr '\n' '\001' | sed -e 's#\x01#%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
- if: matrix.type == 'Debug'
|
||||
name: Run UI unit tests
|
||||
run: |
|
||||
if ! ./build/bin/qrenderdoc --unittest test.log; then
|
||||
echo "::error::$(cat test.log)" | tr '\n' '\001' | sed -e 's#\x01#%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
android:
|
||||
name: Android
|
||||
needs: [commit-msg, clang-format]
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 5
|
||||
- name: Install Android SDK 3859397 and NDK r14b
|
||||
run: |
|
||||
export ARCH=`uname -m`
|
||||
wget -q http://dl.google.com/android/repository/sdk-tools-linux-3859397.zip
|
||||
wget -q http://dl.google.com/android/repository/android-ndk-r14b-linux-${ARCH}.zip
|
||||
unzip -u -q android-ndk-r14b-linux-${ARCH}.zip -d $GITHUB_WORKSPACE
|
||||
unzip -u -q sdk-tools-linux-3859397.zip -d $GITHUB_WORKSPACE
|
||||
echo "::set-env name=ANDROID_NDK::$GITHUB_WORKSPACE/android-ndk-r14b"
|
||||
echo "::set-env name=ANDROID_SDK::$GITHUB_WORKSPACE/"
|
||||
|
||||
# Answer "yes" to any license acceptance requests
|
||||
pushd $GITHUB_WORKSPACE/tools/bin
|
||||
(yes 2>/dev/null | ./sdkmanager --sdk_root=$GITHUB_WORKSPACE "build-tools;26.0.1" "platforms;android-23") || echo
|
||||
popd
|
||||
- name: Build
|
||||
run: |
|
||||
mkdir build-android-arm32
|
||||
pushd build-android-arm32
|
||||
cmake -DBUILD_ANDROID=On -DANDROID_ABI=armeabi-v7a -DANDROID_NATIVE_API_LEVEL=23 ..
|
||||
make -j2
|
||||
popd
|
||||
macOS:
|
||||
name: Mac
|
||||
needs: [commit-msg, clang-format]
|
||||
runs-on: macos-10.15
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
name: [ Development, Release ]
|
||||
include:
|
||||
- name: Development
|
||||
type: Debug
|
||||
- name: Release
|
||||
type: Release
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 5
|
||||
- name: Install Homebrew dependencies
|
||||
run: |
|
||||
brew update
|
||||
brew install qt5 lftp automake
|
||||
brew link qt5 --force
|
||||
- name: Build
|
||||
run: |
|
||||
mkdir build
|
||||
pushd build
|
||||
cmake -DCMAKE_BUILD_TYPE=${{ matrix.type }} ..
|
||||
make -j2
|
||||
popd
|
||||
- if: matrix.type == 'Debug'
|
||||
name: Run core unit tests
|
||||
run: |
|
||||
if ! ./build/bin/renderdoccmd test unit -o test.log; then
|
||||
echo "::error::$(cat test.log)" | tr '\n' '\001' | sed -e $'s#\x01#%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
- if: matrix.type == 'Debug'
|
||||
name: Run UI unit tests
|
||||
run: |
|
||||
if ! ./build/bin/qrenderdoc.app/Contents/MacOS/qrenderdoc --unittest test.log; then
|
||||
echo "::error::$(cat test.log)" | tr '\n' '\001' | sed -e $'s#\x01#%0A#g';
|
||||
exit 1;
|
||||
fi
|
||||
- if: matrix.type == 'Release' && github.event_name == 'push'
|
||||
name: Preparing for deploy
|
||||
run: ./util/buildscripts/scripts/prepare_deps_macos.sh ./build/bin/qrenderdoc.app/Contents/MacOS/qrenderdoc
|
||||
- if: matrix.type == 'Release' && github.event_name == 'push'
|
||||
name: Packaging artifacts for nightly build
|
||||
run: |
|
||||
FNAME="RenderDoc_macOS_"`git rev-parse HEAD`.zip
|
||||
zip -r "${FNAME}" build/bin
|
||||
ls -lh "${FNAME}"
|
||||
echo "::set-env name=FNAME::$FNAME"
|
||||
- if: matrix.type == 'Release' && github.event_name == 'push'
|
||||
name: Uploading artifacts for nightly build
|
||||
env:
|
||||
UPLOADLOCATION: ${{ secrets.MacUploadLocation }}
|
||||
run: |
|
||||
echo 'renderdoc.org,209.133.211.153 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBObosfTSrCa11pDrmPxJ6zzNltDJls3Vc0AMVrqX0hAGFoFWbGvdDm3wpDBYHpkL9LmG6bJNHqWmO59oUJZYl9E=' >> $HOME/.ssh/known_hosts
|
||||
ls -lR $HOME/.ssh
|
||||
cat $HOME/.ssh/known_hosts
|
||||
lftp sftp://"${UPLOADLOCATION}" -e "cd upload; put ${FNAME}; bye"
|
||||
-69
@@ -1,69 +0,0 @@
|
||||
language: cpp
|
||||
sudo: required
|
||||
dist: bionic
|
||||
|
||||
branches:
|
||||
only:
|
||||
- v1.x
|
||||
# having another branch lets us force-push tests here without spamming master
|
||||
- ci-test
|
||||
|
||||
env:
|
||||
global:
|
||||
- RENDERDOC_TRAVIS_BUILD=1 RENDERDOC_CI_BUILD=1
|
||||
- secure: "nFkr8LnOvqAqgm/cMB2/4mxRaFBShUm5PBMkQf7cEa9p2yrATk5w2JQXAghr1szY2lnWxN/tLKc+93tKmTy7h9fg24VvfBkZIznI4b3m589lxSkrCWbEa3IplMdEHFl21iDSvyigheTUF4N4X2tEPNR5/mw0W+YQY8nXVekOgj9+1sC+ICdb6G6kLtrqNGFBr73KwJyZfl5j60JRvQauO5xLhbzGBDxYHzeo2QUk363czK0rxlZEmjWcqThx1AKmkYQGhHDIZ9ZcYv92nozdRjf2i5OBq5DBOp8FxCgQ225r8WRNFqH4ccGB2juQ+GtkLltUL7ZkyIY9z8zG7y9psG/ZrLvcnaDYsYnz6vaKBpy4RdaUZ1n9Le74yssGipEjOWOgUW3iuqp/1xkXIr7lEkY9MNLlWFtFgIQjDTeFS7QxsLovUcj/8OSHDNRs2fNegFhWUvv6nQUziq3nfDjm51W+VqNlSWKlq+NKr7ipvlpJcPEx7V5oe7SKoLQOGjj/ajTmKnnG653fQMOY4ACvkAfsu2+Vbs8C8VaUDvZRq9wg5cKmm3CrgmjO1r+lg07MA0EUCRtL3UwdxoaqbjpRKDAOdRA2r5dS/jAK1vt1RSuYaD4e6KtbdJgLVcHxT0/ABovs5yS40TSLQPA3Yvrd+76XFeGjkGdMtX2OTRasmTY="
|
||||
|
||||
# variables for the matrix, which are implicitly unset if omitted
|
||||
#
|
||||
# DOCS_BUILD - set for docs builds, unset for code builds
|
||||
#
|
||||
# At least one of these should be set:
|
||||
#
|
||||
# LINUX_BUILD - set for linux builds
|
||||
# APPLE_BUILD - set for OSX builds
|
||||
# ANDROID_BUILD - set for android builds
|
||||
#
|
||||
# RELEASE_BUILD - set if a cmake should be set to a release build
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
include:
|
||||
# only build docs on linux
|
||||
- os: linux
|
||||
env: DOCS_BUILD=1
|
||||
- os: linux
|
||||
env: LINUX_BUILD=1
|
||||
compiler: gcc
|
||||
- os: linux
|
||||
env: LINUX_BUILD=1
|
||||
compiler: clang
|
||||
- os: linux
|
||||
env: LINUX_BUILD=1 RELEASE_BUILD=1
|
||||
compiler: clang
|
||||
- os: linux
|
||||
env: ANDROID_BUILD=1
|
||||
compiler: clang
|
||||
- os: osx
|
||||
osx_image: xcode9.4
|
||||
env: APPLE_BUILD=1
|
||||
compiler: clang
|
||||
- os: osx
|
||||
osx_image: xcode9.4
|
||||
env: APPLE_BUILD=1 RELEASE_BUILD=1
|
||||
compiler: clang
|
||||
|
||||
# install dependencies
|
||||
install:
|
||||
- . ./util/travis/setup.sh
|
||||
|
||||
script:
|
||||
- . ./util/travis/compile.sh
|
||||
|
||||
deploy:
|
||||
provider: script
|
||||
skip_cleanup: true
|
||||
script: bash $TRAVIS_BUILD_DIR/util/travis/osx_deploy.sh
|
||||
on:
|
||||
repo: baldurk/renderdoc
|
||||
branch: v1.x
|
||||
condition: $TRAVIS_OS_NAME$RELEASE_BUILD = osx1
|
||||
@@ -1,9 +1,7 @@
|
||||
<p align="center"><img src="https://user-images.githubusercontent.com/661798/36482670-f81601c0-170b-11e8-8adb-2365b346ac27.png" /></p>
|
||||
|
||||
[](LICENSE.md)
|
||||
[](https://travis-ci.org/baldurk/renderdoc)
|
||||
[](https://ci.appveyor.com/project/baldurk/renderdoc)
|
||||
[](https://scan.coverity.com/projects/baldurk-renderdoc)
|
||||
[](https://github.com/baldurk/renderdoc/actions)
|
||||
|
||||
RenderDoc is a frame-capture based graphics debugger, currently available for Vulkan, D3D11, D3D12, OpenGL, and OpenGL ES development on Windows 7 - 10, Linux, Android, Stadia, and Nintendo Switch™. It is completely open-source under the MIT license.
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ On windows, the `Development` configuration is recommended for day-to-day dev. I
|
||||
|
||||
First check that you have all of the [required dependencies](Dependencies.md#linux).
|
||||
|
||||
Currently linux should work with gcc 5+ and clang 3.4+ as it requires C++14 compiler support. The Travis CI builds with gcc-6.0 and clang-3.5. Within reason other compilers will be supported if the required patches are minimal. Distribution packages should be built with the `Release` CMake build type so that warnings do not trigger errors. To build just run:
|
||||
Currently linux should work with gcc 5+ and clang 3.4+ as it requires C++14 compiler support. The CI builds with gcc-5.0 and clang-3.8. Within reason other compilers will be supported if the required patches are minimal. Distribution packages should be built with the `Release` CMake build type so that warnings do not trigger errors. To build just run:
|
||||
|
||||
```
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug -Bbuild -H.
|
||||
|
||||
@@ -146,7 +146,7 @@ sudo apt-get install openjdk-8-jdk
|
||||
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
|
||||
```
|
||||
|
||||
The Android SDK and NDK can be set up with the following steps. They are also mirrored in our Travis-CI [setup script](util/travis/android_setup.sh) for Android.
|
||||
The Android SDK and NDK can be set up with the following steps.
|
||||
|
||||
SDK links are pulled from [here](https://web.archive.org/web/20171026083141/https://developer.android.com/studio/index.html) (older versions are no longer linked from the android site, but the downloads still work).
|
||||
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
CORES=$(nproc) || echo 4
|
||||
mkdir -p build-android && cd build-android
|
||||
cmake -DBUILD_ANDROID=On -DANDROID_ABI=armeabi-v7a -DANDROID_NATIVE_API_LEVEL=23 ..
|
||||
make -j $CORES
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -ev
|
||||
|
||||
sudo apt-get -qq update
|
||||
sudo apt-get install -y cmake openjdk-8-jdk
|
||||
|
||||
export ARCH=`uname -m`
|
||||
|
||||
# Pull known working tools August 2017
|
||||
wget http://dl.google.com/android/repository/sdk-tools-linux-3859397.zip
|
||||
wget http://dl.google.com/android/repository/android-ndk-r14b-linux-${ARCH}.zip
|
||||
unzip -u -q android-ndk-r14b-linux-${ARCH}.zip
|
||||
unzip -u -q sdk-tools-linux-3859397.zip
|
||||
|
||||
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
|
||||
export ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r14b
|
||||
export ANDROID_SDK=$TRAVIS_BUILD_DIR
|
||||
|
||||
# Answer "yes" to any license acceptance requests
|
||||
pushd tools/bin
|
||||
(while sleep 3; do echo "y"; done) | ./sdkmanager --sdk_root=$TRAVIS_BUILD_DIR "build-tools;26.0.1" "platforms;android-23"
|
||||
popd
|
||||
@@ -1,48 +0,0 @@
|
||||
if [[ "$DOCS_BUILD" == "1" ]]; then
|
||||
|
||||
echo "== Compiling documentation build.";
|
||||
|
||||
. ./util/travis/docs_compile.sh;
|
||||
|
||||
else
|
||||
|
||||
echo "== Compiling code build.";
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
||||
|
||||
if [[ "$LINUX_BUILD" == "1" ]]; then
|
||||
|
||||
. ./util/travis/linux_compile.sh;
|
||||
|
||||
elif [[ "$ANDROID_BUILD" == "1" ]]; then
|
||||
|
||||
. ./util/travis/android_compile.sh;
|
||||
|
||||
else
|
||||
|
||||
echo "Unknown configuration building on linux - not targetting linux or android.";
|
||||
exit 1;
|
||||
|
||||
fi
|
||||
|
||||
elif [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
|
||||
if [[ "$APPLE_BUILD" == "1" ]]; then
|
||||
|
||||
. ./util/travis/osx_compile.sh
|
||||
|
||||
else
|
||||
|
||||
echo "Unknown configuration building on OSX - not targetting OSX.";
|
||||
exit 1;
|
||||
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
echo "Unknown travis OS: $TRAVIS_OS_NAME.";
|
||||
exit 1;
|
||||
|
||||
fi
|
||||
|
||||
fi
|
||||
@@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -ev
|
||||
|
||||
export QT_SELECT=qt5
|
||||
|
||||
mkdir build
|
||||
pushd build
|
||||
|
||||
# Do a minimal build with as little as possible to get the python modules
|
||||
CC=gcc-6 CXX=g++-6 cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_GL=OFF -DENABLE_GLES=OFF -DENABLE_VULKAN=OFF -DENABLE_RENDERDOCCMD=OFF -DENABLE_QRENDERDOC=OFF ..
|
||||
make -j2
|
||||
|
||||
popd
|
||||
|
||||
cd docs/
|
||||
make html SPHINXOPTS=-W
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -ev
|
||||
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install --allow-unauthenticated -y -qq libx11-dev mesa-common-dev libgl1-mesa-dev qtbase5-dev libxcb-keysyms1-dev gdb g++-6 python3-pip
|
||||
|
||||
sudo pip3 install Sphinx sphinx-rtd-theme
|
||||
@@ -1,28 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
# Switch to the gcc/clang version we want
|
||||
if [ $CC == "gcc" ]; then
|
||||
export CC=gcc-5;
|
||||
export CXX=g++-5;
|
||||
else
|
||||
export CC=clang-3.8;
|
||||
export CXX=clang++-3.8;
|
||||
fi
|
||||
|
||||
export QT_SELECT=qt5
|
||||
|
||||
mkdir build
|
||||
cd build
|
||||
if [[ "$RELEASE_BUILD" == "1" ]]; then
|
||||
cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
else
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug ..
|
||||
fi
|
||||
make -j2
|
||||
|
||||
echo "--- Running unit tests ---"
|
||||
|
||||
./bin/renderdoccmd test unit
|
||||
./bin/qrenderdoc --unittest
|
||||
@@ -1,50 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -ev
|
||||
|
||||
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
sudo add-apt-repository -y 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.8 main'
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install --allow-unauthenticated -y -qq libx11-dev mesa-common-dev libgl1-mesa-dev qtbase5-dev libqt5svg5-dev libqt5x11extras5-dev libxcb-keysyms1-dev gdb clang-format-3.8 clang++-3.8 g++-5
|
||||
|
||||
# check last 100 commits are all correctly sized. First line must be no
|
||||
# longer than 72 characters, so it fits in git log and github history
|
||||
# We don't check the first commit since in pull requests this is an invisible 'merge' commit.
|
||||
if git log --oneline | tail -n +2 | head -n 100 | cut -d ' ' -f2- | grep -q '.\{73\}'; then
|
||||
echo "***************************************************";
|
||||
echo "*** Some of your commit messages summaries are ***";
|
||||
echo "*** longer than 72 characters. ***";
|
||||
echo "*** Please shorten them so they fit <= 72 chars ***";
|
||||
echo "*** on the first line, with a longer summary in ***";
|
||||
echo "*** the body after a blank line. ***";
|
||||
echo "*** For more information see ***";
|
||||
echo "*** docs/CONTRIBUTING.md. ***";
|
||||
echo "*** Thanks! ***";
|
||||
echo "*** ***";
|
||||
echo "*** Commit messages: ***";
|
||||
echo;
|
||||
git log --oneline | tail -n +2 | head -n 100 | cut -d ' ' -f2- | grep '.\{73\}'
|
||||
echo;
|
||||
echo "***************************************************";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
# check formatting matches clang-format-3.8. Since newer versions can have
|
||||
# changes in formatting even without any rule changes, we have to fix on a
|
||||
# single version.
|
||||
. ./util/clang_format_all.sh
|
||||
|
||||
git clean -f
|
||||
|
||||
# Print any diff here, so the error message below is the last thing
|
||||
git diff
|
||||
|
||||
git diff --quiet || (
|
||||
echo "***************************************************";
|
||||
echo "*** The code is not clean against clang-format ***";
|
||||
echo "*** Please run clang-format-3.8 and fix the ***";
|
||||
echo "*** differences then rebase/squash them into ***";
|
||||
echo "*** the relevant commits. Do not add a commit ***";
|
||||
echo "*** for just formatting fixes. Thanks! ***";
|
||||
echo "***************************************************";
|
||||
exit 1;
|
||||
)
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
trap 'exit' ERR
|
||||
|
||||
mkdir build
|
||||
pushd build
|
||||
if [[ "$RELEASE_BUILD" == "1" ]]; then
|
||||
cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
else
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug ..
|
||||
fi
|
||||
make -j2
|
||||
popd # build
|
||||
|
||||
echo "--- Running unit tests ---"
|
||||
|
||||
if [[ "$RELEASE_BUILD" == "1" ]]; then
|
||||
echo "Not running tests on release build"
|
||||
else
|
||||
./build/bin/renderdoccmd test unit
|
||||
./build/bin/qrenderdoc.app/Contents/MacOS/qrenderdoc --unittest
|
||||
fi
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "Preparing macOS dependencies"
|
||||
|
||||
./util/buildscripts/scripts/prepare_deps_macos.sh build/bin/qrenderdoc.app/Contents/MacOS/qrenderdoc
|
||||
|
||||
set +v
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ "$APPLE_BUILD" == "1" ]]; then
|
||||
echo "Uploading macOS build to make nightly builds"
|
||||
FNAME="RenderDoc_macOS_"`git rev-parse HEAD`.zip
|
||||
zip -r "${FNAME}" build/bin
|
||||
ls -lh "${FNAME}"
|
||||
lftp sftp://"${UPLOADLOCATION}" -e "cd upload; put ${FNAME}; bye"
|
||||
else
|
||||
echo "Running OSX deploy on unexpected platform.";
|
||||
exit 1;
|
||||
fi
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
brew update
|
||||
brew install qt5 lftp
|
||||
brew link qt5 --force
|
||||
brew link --overwrite python
|
||||
|
||||
echo '|1|DQR5DTWgBz2JwdQs1G6KpjppcIE=|oxLDo2zhfkFZ+/gsTcnXI/vC8qs= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBObosfTSrCa11pDrmPxJ6zzNltDJls3Vc0AMVrqX0hAGFoFWbGvdDm3wpDBYHpkL9LmG6bJNHqWmO59oUJZYl9E=' >> $HOME/.ssh/known_hosts
|
||||
|
||||
echo "Setup complete"
|
||||
@@ -1,48 +0,0 @@
|
||||
if [[ "$DOCS_BUILD" == "1" ]]; then
|
||||
|
||||
echo "== Setting up documentation build.";
|
||||
|
||||
. ./util/travis/docs_setup.sh;
|
||||
|
||||
else
|
||||
|
||||
echo "== Setting up code build.";
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
||||
|
||||
if [[ "$LINUX_BUILD" == "1" ]]; then
|
||||
|
||||
. ./util/travis/linux_setup.sh;
|
||||
|
||||
elif [[ "$ANDROID_BUILD" == "1" ]]; then
|
||||
|
||||
. ./util/travis/android_setup.sh;
|
||||
|
||||
else
|
||||
|
||||
echo "Unknown configuration building on linux - not targetting linux or android.";
|
||||
exit 1;
|
||||
|
||||
fi
|
||||
|
||||
elif [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
|
||||
if [[ "$APPLE_BUILD" == "1" ]]; then
|
||||
|
||||
. ./util/travis/osx_setup.sh
|
||||
|
||||
else
|
||||
|
||||
echo "Unknown configuration building on OSX - not targetting OSX.";
|
||||
exit 1;
|
||||
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
echo "Unknown travis OS: $TRAVIS_OS_NAME.";
|
||||
exit 1;
|
||||
|
||||
fi
|
||||
|
||||
fi
|
||||
Reference in New Issue
Block a user