mirror of https://github.com/grpc/grpc.git
Libuv pod and event engine core test suite setup for iOS/ObjC (#27563)
* Add podspec for libuv-grpc * iOS Core test pod setuppull/27644/head
parent
ec4c61a3ae
commit
b7b1ada924
11 changed files with 769 additions and 1 deletions
@ -0,0 +1,151 @@ |
||||
# This file has been automatically generated from a template file. |
||||
# Please make modifications to |
||||
# `templates/src/objective-c/libuv-gRPC.podspec.template` instead. This |
||||
# file can be regenerated from the template by running |
||||
# `tools/buildgen/generate_projects.sh`. |
||||
|
||||
# Libuv CocoaPods podspec |
||||
|
||||
# Copyright 2021, Google Inc. |
||||
# All rights reserved. |
||||
# |
||||
# Redistribution and use in source and binary forms, with or without |
||||
# modification, are permitted provided that the following conditions are |
||||
# met: |
||||
# |
||||
# * Redistributions of source code must retain the above copyright |
||||
# notice, this list of conditions and the following disclaimer. |
||||
# * Redistributions in binary form must reproduce the above |
||||
# copyright notice, this list of conditions and the following disclaimer |
||||
# in the documentation and/or other materials provided with the |
||||
# distribution. |
||||
# * Neither the name of Google Inc. nor the names of its |
||||
# contributors may be used to endorse or promote products derived from |
||||
# this software without specific prior written permission. |
||||
# |
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
|
||||
Pod::Spec.new do |spec| |
||||
|
||||
pod_version = "0.0.10" |
||||
libuv_version = "1.37.0" |
||||
|
||||
spec.name = "Libuv-gRPC" |
||||
spec.version = pod_version |
||||
spec.summary = "gRPC-Only Libuv Pod" |
||||
|
||||
spec.description = <<-DESC |
||||
Libuv pod intended to be used only by gRPC iOS. libuv is a multi-platform |
||||
support library with a focus on asynchronous I/O. It was primarily developed |
||||
for use by Node.js, but it's also used by Luvit, Julia, pyuv, and others. |
||||
DESC |
||||
|
||||
spec.homepage = "https://libuv.org/" |
||||
|
||||
spec.license = { :type => 'Mixed', :file => 'LICENSE' } |
||||
spec.author = "libuv" |
||||
|
||||
# When using multiple platforms |
||||
spec.ios.deployment_target = '9.0' |
||||
spec.osx.deployment_target = '10.10' |
||||
spec.tvos.deployment_target = '10.0' |
||||
spec.watchos.deployment_target = '4.0' |
||||
|
||||
spec.source = { :git => "https://github.com/libuv/libuv.git", :tag => "v#{libuv_version}" } |
||||
|
||||
name = 'uv' |
||||
spec.module_name = name |
||||
spec.header_mappings_dir = 'include' |
||||
spec.header_dir = name |
||||
|
||||
spec.subspec 'Interface' do |ss| |
||||
ss.header_mappings_dir = 'include' |
||||
ss.source_files = "include/uv.h", |
||||
"include/uv/errno.h", |
||||
"include/uv/threadpool.h", |
||||
"include/uv/version.h", |
||||
"include/uv/tree.h", |
||||
"include/uv/unix.h", |
||||
"include/uv/darwin.h" |
||||
end |
||||
|
||||
spec.subspec 'Implementation' do |ss| |
||||
ss.header_mappings_dir = 'src' |
||||
ss.source_files = |
||||
"src/fs-poll.c", |
||||
"src/idna.c", |
||||
"src/inet.c", |
||||
"src/strscpy.c", |
||||
"src/threadpool.c", |
||||
"src/timer.c", |
||||
"src/uv-data-getter-setters.c", |
||||
"src/uv-common.c", |
||||
"src/version.c", |
||||
"src/unix/async.c", |
||||
"src/unix/core.c", |
||||
"src/unix/dl.c", |
||||
"src/unix/fs.c", |
||||
"src/unix/getaddrinfo.c", |
||||
"src/unix/getnameinfo.c", |
||||
"src/unix/loop.c", |
||||
"src/unix/loop-watcher.c", |
||||
"src/unix/pipe.c", |
||||
"src/unix/poll.c", |
||||
"src/unix/process.c", |
||||
"src/unix/signal.c", |
||||
"src/unix/stream.c", |
||||
"src/unix/tcp.c", |
||||
"src/unix/thread.c", |
||||
"src/unix/tty.c", |
||||
"src/unix/udp.c", |
||||
"src/unix/bsd-ifaddrs.c", |
||||
"src/unix/darwin.c", |
||||
"src/unix/fsevents.c", |
||||
"src/unix/kqueue.c", |
||||
"src/unix/darwin-proctitle.c", |
||||
"src/unix/proctitle.c", |
||||
"src/heap-inl.h", |
||||
"src/idna.h", |
||||
"src/queue.h", |
||||
"src/strscpy.h", |
||||
"src/uv-common.h", |
||||
"src/unix/atomic-ops.h", |
||||
"src/unix/internal.h", |
||||
"src/unix/spinlock.h" |
||||
|
||||
ss.dependency "#{spec.name}/Interface", pod_version |
||||
end |
||||
|
||||
spec.requires_arc = false |
||||
|
||||
spec.pod_target_xcconfig = { |
||||
'HEADER_SEARCH_PATHS' => '"$(inherited)" "$(PODS_TARGET_SRCROOT)/include"', |
||||
'USER_HEADER_SEARCH_PATHS' => '"$(PODS_TARGET_SRCROOT)" "$(PODS_TARGET_SRCROOT)/src" "$(PODS_TARGET_SRCROOT)/include"', |
||||
'CLANG_WARN_STRICT_PROTOTYPES' => 'NO', |
||||
'CLANG_WARN_DOCUMENTATION_COMMENTS' => 'NO', |
||||
'USE_HEADERMAP' => 'NO', |
||||
'ALWAYS_SEARCH_USER_PATHS' => 'NO', |
||||
'GCC_TREAT_WARNINGS_AS_ERRORS' => 'NO', |
||||
'GCC_WARN_INHIBIT_ALL_WARNINGS' => 'YES' |
||||
} |
||||
|
||||
spec.libraries = 'c++' |
||||
|
||||
spec.compiler_flags = |
||||
"-D_LARGEFILE_SOURCE", |
||||
"-D_FILE_OFFSET_BITS=64", |
||||
"-D_GNU_SOURCE", |
||||
"-D_DARWIN_USE_64_BIT_INODE=1", |
||||
"-D_DARWIN_UNLIMITED_SELECT=1" |
||||
|
||||
end |
@ -0,0 +1,367 @@ |
||||
// !$*UTF8*$! |
||||
{ |
||||
archiveVersion = 1; |
||||
classes = { |
||||
}; |
||||
objectVersion = 55; |
||||
objects = { |
||||
|
||||
/* Begin PBXBuildFile section */ |
||||
74EC3A952708149C005DF382 /* EventEngineTimerTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 74EC3A942708149C005DF382 /* EventEngineTimerTests.mm */; }; |
||||
AE7618A265DF8B92E93BDFFC /* libPods-CoreTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CC79A999099057E7806F7A4E /* libPods-CoreTests.a */; }; |
||||
/* End PBXBuildFile section */ |
||||
|
||||
/* Begin PBXFileReference section */ |
||||
74EC3A7527081130005DF382 /* CoreTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CoreTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; |
||||
74EC3A942708149C005DF382 /* EventEngineTimerTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = EventEngineTimerTests.mm; path = CoreTests/EventEngineTimerTests.mm; sourceTree = "<group>"; }; |
||||
BC32E593C6B40EAC11EDD29E /* Pods-CoreTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-CoreTests.release.xcconfig"; path = "Target Support Files/Pods-CoreTests/Pods-CoreTests.release.xcconfig"; sourceTree = "<group>"; }; |
||||
CC2F5D65EA0FAB6B5347995A /* Pods-CoreTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-CoreTests.debug.xcconfig"; path = "Target Support Files/Pods-CoreTests/Pods-CoreTests.debug.xcconfig"; sourceTree = "<group>"; }; |
||||
CC79A999099057E7806F7A4E /* libPods-CoreTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-CoreTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; |
||||
/* End PBXFileReference section */ |
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */ |
||||
74EC3A7227081130005DF382 /* Frameworks */ = { |
||||
isa = PBXFrameworksBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
AE7618A265DF8B92E93BDFFC /* libPods-CoreTests.a in Frameworks */, |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXFrameworksBuildPhase section */ |
||||
|
||||
/* Begin PBXGroup section */ |
||||
3CD5ACD34F6BAA337C3076B2 /* Frameworks */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
CC79A999099057E7806F7A4E /* libPods-CoreTests.a */, |
||||
); |
||||
name = Frameworks; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
653269393ADB5A6623AFDD4C /* Pods */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
CC2F5D65EA0FAB6B5347995A /* Pods-CoreTests.debug.xcconfig */, |
||||
BC32E593C6B40EAC11EDD29E /* Pods-CoreTests.release.xcconfig */, |
||||
); |
||||
path = Pods; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
74EC3A512708112C005DF382 = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
74EC3A942708149C005DF382 /* EventEngineTimerTests.mm */, |
||||
74EC3A5B2708112C005DF382 /* Products */, |
||||
653269393ADB5A6623AFDD4C /* Pods */, |
||||
3CD5ACD34F6BAA337C3076B2 /* Frameworks */, |
||||
); |
||||
sourceTree = "<group>"; |
||||
}; |
||||
74EC3A5B2708112C005DF382 /* Products */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
74EC3A7527081130005DF382 /* CoreTests.xctest */, |
||||
); |
||||
name = Products; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
/* End PBXGroup section */ |
||||
|
||||
/* Begin PBXNativeTarget section */ |
||||
74EC3A7427081130005DF382 /* CoreTests */ = { |
||||
isa = PBXNativeTarget; |
||||
buildConfigurationList = 74EC3A8C27081130005DF382 /* Build configuration list for PBXNativeTarget "CoreTests" */; |
||||
buildPhases = ( |
||||
CCD5D09951B532EA7E1165AD /* [CP] Check Pods Manifest.lock */, |
||||
74EC3A7127081130005DF382 /* Sources */, |
||||
74EC3A7227081130005DF382 /* Frameworks */, |
||||
74EC3A7327081130005DF382 /* Resources */, |
||||
); |
||||
buildRules = ( |
||||
); |
||||
dependencies = ( |
||||
); |
||||
name = CoreTests; |
||||
productName = CoreTestsTests; |
||||
productReference = 74EC3A7527081130005DF382 /* CoreTests.xctest */; |
||||
productType = "com.apple.product-type.bundle.unit-test"; |
||||
}; |
||||
/* End PBXNativeTarget section */ |
||||
|
||||
/* Begin PBXProject section */ |
||||
74EC3A522708112C005DF382 /* Project object */ = { |
||||
isa = PBXProject; |
||||
attributes = { |
||||
BuildIndependentTargetsInParallel = 1; |
||||
LastUpgradeCheck = 1300; |
||||
TargetAttributes = { |
||||
74EC3A7427081130005DF382 = { |
||||
CreatedOnToolsVersion = 13.0; |
||||
}; |
||||
}; |
||||
}; |
||||
buildConfigurationList = 74EC3A552708112C005DF382 /* Build configuration list for PBXProject "CoreTests" */; |
||||
compatibilityVersion = "Xcode 13.0"; |
||||
developmentRegion = en; |
||||
hasScannedForEncodings = 0; |
||||
knownRegions = ( |
||||
en, |
||||
Base, |
||||
); |
||||
mainGroup = 74EC3A512708112C005DF382; |
||||
productRefGroup = 74EC3A5B2708112C005DF382 /* Products */; |
||||
projectDirPath = ""; |
||||
projectRoot = ""; |
||||
targets = ( |
||||
74EC3A7427081130005DF382 /* CoreTests */, |
||||
); |
||||
}; |
||||
/* End PBXProject section */ |
||||
|
||||
/* Begin PBXResourcesBuildPhase section */ |
||||
74EC3A7327081130005DF382 /* Resources */ = { |
||||
isa = PBXResourcesBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXResourcesBuildPhase section */ |
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */ |
||||
CCD5D09951B532EA7E1165AD /* [CP] Check Pods Manifest.lock */ = { |
||||
isa = PBXShellScriptBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
inputFileListPaths = ( |
||||
); |
||||
inputPaths = ( |
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock", |
||||
"${PODS_ROOT}/Manifest.lock", |
||||
); |
||||
name = "[CP] Check Pods Manifest.lock"; |
||||
outputFileListPaths = ( |
||||
); |
||||
outputPaths = ( |
||||
"$(DERIVED_FILE_DIR)/Pods-CoreTests-checkManifestLockResult.txt", |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
shellPath = /bin/sh; |
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; |
||||
showEnvVarsInLog = 0; |
||||
}; |
||||
/* End PBXShellScriptBuildPhase section */ |
||||
|
||||
/* Begin PBXSourcesBuildPhase section */ |
||||
74EC3A7127081130005DF382 /* Sources */ = { |
||||
isa = PBXSourcesBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
74EC3A952708149C005DF382 /* EventEngineTimerTests.mm in Sources */, |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXSourcesBuildPhase section */ |
||||
|
||||
/* Begin XCBuildConfiguration section */ |
||||
74EC3A8727081130005DF382 /* Debug */ = { |
||||
isa = XCBuildConfiguration; |
||||
buildSettings = { |
||||
ALWAYS_SEARCH_USER_PATHS = NO; |
||||
CLANG_ANALYZER_NONNULL = YES; |
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; |
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; |
||||
CLANG_CXX_LIBRARY = "libc++"; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CLANG_ENABLE_OBJC_ARC = YES; |
||||
CLANG_ENABLE_OBJC_WEAK = YES; |
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||
CLANG_WARN_BOOL_CONVERSION = YES; |
||||
CLANG_WARN_COMMA = YES; |
||||
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES; |
||||
CLANG_WARN_EMPTY_BODY = YES; |
||||
CLANG_WARN_ENUM_CONVERSION = YES; |
||||
CLANG_WARN_INFINITE_RECURSION = YES; |
||||
CLANG_WARN_INT_CONVERSION = YES; |
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; |
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; |
||||
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||
COPY_PHASE_STRIP = NO; |
||||
DEBUG_INFORMATION_FORMAT = dwarf; |
||||
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||
ENABLE_TESTABILITY = YES; |
||||
GCC_C_LANGUAGE_STANDARD = gnu11; |
||||
GCC_DYNAMIC_NO_PIC = NO; |
||||
GCC_NO_COMMON_BLOCKS = YES; |
||||
GCC_OPTIMIZATION_LEVEL = 0; |
||||
GCC_PREPROCESSOR_DEFINITIONS = ( |
||||
"DEBUG=1", |
||||
"$(inherited)", |
||||
); |
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||
GCC_WARN_UNUSED_FUNCTION = YES; |
||||
GCC_WARN_UNUSED_VARIABLE = YES; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0; |
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; |
||||
MTL_FAST_MATH = YES; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
SDKROOT = iphoneos; |
||||
USER_HEADER_SEARCH_PATHS = ""; |
||||
}; |
||||
name = Debug; |
||||
}; |
||||
74EC3A8827081130005DF382 /* Release */ = { |
||||
isa = XCBuildConfiguration; |
||||
buildSettings = { |
||||
ALWAYS_SEARCH_USER_PATHS = NO; |
||||
CLANG_ANALYZER_NONNULL = YES; |
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; |
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; |
||||
CLANG_CXX_LIBRARY = "libc++"; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CLANG_ENABLE_OBJC_ARC = YES; |
||||
CLANG_ENABLE_OBJC_WEAK = YES; |
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||
CLANG_WARN_BOOL_CONVERSION = YES; |
||||
CLANG_WARN_COMMA = YES; |
||||
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES; |
||||
CLANG_WARN_EMPTY_BODY = YES; |
||||
CLANG_WARN_ENUM_CONVERSION = YES; |
||||
CLANG_WARN_INFINITE_RECURSION = YES; |
||||
CLANG_WARN_INT_CONVERSION = YES; |
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; |
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; |
||||
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||
COPY_PHASE_STRIP = NO; |
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; |
||||
ENABLE_NS_ASSERTIONS = NO; |
||||
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||
GCC_C_LANGUAGE_STANDARD = gnu11; |
||||
GCC_NO_COMMON_BLOCKS = YES; |
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||
GCC_WARN_UNUSED_FUNCTION = YES; |
||||
GCC_WARN_UNUSED_VARIABLE = YES; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0; |
||||
MTL_ENABLE_DEBUG_INFO = NO; |
||||
MTL_FAST_MATH = YES; |
||||
SDKROOT = iphoneos; |
||||
USER_HEADER_SEARCH_PATHS = ""; |
||||
VALIDATE_PRODUCT = YES; |
||||
}; |
||||
name = Release; |
||||
}; |
||||
74EC3A8D27081130005DF382 /* Debug */ = { |
||||
isa = XCBuildConfiguration; |
||||
baseConfigurationReference = CC2F5D65EA0FAB6B5347995A /* Pods-CoreTests.debug.xcconfig */; |
||||
buildSettings = { |
||||
CODE_SIGN_STYLE = Automatic; |
||||
CURRENT_PROJECT_VERSION = 1; |
||||
GENERATE_INFOPLIST_FILE = YES; |
||||
HEADER_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"\"${PODS_ROOT}/Headers/Public\"", |
||||
"\"${PODS_ROOT}/Headers/Public/BoringSSL-GRPC\"", |
||||
"\"${PODS_ROOT}/Headers/Public/Libuv-gRPC\"", |
||||
"\"${PODS_ROOT}/Headers/Public/abseil\"", |
||||
"\"${PODS_ROOT}/Headers/Public/gRPC-Core\"", |
||||
); |
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0; |
||||
LD_RUNPATH_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"@executable_path/Frameworks", |
||||
"@loader_path/Frameworks", |
||||
); |
||||
MARKETING_VERSION = 1.0; |
||||
PRODUCT_BUNDLE_IDENTIFIER = com.google.CoreTests; |
||||
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||
SWIFT_EMIT_LOC_STRINGS = NO; |
||||
TARGETED_DEVICE_FAMILY = "1,2"; |
||||
USER_HEADER_SEARCH_PATHS = "\"$(PODS_ROOT)/../../../../../\""; |
||||
}; |
||||
name = Debug; |
||||
}; |
||||
74EC3A8E27081130005DF382 /* Release */ = { |
||||
isa = XCBuildConfiguration; |
||||
baseConfigurationReference = BC32E593C6B40EAC11EDD29E /* Pods-CoreTests.release.xcconfig */; |
||||
buildSettings = { |
||||
CODE_SIGN_STYLE = Automatic; |
||||
CURRENT_PROJECT_VERSION = 1; |
||||
GENERATE_INFOPLIST_FILE = YES; |
||||
HEADER_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"\"${PODS_ROOT}/Headers/Public\"", |
||||
"\"${PODS_ROOT}/Headers/Public/BoringSSL-GRPC\"", |
||||
"\"${PODS_ROOT}/Headers/Public/Libuv-gRPC\"", |
||||
"\"${PODS_ROOT}/Headers/Public/abseil\"", |
||||
"\"${PODS_ROOT}/Headers/Public/gRPC-Core\"", |
||||
); |
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0; |
||||
LD_RUNPATH_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"@executable_path/Frameworks", |
||||
"@loader_path/Frameworks", |
||||
); |
||||
MARKETING_VERSION = 1.0; |
||||
PRODUCT_BUNDLE_IDENTIFIER = com.google.CoreTests; |
||||
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||
SWIFT_EMIT_LOC_STRINGS = NO; |
||||
TARGETED_DEVICE_FAMILY = "1,2"; |
||||
USER_HEADER_SEARCH_PATHS = "\"$(PODS_ROOT)/../../../../../\""; |
||||
}; |
||||
name = Release; |
||||
}; |
||||
/* End XCBuildConfiguration section */ |
||||
|
||||
/* Begin XCConfigurationList section */ |
||||
74EC3A552708112C005DF382 /* Build configuration list for PBXProject "CoreTests" */ = { |
||||
isa = XCConfigurationList; |
||||
buildConfigurations = ( |
||||
74EC3A8727081130005DF382 /* Debug */, |
||||
74EC3A8827081130005DF382 /* Release */, |
||||
); |
||||
defaultConfigurationIsVisible = 0; |
||||
defaultConfigurationName = Release; |
||||
}; |
||||
74EC3A8C27081130005DF382 /* Build configuration list for PBXNativeTarget "CoreTests" */ = { |
||||
isa = XCConfigurationList; |
||||
buildConfigurations = ( |
||||
74EC3A8D27081130005DF382 /* Debug */, |
||||
74EC3A8E27081130005DF382 /* Release */, |
||||
); |
||||
defaultConfigurationIsVisible = 0; |
||||
defaultConfigurationName = Release; |
||||
}; |
||||
/* End XCConfigurationList section */ |
||||
}; |
||||
rootObject = 74EC3A522708112C005DF382 /* Project object */; |
||||
} |
@ -0,0 +1,51 @@ |
||||
/* |
||||
* |
||||
* Copyright 2021 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0 |
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#import <XCTest/XCTest.h> |
||||
|
||||
#include <absl/functional/bind_front.h> |
||||
#include <absl/time/time.h> |
||||
|
||||
#include <grpc/event_engine/event_engine.h> |
||||
#include <grpc/grpc.h> |
||||
#include <grpc/test/core/util/test_config.h> |
||||
|
||||
@interface EventEngineTimerTests : XCTestCase |
||||
|
||||
@end |
||||
|
||||
@implementation EventEngineTimerTests |
||||
|
||||
+ (void)setUp { |
||||
grpc_init(); |
||||
} |
||||
|
||||
+ (void)tearDown { |
||||
grpc_shutdown(); |
||||
} |
||||
|
||||
- (void)setUp { |
||||
} |
||||
|
||||
- (void)tearDown { |
||||
} |
||||
|
||||
- (void)testDummy { |
||||
} |
||||
|
||||
@end |
@ -0,0 +1,37 @@ |
||||
source 'https://github.com/CocoaPods/Specs.git' |
||||
|
||||
install! 'cocoapods', :deterministic_uuids => false |
||||
|
||||
GRPC_LOCAL_SRC = '../../../..' |
||||
|
||||
def grpc_deps |
||||
pod 'gRPC-Core', :path => GRPC_LOCAL_SRC |
||||
pod 'gRPC-Core/Tests', :path => GRPC_LOCAL_SRC |
||||
end |
||||
|
||||
target 'CoreTests' do |
||||
platform :ios, '9.0' |
||||
grpc_deps |
||||
end |
||||
|
||||
pre_install do |installer| |
||||
grpc_core_spec = installer.pod_targets.find{|t| t.name.start_with?('gRPC-Core')}.root_spec |
||||
src_root = "$(PODS_ROOT)/../#{GRPC_LOCAL_SRC}" |
||||
grpc_core_spec.pod_target_xcconfig = { |
||||
'GRPC_SRC_ROOT' => src_root, |
||||
'HEADER_SEARCH_PATHS' => '"$(inherited)" "$(GRPC_SRC_ROOT)/include"', |
||||
'USER_HEADER_SEARCH_PATHS' => '"$(GRPC_SRC_ROOT)"', |
||||
'USE_HEADERMAP' => 'NO', |
||||
'ALWAYS_SEARCH_USER_PATHS' => 'NO', |
||||
} |
||||
end |
||||
|
||||
post_install do |installer| |
||||
installer.pods_project.targets.each do |target| |
||||
if target.name == "CoreTests" |
||||
target.build_configurations.each do |config| |
||||
config.build_settings['USER_HEADER_SEARCH_PATHS'] = "$(inherited) $(PODS_ROOT)/../#{GRPC_LOCAL_SRC}" |
||||
end |
||||
end |
||||
end |
||||
end |
@ -0,0 +1,153 @@ |
||||
%YAML 1.2 |
||||
--- | |
||||
# This file has been automatically generated from a template file. |
||||
# Please make modifications to |
||||
# `templates/src/objective-c/libuv-gRPC.podspec.template` instead. This |
||||
# file can be regenerated from the template by running |
||||
# `tools/buildgen/generate_projects.sh`. |
||||
|
||||
# Libuv CocoaPods podspec |
||||
|
||||
# Copyright 2021, Google Inc. |
||||
# All rights reserved. |
||||
# |
||||
# Redistribution and use in source and binary forms, with or without |
||||
# modification, are permitted provided that the following conditions are |
||||
# met: |
||||
# |
||||
# * Redistributions of source code must retain the above copyright |
||||
# notice, this list of conditions and the following disclaimer. |
||||
# * Redistributions in binary form must reproduce the above |
||||
# copyright notice, this list of conditions and the following disclaimer |
||||
# in the documentation and/or other materials provided with the |
||||
# distribution. |
||||
# * Neither the name of Google Inc. nor the names of its |
||||
# contributors may be used to endorse or promote products derived from |
||||
# this software without specific prior written permission. |
||||
# |
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
|
||||
Pod::Spec.new do |spec| |
||||
|
||||
pod_version = "0.0.10" |
||||
libuv_version = "1.37.0" |
||||
|
||||
spec.name = "Libuv-gRPC" |
||||
spec.version = pod_version |
||||
spec.summary = "gRPC-Only Libuv Pod" |
||||
|
||||
spec.description = <<-DESC |
||||
Libuv pod intended to be used only by gRPC iOS. libuv is a multi-platform |
||||
support library with a focus on asynchronous I/O. It was primarily developed |
||||
for use by Node.js, but it's also used by Luvit, Julia, pyuv, and others. |
||||
DESC |
||||
|
||||
spec.homepage = "https://libuv.org/" |
||||
|
||||
spec.license = { :type => 'Mixed', :file => 'LICENSE' } |
||||
spec.author = "libuv" |
||||
|
||||
# When using multiple platforms |
||||
spec.ios.deployment_target = '9.0' |
||||
spec.osx.deployment_target = '10.10' |
||||
spec.tvos.deployment_target = '10.0' |
||||
spec.watchos.deployment_target = '4.0' |
||||
|
||||
spec.source = { :git => "https://github.com/libuv/libuv.git", :tag => "v#{libuv_version}" } |
||||
|
||||
name = 'uv' |
||||
spec.module_name = name |
||||
spec.header_mappings_dir = 'include' |
||||
spec.header_dir = name |
||||
|
||||
spec.subspec 'Interface' do |ss| |
||||
ss.header_mappings_dir = 'include' |
||||
ss.source_files = "include/uv.h", |
||||
"include/uv/errno.h", |
||||
"include/uv/threadpool.h", |
||||
"include/uv/version.h", |
||||
"include/uv/tree.h", |
||||
"include/uv/unix.h", |
||||
"include/uv/darwin.h" |
||||
end |
||||
|
||||
spec.subspec 'Implementation' do |ss| |
||||
ss.header_mappings_dir = 'src' |
||||
ss.source_files = |
||||
"src/fs-poll.c", |
||||
"src/idna.c", |
||||
"src/inet.c", |
||||
"src/strscpy.c", |
||||
"src/threadpool.c", |
||||
"src/timer.c", |
||||
"src/uv-data-getter-setters.c", |
||||
"src/uv-common.c", |
||||
"src/version.c", |
||||
"src/unix/async.c", |
||||
"src/unix/core.c", |
||||
"src/unix/dl.c", |
||||
"src/unix/fs.c", |
||||
"src/unix/getaddrinfo.c", |
||||
"src/unix/getnameinfo.c", |
||||
"src/unix/loop.c", |
||||
"src/unix/loop-watcher.c", |
||||
"src/unix/pipe.c", |
||||
"src/unix/poll.c", |
||||
"src/unix/process.c", |
||||
"src/unix/signal.c", |
||||
"src/unix/stream.c", |
||||
"src/unix/tcp.c", |
||||
"src/unix/thread.c", |
||||
"src/unix/tty.c", |
||||
"src/unix/udp.c", |
||||
"src/unix/bsd-ifaddrs.c", |
||||
"src/unix/darwin.c", |
||||
"src/unix/fsevents.c", |
||||
"src/unix/kqueue.c", |
||||
"src/unix/darwin-proctitle.c", |
||||
"src/unix/proctitle.c", |
||||
"src/heap-inl.h", |
||||
"src/idna.h", |
||||
"src/queue.h", |
||||
"src/strscpy.h", |
||||
"src/uv-common.h", |
||||
"src/unix/atomic-ops.h", |
||||
"src/unix/internal.h", |
||||
"src/unix/spinlock.h" |
||||
|
||||
ss.dependency "#{spec.name}/Interface", pod_version |
||||
end |
||||
|
||||
spec.requires_arc = false |
||||
|
||||
spec.pod_target_xcconfig = { |
||||
'HEADER_SEARCH_PATHS' => '"$(inherited)" "$(PODS_TARGET_SRCROOT)/include"', |
||||
'USER_HEADER_SEARCH_PATHS' => '"$(PODS_TARGET_SRCROOT)" "$(PODS_TARGET_SRCROOT)/src" "$(PODS_TARGET_SRCROOT)/include"', |
||||
'CLANG_WARN_STRICT_PROTOTYPES' => 'NO', |
||||
'CLANG_WARN_DOCUMENTATION_COMMENTS' => 'NO', |
||||
'USE_HEADERMAP' => 'NO', |
||||
'ALWAYS_SEARCH_USER_PATHS' => 'NO', |
||||
'GCC_TREAT_WARNINGS_AS_ERRORS' => 'NO', |
||||
'GCC_WARN_INHIBIT_ALL_WARNINGS' => 'YES' |
||||
} |
||||
|
||||
spec.libraries = 'c++' |
||||
|
||||
spec.compiler_flags = |
||||
"-D_LARGEFILE_SOURCE", |
||||
"-D_FILE_OFFSET_BITS=64", |
||||
"-D_GNU_SOURCE", |
||||
"-D_DARWIN_USE_64_BIT_INODE=1", |
||||
"-D_DARWIN_UNLIMITED_SELECT=1" |
||||
|
||||
end |
Loading…
Reference in new issue