mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	Merge pull request #2869 from j-selby/docker-build
Travis: Use Docker to build for Linux
This commit is contained in:
		
						commit
						8fd28244e4
					
				
					 4 changed files with 26 additions and 50 deletions
				
			
		
							
								
								
									
										20
									
								
								.travis-build-docker.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.travis-build-docker.sh
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,20 @@ | ||||||
|  | #!/bin/sh | ||||||
|  | 
 | ||||||
|  | set -e | ||||||
|  | set -x | ||||||
|  | 
 | ||||||
|  | cd /citra | ||||||
|  | 
 | ||||||
|  | apt-get update | ||||||
|  | apt-get install -y build-essential libsdl2-dev qtbase5-dev libqt5opengl5-dev libcurl4-openssl-dev libssl-dev wget git | ||||||
|  | 
 | ||||||
|  | # Get a recent version of CMake | ||||||
|  | wget https://cmake.org/files/v3.9/cmake-3.9.0-Linux-x86_64.sh | ||||||
|  | echo y | sh cmake-3.9.0-Linux-x86_64.sh --prefix=cmake | ||||||
|  | export PATH=/citra/cmake/cmake-3.9.0-Linux-x86_64/bin:$PATH | ||||||
|  | 
 | ||||||
|  | mkdir build && cd build | ||||||
|  | cmake .. -DCMAKE_BUILD_TYPE=Release | ||||||
|  | make -j4 | ||||||
|  | 
 | ||||||
|  | ctest -VV -C Release | ||||||
|  | @ -44,15 +44,7 @@ fi | ||||||
| 
 | 
 | ||||||
| #if OS is linux or is not set | #if OS is linux or is not set | ||||||
| if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then | if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then | ||||||
|     export CC=gcc-6 |     docker run -v $(pwd):/citra ubuntu:16.04 /bin/bash /citra/.travis-build-docker.sh | ||||||
|     export CXX=g++-6 |  | ||||||
|     export PKG_CONFIG_PATH=$HOME/.local/lib/pkgconfig:$PKG_CONFIG_PATH |  | ||||||
| 
 |  | ||||||
|     mkdir build && cd build |  | ||||||
|     cmake .. |  | ||||||
|     make -j4 |  | ||||||
| 
 |  | ||||||
|     ctest -VV -C Release |  | ||||||
| elif [ "$TRAVIS_OS_NAME" = "osx" ]; then | elif [ "$TRAVIS_OS_NAME" = "osx" ]; then | ||||||
|     set -o pipefail |     set -o pipefail | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -5,35 +5,7 @@ set -x | ||||||
| 
 | 
 | ||||||
| #if OS is linux or is not set | #if OS is linux or is not set | ||||||
| if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then | if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then | ||||||
|     export CC=gcc-6 |     docker pull ubuntu:16.04 | ||||||
|     export CXX=g++-6 |  | ||||||
|     mkdir -p $HOME/.local |  | ||||||
| 
 |  | ||||||
|     if [ ! -e $HOME/.local/bin/cmake ]; then |  | ||||||
|         echo "CMake not found in the cache, get and extract it..." |  | ||||||
|         curl -L http://www.cmake.org/files/v3.6/cmake-3.6.3-Linux-x86_64.tar.gz \ |  | ||||||
|             | tar -xz -C $HOME/.local --strip-components=1 |  | ||||||
|     else |  | ||||||
|         echo "Using cached CMake" |  | ||||||
|     fi |  | ||||||
| 
 |  | ||||||
|     if [ ! -e $HOME/.local/lib/libSDL2.la ]; then |  | ||||||
|         echo "SDL2 not found in cache, get and build it..." |  | ||||||
|         wget http://libsdl.org/release/SDL2-2.0.5.tar.gz -O - | tar xz |  | ||||||
|         cd SDL2-2.0.5 |  | ||||||
|         ./configure --prefix=$HOME/.local |  | ||||||
|         make -j4 && make install |  | ||||||
|     else |  | ||||||
|         echo "Using cached SDL2" |  | ||||||
|     fi |  | ||||||
| 
 |  | ||||||
|     export DEBIAN_FRONTEND=noninteractive |  | ||||||
|     # Amazing placebo security |  | ||||||
|     curl http://apt.llvm.org/llvm-snapshot.gpg.key | sudo -E apt-key add - |  | ||||||
|     sudo -E add-apt-repository "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.9 main" |  | ||||||
|     sudo -E apt-get -yq update |  | ||||||
|     sudo -E apt-get -yq install clang-format-3.9 |  | ||||||
| 
 |  | ||||||
| elif [ "$TRAVIS_OS_NAME" = "osx" ]; then | elif [ "$TRAVIS_OS_NAME" = "osx" ]; then | ||||||
|     brew update |     brew update | ||||||
|     brew install qt5 sdl2 dylibbundler p7zip |     brew install qt5 sdl2 dylibbundler p7zip | ||||||
|  |  | ||||||
							
								
								
									
										16
									
								
								.travis.yml
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								.travis.yml
									
										
									
									
									
								
							|  | @ -8,23 +8,15 @@ matrix: | ||||||
|       sudo: false |       sudo: false | ||||||
|       osx_image: xcode7.3 |       osx_image: xcode7.3 | ||||||
| 
 | 
 | ||||||
|  | services: | ||||||
|  |   - docker | ||||||
|  | 
 | ||||||
| addons: | addons: | ||||||
|   apt: |   apt: | ||||||
|     sources: |  | ||||||
|       - ubuntu-toolchain-r-test |  | ||||||
|     packages: |     packages: | ||||||
|       - gcc-6 |       - clang-format-3.9 | ||||||
|       - g++-6 |  | ||||||
|       - qt5-default |  | ||||||
|       - libqt5opengl5-dev |  | ||||||
|       - xorg-dev |  | ||||||
|       - lib32stdc++6 # For CMake |  | ||||||
|       - p7zip-full |       - p7zip-full | ||||||
| 
 | 
 | ||||||
| cache: |  | ||||||
|   directories: |  | ||||||
|     - "$HOME/.local" |  | ||||||
| 
 |  | ||||||
| install: "./.travis-deps.sh" | install: "./.travis-deps.sh" | ||||||
| script: "./.travis-build.sh" | script: "./.travis-build.sh" | ||||||
| after_success: "./.travis-upload.sh" | after_success: "./.travis-upload.sh" | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue