mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	android: Add android build on travis-ci
This adds a android-apk-build which runs on travis-ci. This is using a quite ugly trick, building in a docker container, basically just to get a newer cmake. The cmake in trusty is way to old to work with android builds. A good side-effect is that this is a complete copy-paste for anyone who would like to build android-binaries them self on Linux. All the uglyness is hidden away in a docker container. Signed-off-by: Anton Lundin <glance@acc.umu.se>
This commit is contained in:
		
							parent
							
								
									c92a86f898
								
							
						
					
					
						commit
						063aadd166
					
				
					 4 changed files with 55 additions and 0 deletions
				
			
		
							
								
								
									
										12
									
								
								scripts/android/after_success.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								scripts/android/after_success.sh
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| #!/bin/bash | ||||
| 
 | ||||
| if [ ! -z $TRAVIS_BRANCH ] && [ "$TRAVIS_BRANCH" != "master" ] ; then | ||||
| 	export UPLOADTOOL_SUFFIX=$TRAVIS_BRANCH | ||||
| fi | ||||
| 
 | ||||
| echo "Submitting the folloing apk for continuous build release:" | ||||
| ls -lh $TRAVIS_BUILD_DIR/apk/*.apk | ||||
| 
 | ||||
| # get and run the upload script | ||||
| wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh | ||||
| bash ./upload.sh $TRAVIS_BUILD_DIR/apk/*.apk | ||||
							
								
								
									
										19
									
								
								scripts/android/before_install.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								scripts/android/before_install.sh
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | |||
| #!/bin/bash | ||||
| 
 | ||||
| # Travis only pulls shallow repos. But that messes with git describe. | ||||
| # Sorry Travis, fetching the whole thing and the tags as well... | ||||
| git fetch --unshallow | ||||
| git pull --tags | ||||
| git describe | ||||
| 
 | ||||
| # Ugly, but keeps it running during the build | ||||
| docker run -v $PWD:/workspace/subsurface --name=builder -w /workspace -d ubuntu /bin/sleep 60m | ||||
| docker exec -t builder apt-get update | ||||
| # subsurface android build dependencies | ||||
| docker exec -t builder apt-get install -y git cmake autoconf libtool-bin openjdk-8-jdk-headless ant wget unzip python bzip2 pkg-config | ||||
| # Qt installer dependencies | ||||
| docker exec -t builder apt-get install -y libx11-xcb1 libgl1-mesa-glx libglib2.0-0 | ||||
| # Inject cached 3pp's (if none exists in 3pp dir, we inject zero ones, and all is downloaded in the container) | ||||
| # TODO: caching | ||||
| #docker cp 3pp builder:/workspace | ||||
| docker exec -t builder mkdir -p /workspace/3pp | ||||
							
								
								
									
										12
									
								
								scripts/android/travisbuild.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								scripts/android/travisbuild.sh
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| #!/bin/bash | ||||
| 
 | ||||
| docker exec -t builder subsurface/packaging/android/android-build-wrapper.sh | ||||
| 
 | ||||
| # Extract the built apk from the builder container | ||||
| docker cp builder:/workspace/subsurface-mobile-build-arm/build/outputs/apk/ . | ||||
| 
 | ||||
| # TODO: Caching | ||||
| # Yank Qt, android-sdk, android-ndk and other 3pp source tar balls out from the container and cache them. | ||||
| #docker exec builder mkdir -p 3pp | ||||
| #docker exec builder sh -c 'mv Qt android-sdk-linux android-ndk-* *.tar.gz *.tar.bz2 3pp/' | ||||
| #docker cp builder:/workspace/3pp . | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue