mirror of
				https://github.com/pytorch/pytorch.git
				synced 2025-10-22 22:25:10 +08:00 
			
		
		
		
	Summary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/44464 Reviewed By: agolynski Differential Revision: D23624921 Pulled By: colesbury fbshipit-source-id: 72bed69edcf467a99eda9a3b97e894015c992dce
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| set -eux
 | |
| 
 | |
| ##############################################################################
 | |
| # Master script to build PyTorch Android library with Java bindings.
 | |
| ##############################################################################
 | |
| # Example usage:
 | |
| # - Build default AARs:
 | |
| #   scripts/build_pytorch_android.sh
 | |
| #
 | |
| # - Build for specific ABI(s):
 | |
| #   scripts/build_pytorch_android.sh armeabi-v7a
 | |
| #   scripts/build_pytorch_android.sh arm64-v8a,x86,x86_64
 | |
| #
 | |
| # Script's workflow:
 | |
| # 1. Builds libtorch for android for specified android abisi (by default for all 4).
 | |
| # Custom list of android abis can be specified as a bash argument as comma separated list.
 | |
| # For example just for testing on android x86 emulator we need only x86 build.
 | |
| # ./scripts/build_pytorch_android.sh x86
 | |
| # 2. Creates symbolic links to android/pytorch_android/src/main/jniLibs/${abi} for libtorch build output,
 | |
| # android/pytorch_android/src/main/cpp/libtorch_include/${abi} for headers.
 | |
| # 3. Runs pyotrch_android gradle build:
 | |
| # gradle assembleRelease
 | |
| 
 | |
| PYTORCH_DIR="$(cd $(dirname $0)/..; pwd -P)"
 | |
| PYTORCH_ANDROID_DIR=$PYTORCH_DIR/android
 | |
| 
 | |
| echo "PYTORCH_DIR:$PYTORCH_DIR"
 | |
| 
 | |
| source "$PYTORCH_ANDROID_DIR/common.sh"
 | |
| 
 | |
| check_android_sdk
 | |
| check_gradle
 | |
| parse_abis_list "$@"
 | |
| build_android
 | |
| 
 | |
| # To set proxy for gradle add following lines to ./gradle/gradle.properties:
 | |
| # systemProp.http.proxyHost=...
 | |
| # systemProp.http.proxyPort=8080
 | |
| # systemProp.https.proxyHost=...
 | |
| # systemProp.https.proxyPort=8080
 | |
| 
 | |
| if [ "$CUSTOM_ABIS_LIST" = true ]; then
 | |
|   # Skipping clean task here as android gradle plugin 3.3.2 exteralNativeBuild has problems
 | |
|   # with it when abiFilters are specified.
 | |
|   $GRADLE_PATH -PABI_FILTERS=$ABIS_LIST -p $PYTORCH_ANDROID_DIR assembleRelease
 | |
| else
 | |
|   $GRADLE_PATH -p $PYTORCH_ANDROID_DIR clean assembleRelease
 | |
| fi
 | |
| 
 | |
| find $PYTORCH_ANDROID_DIR -type f -name *aar | xargs ls -lah
 |