17
17
18
18
Pod ::Spec . new do |s |
19
19
s . name = 'ProtobufCpp'
20
- s . version = '3.11.4 '
20
+ s . version = '25.0 '
21
21
s . summary = 'Protocol Buffers v.3 runtime library for C++.'
22
22
s . homepage = 'https://github.com/protocolbuffers/protobuf'
23
23
s . license = '3-Clause BSD License'
@@ -33,7 +33,9 @@ Pod::Spec.new do |s|
33
33
s . osx . deployment_target = '10.13'
34
34
s . tvos . deployment_target = '12.0'
35
35
36
- s . source_files = 'src/**/*.{h,cc,inc}'
36
+ s . source_files = 'src/**/*.{h,cc,inc}' ,
37
+ # utf8_range is needed too, to avoid build errors.
38
+ 'third_party/utf8_range/*.{h,cc,inc}'
37
39
s . exclude_files = # skip test files. (Yes, the test files are intermixed with
38
40
# the source. No there doesn't seem to be a common/simple
39
41
# pattern we could use to exclude them; 'test' appears in
@@ -46,20 +48,26 @@ Pod::Spec.new do |s|
46
48
'src/**/*[^y]test*.*' ,
47
49
'src/**/testing/**' ,
48
50
'src/**/mock*' ,
51
+ 'third_party/utf8_range/*_test.{h,cc,inc}' ,
52
+ # skip benchmark code that failed to compile.
53
+ 'src/**/map_probe_benchmark.cc' ,
49
54
# skip the javascript handling code.
50
55
'src/**/js/**' ,
51
56
# skip the protoc compiler
52
57
'src/google/protobuf/compiler/**/*'
53
58
54
59
s . header_mappings_dir = 'src/'
55
60
61
+ s . dependency 'abseil' , '~> 1.20240116.1'
62
+
56
63
# Set a CPP symbol so the code knows to use framework imports.
57
64
s . pod_target_xcconfig = {
65
+ 'CLANG_CXX_LANGUAGE_STANDARD' => 'c++14' ,
58
66
'GCC_PREPROCESSOR_DEFINITIONS' =>
59
67
'$(inherited) ' +
60
68
'GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1 ' +
61
69
'HAVE_PTHREAD=1' ,
62
- 'HEADER_SEARCH_PATHS' => '"${PODS_ROOT}/ProtobufCpp/src"' ,
70
+ 'HEADER_SEARCH_PATHS' => '"${PODS_ROOT}/ProtobufCpp/src" "${PODS_ROOT}/ProtobufCpp/third_party/utf8_range" ' ,
63
71
64
72
# Cocoapods flattens header imports, leading to much anguish. The
65
73
# following two statements work around this.
0 commit comments