xref: /aosp_15_r20/external/pytorch/ios/LibTorch.podspec.template (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1*da0073e9SAndroid Build Coastguard WorkerPod::Spec.new do |s|
2*da0073e9SAndroid Build Coastguard Worker    s.name             = 'LibTorch'
3*da0073e9SAndroid Build Coastguard Worker    s.version          = 'IOS_BUILD_VERSION'
4*da0073e9SAndroid Build Coastguard Worker    s.authors          = 'PyTorch Team'
5*da0073e9SAndroid Build Coastguard Worker    s.license          = { :type => 'BSD' }
6*da0073e9SAndroid Build Coastguard Worker    s.homepage         = 'https://github.com/pytorch/pytorch'
7*da0073e9SAndroid Build Coastguard Worker    s.source           = { :http => "https://ossci-ios.s3.amazonaws.com/libtorch_ios_#{s.version}.zip" }
8*da0073e9SAndroid Build Coastguard Worker    s.summary          = 'The PyTorch C++ library for iOS'
9*da0073e9SAndroid Build Coastguard Worker    s.description      = <<-DESC
10*da0073e9SAndroid Build Coastguard Worker        The PyTorch C++ library for iOS.
11*da0073e9SAndroid Build Coastguard Worker    DESC
12*da0073e9SAndroid Build Coastguard Worker    s.ios.deployment_target = '12.0'
13*da0073e9SAndroid Build Coastguard Worker    s.default_subspec = 'Core'
14*da0073e9SAndroid Build Coastguard Worker    s.subspec 'Core' do |ss|
15*da0073e9SAndroid Build Coastguard Worker        ss.dependency 'LibTorch/Torch'
16*da0073e9SAndroid Build Coastguard Worker        ss.source_files = 'src/*.{h,cpp,c,cc}'
17*da0073e9SAndroid Build Coastguard Worker        ss.public_header_files = ['src/LibTorch.h']
18*da0073e9SAndroid Build Coastguard Worker    end
19*da0073e9SAndroid Build Coastguard Worker    s.subspec 'Torch' do |ss|
20*da0073e9SAndroid Build Coastguard Worker        ss.header_mappings_dir = 'install/include/'
21*da0073e9SAndroid Build Coastguard Worker        ss.preserve_paths = 'install/include/**/*.{h,cpp,cc,c}'
22*da0073e9SAndroid Build Coastguard Worker        ss.vendored_libraries = 'install/lib/*.a'
23*da0073e9SAndroid Build Coastguard Worker        ss.libraries = ['c++', 'stdc++']
24*da0073e9SAndroid Build Coastguard Worker    end
25*da0073e9SAndroid Build Coastguard Worker    s.user_target_xcconfig = {
26*da0073e9SAndroid Build Coastguard Worker        'HEADER_SEARCH_PATHS' => '$(inherited) "$(PODS_ROOT)/LibTorch/install/include/"',
27*da0073e9SAndroid Build Coastguard Worker        'OTHER_LDFLAGS' => '-force_load "$(PODS_ROOT)/LibTorch/install/lib/libtorch.a" -force_load "$(PODS_ROOT)/LibTorch/install/lib/libtorch_cpu.a"',
28*da0073e9SAndroid Build Coastguard Worker        'CLANG_CXX_LANGUAGE_STANDARD' => 'c++17',
29*da0073e9SAndroid Build Coastguard Worker        'CLANG_CXX_LIBRARY' => 'libc++'
30*da0073e9SAndroid Build Coastguard Worker    }
31*da0073e9SAndroid Build Coastguard Worker    s.pod_target_xcconfig = {
32*da0073e9SAndroid Build Coastguard Worker        'HEADER_SEARCH_PATHS' => '$(inherited) "$(PODS_ROOT)/LibTorch/install/include/"',
33*da0073e9SAndroid Build Coastguard Worker        'VALID_ARCHS' => 'x86_64 arm64'
34*da0073e9SAndroid Build Coastguard Worker    }
35*da0073e9SAndroid Build Coastguard Worker    s.library = ['c++', 'stdc++']
36*da0073e9SAndroid Build Coastguard Worker    s.frameworks = 'Accelerate', 'MetalPerformanceShaders', 'CoreML'
37*da0073e9SAndroid Build Coastguard Workerend
38