mirror of
				https://git.tardis.systems/mirrors/yuzu
				synced 2025-10-31 18:54:14 +01:00 
			
		
		
		
	ci: Add clang build scripts
Adds scripts that instruct CI to build yuzu with the installed Clang compiler on yuzuemu/build-environments:linux-fresh. These scripts are based on the .ci/scripts/linux scripts, minus AppImage building since that isn't necessary. Re-uses linux-fresh since that container has Clang 12 installed.
This commit is contained in:
		
							parent
							
								
									20245e660f
								
							
						
					
					
						commit
						fb0b4c7e27
					
				
							
								
								
									
										18
									
								
								.ci/scripts/clang/docker.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										18
									
								
								.ci/scripts/clang/docker.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,18 @@ | ||||
| #!/bin/bash -ex | ||||
| 
 | ||||
| # Exit on error, rather than continuing with the rest of the script. | ||||
| set -e | ||||
| 
 | ||||
| cd /yuzu | ||||
| 
 | ||||
| ccache -s | ||||
| 
 | ||||
| mkdir build || true && cd build | ||||
| cmake .. -DDISPLAY_VERSION=$1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/lib/ccache/clang -DCMAKE_CXX_COMPILER=/usr/lib/ccache/clang++ -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${ENABLE_COMPATIBILITY_REPORTING:-"OFF"} -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_INSTALL_PREFIX="/usr" | ||||
| 
 | ||||
| make -j$(nproc) | ||||
| 
 | ||||
| ccache -s | ||||
| 
 | ||||
| ctest -VV -C Release | ||||
| 
 | ||||
							
								
								
									
										8
									
								
								.ci/scripts/clang/exec.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.ci/scripts/clang/exec.sh
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| #!/bin/bash -ex | ||||
| 
 | ||||
| mkdir -p "ccache"  || true | ||||
| chmod a+x ./.ci/scripts/clang/docker.sh | ||||
| # the UID for the container yuzu user is 1027 | ||||
| sudo chown -R 1027 ./ | ||||
| docker run -e ENABLE_COMPATIBILITY_REPORTING -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-fresh /bin/bash /yuzu/.ci/scripts/clang/docker.sh $1 | ||||
| sudo chown -R $UID ./ | ||||
							
								
								
									
										20
									
								
								.ci/scripts/clang/upload.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.ci/scripts/clang/upload.sh
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,20 @@ | ||||
| #!/bin/bash -ex | ||||
| 
 | ||||
| . .ci/scripts/common/pre-upload.sh | ||||
| 
 | ||||
| REV_NAME="yuzu-linux-${GITDATE}-${GITREV}" | ||||
| ARCHIVE_NAME="${REV_NAME}.tar.xz" | ||||
| COMPRESSION_FLAGS="-cJvf" | ||||
| 
 | ||||
| if [ "${RELEASE_NAME}" = "mainline" ]; then | ||||
|     DIR_NAME="${REV_NAME}" | ||||
| else | ||||
|     DIR_NAME="${REV_NAME}_${RELEASE_NAME}" | ||||
| fi | ||||
| 
 | ||||
| mkdir "$DIR_NAME" | ||||
| 
 | ||||
| cp build/bin/yuzu-cmd "$DIR_NAME" | ||||
| cp build/bin/yuzu "$DIR_NAME" | ||||
| 
 | ||||
| . .ci/scripts/common/post-upload.sh | ||||
| @ -12,6 +12,9 @@ jobs: | ||||
|       windows: | ||||
|         BuildSuffix: 'windows-mingw' | ||||
|         ScriptFolder: 'windows' | ||||
|       clang: | ||||
|         BuildSuffix: 'clang' | ||||
|         ScriptFolder: 'clang' | ||||
|       linux: | ||||
|         BuildSuffix: 'linux' | ||||
|         ScriptFolder: 'linux' | ||||
| @ -24,4 +27,4 @@ jobs: | ||||
|     parameters: | ||||
|       artifactSource: 'false' | ||||
|       cache: $(parameters.cache) | ||||
|       version: $(parameters.version) | ||||
|       version: $(parameters.version) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user