mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-07-24 12:10:49 +00:00
Cleanup
This commit is contained in:
parent
d1ad1668c4
commit
504cb1d596
@ -25,7 +25,6 @@ def transform_cache_host_into_http(grpc_url):
|
||||
|
||||
return transformed_url
|
||||
|
||||
|
||||
def calculate_sha256(file_path):
|
||||
sha256_hash = hashlib.sha256()
|
||||
with open(file_path, "rb") as file:
|
||||
@ -37,6 +36,8 @@ def calculate_sha256(file_path):
|
||||
def resolve_cache_host(cache_host):
|
||||
if cache_host is None:
|
||||
return None
|
||||
if cache_host.startswith("file://"):
|
||||
return None
|
||||
if "@auto" in cache_host:
|
||||
host_parts = cache_host.split("@auto")
|
||||
host_left_part = host_parts[0]
|
||||
@ -44,7 +45,18 @@ def resolve_cache_host(cache_host):
|
||||
return f"{host_left_part}localhost{host_right_part}"
|
||||
return cache_host
|
||||
|
||||
def locate_bazel(base_path, cache_host):
|
||||
def resolve_cache_path(cache_host_or_path, cache_dir):
|
||||
if cache_dir is not None:
|
||||
return cache_dir
|
||||
if cache_host_or_path is not None:
|
||||
if cache_host_or_path.startswith("file://"):
|
||||
return cache_host_or_path.replace("file://", "")
|
||||
return None
|
||||
|
||||
def cache_cas_name(digest):
|
||||
return (digest[:2], digest)
|
||||
|
||||
def locate_bazel(base_path, cache_host_or_path, cache_dir):
|
||||
build_input_dir = '{}/build-input'.format(base_path)
|
||||
if not os.path.isdir(build_input_dir):
|
||||
os.mkdir(build_input_dir)
|
||||
@ -57,7 +69,8 @@ def locate_bazel(base_path, cache_host):
|
||||
bazel_name = 'bazel-{version}-{arch}'.format(version=versions.bazel_version, arch=arch)
|
||||
bazel_path = '{}/build-input/{}'.format(base_path, bazel_name)
|
||||
|
||||
resolved_cache_host = resolve_cache_host(cache_host)
|
||||
resolved_cache_host = resolve_cache_host(cache_host_or_path)
|
||||
resolved_cache_path = resolve_cache_path(cache_host_or_path, cache_dir)
|
||||
|
||||
if not os.path.isfile(bazel_path):
|
||||
if resolved_cache_host is not None and versions.bazel_version_sha256 is not None:
|
||||
@ -77,6 +90,11 @@ def locate_bazel(base_path, cache_host):
|
||||
test_sha256 = calculate_sha256(temp_output_file.name)
|
||||
if test_sha256 == versions.bazel_version_sha256:
|
||||
shutil.copyfile(temp_output_file.name, bazel_path)
|
||||
elif resolved_cache_path is not None:
|
||||
(cache_cas_id, cache_cas_name) = cache_cas_name(versions.bazel_version_sha256)
|
||||
cached_path = '{}/cas/{}/{}'.format(resolved_cache_path, cache_cas_id, cache_cas_name)
|
||||
if os.path.isfile(cached_path):
|
||||
shutil.copyfile(cached_path, bazel_path)
|
||||
|
||||
|
||||
if os.path.isfile(bazel_path) and versions.bazel_version_sha256 is not None:
|
||||
@ -118,6 +136,11 @@ def locate_bazel(base_path, cache_host):
|
||||
hash=versions.bazel_version_sha256
|
||||
)
|
||||
], check_result=False)
|
||||
elif resolved_cache_path is not None:
|
||||
(cache_cas_id, cache_cas_name) = cache_cas_name(versions.bazel_version_sha256)
|
||||
cached_path = '{}/cas/{}/{}'.format(resolved_cache_path, cache_cas_id, cache_cas_name)
|
||||
os.makedirs(os.path.dirname(cached_path), exist_ok=True)
|
||||
shutil.copyfile(bazel_path, cached_path)
|
||||
|
||||
if not os.access(bazel_path, os.X_OK):
|
||||
st = os.stat(bazel_path)
|
||||
|
@ -1282,7 +1282,7 @@ if __name__ == '__main__':
|
||||
|
||||
bazel_path = None
|
||||
if args.bazel is None:
|
||||
bazel_path = locate_bazel(base_path=os.getcwd(), cache_host=args.cacheHost)
|
||||
bazel_path = locate_bazel(base_path=os.getcwd(), cache_host_or_path=args.cacheHost, cache_dir=args.cacheDir)
|
||||
else:
|
||||
bazel_path = args.bazel
|
||||
|
||||
|
@ -27,7 +27,7 @@ class TartVMManager:
|
||||
def __init__(self):
|
||||
self.active_vms: Dict[str, Dict] = {}
|
||||
|
||||
def create_vm(self, session_id: str, image: str) -> Dict:
|
||||
def create_vm(self, session_id: str, image: str, mount_directories: Dict[str, str]) -> Dict:
|
||||
"""Create a new ephemeral VM for the session"""
|
||||
vm_name = f"telegrambuild-{session_id}"
|
||||
|
||||
@ -53,9 +53,10 @@ class TartVMManager:
|
||||
def run_vm():
|
||||
"""Run the VM in background thread"""
|
||||
try:
|
||||
subprocess.run([
|
||||
"tart", "run", vm_name
|
||||
], check=True, capture_output=False, text=True)
|
||||
run_arguments = ["tart", "run", vm_name]
|
||||
for mount_directory in mount_directories.keys():
|
||||
run_arguments.append(f"--dir={mount_directory}:{mount_directories[mount_directory]}")
|
||||
subprocess.run(run_arguments, check=True, capture_output=False, text=True)
|
||||
except subprocess.CalledProcessError as e:
|
||||
logger.error(f"VM {vm_name} exited with error: {e}")
|
||||
except Exception as e:
|
||||
@ -462,10 +463,11 @@ class TartBuildSession(RemoteBuildSessionInterface):
|
||||
class TartBuildSessionContext(RemoteBuildSessionContextInterface):
|
||||
"""Context manager for Tart VM sessions"""
|
||||
|
||||
def __init__(self, vm_manager: TartVMManager, image: str, session_id: str):
|
||||
def __init__(self, vm_manager: TartVMManager, image: str, session_id: str, mount_directories: Dict[str, str]):
|
||||
self.vm_manager = vm_manager
|
||||
self.image = image
|
||||
self.session_id = session_id
|
||||
self.mount_directories = mount_directories
|
||||
self.session = None
|
||||
|
||||
def __enter__(self) -> TartBuildSession:
|
||||
@ -473,7 +475,7 @@ class TartBuildSessionContext(RemoteBuildSessionContextInterface):
|
||||
print(f"Creating VM session with image: {self.image}")
|
||||
|
||||
# Create the VM
|
||||
self.vm_manager.create_vm(session_id=self.session_id, image=self.image)
|
||||
self.vm_manager.create_vm(session_id=self.session_id, image=self.image, mount_directories=self.mount_directories)
|
||||
|
||||
print(f"✓ VM session created: {self.session_id}")
|
||||
|
||||
@ -502,12 +504,12 @@ class TartBuild(RemoteBuildInterface):
|
||||
def __init__(self):
|
||||
self.vm_manager = TartVMManager()
|
||||
|
||||
def session(self, macos_version: str, xcode_version: str) -> TartBuildSessionContext:
|
||||
def session(self, macos_version: str, xcode_version: str, mount_directories: Dict[str, str]) -> TartBuildSessionContext:
|
||||
image_name = f"macos-{macos_version}-xcode-{xcode_version}"
|
||||
print(f"Image name: {image_name}")
|
||||
session_id = str(uuid.uuid4())
|
||||
|
||||
return TartBuildSessionContext(self.vm_manager, image_name, session_id)
|
||||
return TartBuildSessionContext(self.vm_manager, image_name, session_id, mount_directories)
|
||||
|
||||
def create_rsync_ignore_file(exclude_patterns: List[str] = []):
|
||||
"""Create a temporary rsync ignore file with exclusion patterns"""
|
||||
@ -551,7 +553,12 @@ def remote_build_tart(macos_version, bazel_cache_host, configuration, build_inpu
|
||||
transient_data_dir = '{}/transient-data'.format(buildbox_dir)
|
||||
os.makedirs(transient_data_dir, exist_ok=True)
|
||||
|
||||
with TartBuild().session(macos_version=macos_version, xcode_version=xcode_version) as session:
|
||||
mount_directories = {}
|
||||
if bazel_cache_host is not None and bazel_cache_host.startswith("file://"):
|
||||
local_path = bazel_cache_host.replace("file://", "")
|
||||
mount_directories["bazel-cache"] = local_path
|
||||
|
||||
with TartBuild().session(macos_version=macos_version, xcode_version=xcode_version, mount_directories=mount_directories) as session:
|
||||
print('Uploading data to VM...')
|
||||
session.upload_directory(local_path=build_input_data_path, remote_path="telegram-build-input")
|
||||
|
||||
@ -576,20 +583,26 @@ def remote_build_tart(macos_version, bazel_cache_host, configuration, build_inpu
|
||||
python3 build-system/Make/ImportCertificates.py --path $HOME/telegram-build-input/certs
|
||||
'''
|
||||
|
||||
if "@auto" in bazel_cache_host:
|
||||
host_parts = bazel_cache_host.split("@auto")
|
||||
host_left_part = host_parts[0]
|
||||
host_right_part = host_parts[1]
|
||||
guest_host_command = "export CACHE_HOST_IP=\"$(netstat -nr | grep default | head -n 1 | awk '{print $2}')\""
|
||||
guest_build_sh += guest_host_command + "\n"
|
||||
guest_host_string = f"export CACHE_HOST=\"{host_left_part}$CACHE_HOST_IP{host_right_part}\""
|
||||
guest_build_sh += guest_host_string + "\n"
|
||||
else:
|
||||
guest_build_sh += f"export CACHE_HOST=\"{bazel_cache_host}\"\n"
|
||||
if bazel_cache_host is not None:
|
||||
if bazel_cache_host.startswith("file://"):
|
||||
pass
|
||||
elif "@auto" in bazel_cache_host:
|
||||
host_parts = bazel_cache_host.split("@auto")
|
||||
host_left_part = host_parts[0]
|
||||
host_right_part = host_parts[1]
|
||||
guest_host_command = "export CACHE_HOST_IP=\"$(netstat -nr | grep default | head -n 1 | awk '{print $2}')\""
|
||||
guest_build_sh += guest_host_command + "\n"
|
||||
guest_host_string = f"export CACHE_HOST=\"{host_left_part}$CACHE_HOST_IP{host_right_part}\""
|
||||
guest_build_sh += guest_host_string + "\n"
|
||||
else:
|
||||
guest_build_sh += f"export CACHE_HOST=\"{bazel_cache_host}\"\n"
|
||||
|
||||
guest_build_sh += 'python3 build-system/Make/Make.py \\'
|
||||
if bazel_cache_host is not None:
|
||||
guest_build_sh += '--cacheHost="$CACHE_HOST" \\'
|
||||
if bazel_cache_host.startswith("file://"):
|
||||
guest_build_sh += '--cacheDir="/Volumes/My Shared Files/bazel-cache" \\'
|
||||
else:
|
||||
guest_build_sh += '--cacheHost="$CACHE_HOST" \\'
|
||||
guest_build_sh += 'build \\'
|
||||
guest_build_sh += '--lock \\'
|
||||
guest_build_sh += '--buildNumber={} \\'.format(build_number)
|
||||
|
@ -91,13 +91,30 @@ for name, module in sorted(modules.items()):
|
||||
if module_type == "objc_library" or module_type == "cc_library" or module_type == "swift_library":
|
||||
combined_lines.append(" .target(")
|
||||
combined_lines.append(" name: \"%s\"," % name)
|
||||
|
||||
# Always create a symlinked directory for every module
|
||||
|
||||
relative_module_path = module["path"]
|
||||
|
||||
relative_module_path = module["path"] + "/Module_" + name
|
||||
module_directory = spm_files_dir + "/" + relative_module_path
|
||||
os.makedirs(module_directory, exist_ok=True)
|
||||
|
||||
module_sources_directory = module_directory + "/Sources"
|
||||
if not os.path.exists(module_sources_directory):
|
||||
os.makedirs(module_sources_directory)
|
||||
|
||||
module_public_includes_directory = module_directory + "/PublicIncludes"
|
||||
if not os.path.exists(module_public_includes_directory):
|
||||
os.makedirs(module_public_includes_directory)
|
||||
|
||||
module_public_headers_prefix = None
|
||||
if len(module["includes"]) > 1:
|
||||
print("{}: Multiple includes are not yet supported: {}".format(name, module["includes"]))
|
||||
sys.exit(1)
|
||||
elif len(module["includes"]) == 1:
|
||||
for include_directory in module["includes"]:
|
||||
if include_directory != ".":
|
||||
#print("{}: Include directory: {}".format(name, include_directory))
|
||||
module_public_headers_prefix = include_directory
|
||||
break
|
||||
|
||||
combined_lines.append(" dependencies: [")
|
||||
for dep in module["deps"]:
|
||||
if not parsed_modules[dep]["is_empty"]:
|
||||
@ -129,10 +146,20 @@ for name, module in sorted(modules.items()):
|
||||
source_file_name = source[len(module["path"]) + 1:]
|
||||
|
||||
# Create symlink for this source file
|
||||
symlink_location = os.path.join(module_directory, source_file_name)
|
||||
source_dir = os.path.dirname(symlink_location)
|
||||
if source_dir and not os.path.exists(source_dir):
|
||||
os.makedirs(source_dir)
|
||||
is_public_include = False
|
||||
if module_public_headers_prefix is not None:
|
||||
if source_file_name.startswith(module_public_headers_prefix):
|
||||
symlink_location = os.path.join(module_public_includes_directory, source_file_name[len(module_public_headers_prefix) + 1:])
|
||||
#print("{}: Public include: {}".format(source_file_name, symlink_location))
|
||||
is_public_include = True
|
||||
|
||||
if not is_public_include:
|
||||
symlink_location = os.path.join(module_sources_directory, source_file_name)
|
||||
|
||||
# Create parent directory for symlink if it doesn't exist
|
||||
symlink_parent = os.path.dirname(symlink_location)
|
||||
if not os.path.exists(symlink_parent):
|
||||
os.makedirs(symlink_parent)
|
||||
|
||||
# Calculate relative path from symlink back to original file
|
||||
# Count directory depth: spm-files/module_name/... -> workspace root
|
||||
@ -143,32 +170,24 @@ for name, module in sorted(modules.items()):
|
||||
# Create the symlink
|
||||
if os.path.lexists(symlink_location):
|
||||
os.unlink(symlink_location)
|
||||
if "arm_arch64_common_macro" in symlink_target:
|
||||
print("Creating symlink from {} to {}".format(symlink_target, symlink_location))
|
||||
os.symlink(symlink_target, symlink_location)
|
||||
|
||||
# Add to sources list (exclude certain file types)
|
||||
if not source.endswith(('.h', '.hpp', '.a', '.inc')):
|
||||
combined_lines.append(" \"%s\"," % source_file_name)
|
||||
combined_lines.append(" \"%s\"," % ("Sources/" + source_file_name))
|
||||
|
||||
combined_lines.append(" ],")
|
||||
if module_type == "objc_library" or module_type == "cc_library":
|
||||
if len(module["includes"]) == 0:
|
||||
# Create dummy headers directory if none specified
|
||||
dummy_headers_path = os.path.join(module_directory, "dummy-headers-path")
|
||||
if not os.path.exists(dummy_headers_path):
|
||||
os.makedirs(dummy_headers_path)
|
||||
combined_lines.append(" publicHeadersPath: \"dummy-headers-path\",")
|
||||
elif len(module["includes"]) == 1:
|
||||
combined_lines.append(" publicHeadersPath: \"%s\"," % module["includes"][0])
|
||||
else:
|
||||
combined_lines.append(" publicHeadersPath: \"PublicIncludes\",")
|
||||
|
||||
if len(module["includes"]) > 1:
|
||||
print("{}: Multiple includes are not yet supported: {}".format(name, module["includes"]))
|
||||
sys.exit(1)
|
||||
|
||||
defines = module.get("defines", [])
|
||||
copts = module.get("copts", [])
|
||||
cxxopts = module.get("cxxopts", [])
|
||||
|
||||
if defines or copts:
|
||||
if defines or copts or (module_public_headers_prefix is not None):
|
||||
combined_lines.append(" cSettings: [")
|
||||
if defines:
|
||||
for define in defines:
|
||||
@ -182,7 +201,32 @@ for name, module in sorted(modules.items()):
|
||||
for flag in copts:
|
||||
escaped_flag = escape_swift_string_literal_component(flag)
|
||||
combined_lines.append(f' "{escaped_flag}",')
|
||||
combined_lines.append(" ])")
|
||||
if escaped_flag.startswith("-I"):
|
||||
include_path = escaped_flag[2:]
|
||||
print("{}: Include path: {}".format(name, include_path))
|
||||
for another_module_name, another_module in sorted(modules.items()):
|
||||
another_module_path = another_module["path"]
|
||||
if include_path.startswith(another_module_path):
|
||||
relative_module_include_path = include_path[len(another_module_path) + 1:]
|
||||
#print(" {}: Matches module: {}".format(another_module_name, another_module_path))
|
||||
|
||||
combined_lines.append(f' "-I{another_module_path}/Sources/{relative_module_include_path}",')
|
||||
|
||||
another_module_public_headers_prefix = None
|
||||
if len(another_module["includes"]) == 1:
|
||||
for include_directory in another_module["includes"]:
|
||||
if include_directory != ".":
|
||||
another_module_public_headers_prefix = another_module_path + "/" + include_directory
|
||||
print(" {}: Another module public include: {}".format(another_module_name, another_module_public_headers_prefix))
|
||||
if another_module_public_headers_prefix is not None:
|
||||
if include_path.startswith(another_module_public_headers_prefix):
|
||||
relative_module_include_path = include_path[len(another_module_public_headers_prefix) + 1:]
|
||||
print(" {}: Matches module public include: {}".format(another_module_name, another_module_public_headers_prefix))
|
||||
|
||||
combined_lines.append(f' -"-I{another_module_path}/PublicIncludes/{relative_module_include_path}",')
|
||||
combined_lines.append(" ]),")
|
||||
if module_public_headers_prefix is not None:
|
||||
combined_lines.append(f" .headerSearchPath(\"{module_public_headers_prefix}\"),")
|
||||
combined_lines.append(" ],")
|
||||
|
||||
if defines or cxxopts: # Check for defines OR cxxopts
|
||||
|
@ -13,8 +13,6 @@ optimization_flags = select({
|
||||
"//conditions:default": ["-DNDEBUG"],
|
||||
})
|
||||
|
||||
enable_x264 = False
|
||||
|
||||
sources = glob([
|
||||
"Sources/**/*.m",
|
||||
"Sources/**/*.mm",
|
||||
@ -143,7 +141,6 @@ objc_library(
|
||||
"-I{}/tgcalls/tgcalls".format(package_name()),
|
||||
"-Ithird-party/webrtc/webrtc",
|
||||
"-Ithird-party/webrtc/dependencies",
|
||||
"-Ithird-party/webrtc/dependencies/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/base",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/components/renderer/metal",
|
||||
@ -152,14 +149,14 @@ objc_library(
|
||||
"-Ithird-party/libyuv/third_party/libyuv/include",
|
||||
"-Ithird-party/libyuv",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/api/video_codec",
|
||||
"-Ithird-party/webrtc/absl/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/absl",
|
||||
"-DWEBRTC_IOS",
|
||||
"-DWEBRTC_MAC",
|
||||
"-DWEBRTC_POSIX",
|
||||
"-DRTC_ENABLE_VP9",
|
||||
"-DTGVOIP_NAMESPACE=tgvoip_webrtc",
|
||||
"-std=c++17",
|
||||
] + optimization_flags + (["-DTGCALLS_ENABLE_X264"] if enable_x264 else []),
|
||||
] + optimization_flags,
|
||||
includes = [
|
||||
"PublicHeaders",
|
||||
],
|
||||
@ -175,7 +172,7 @@ objc_library(
|
||||
"//third-party/rnnoise:rnnoise",
|
||||
"//third-party/libyuv",
|
||||
"//third-party/td:TdBinding",
|
||||
] + (["//third-party/libx264:libx264"] if enable_x264 else []),
|
||||
],
|
||||
sdk_frameworks = [
|
||||
"Foundation",
|
||||
"UIKit",
|
||||
@ -193,46 +190,3 @@ objc_library(
|
||||
"//visibility:public",
|
||||
],
|
||||
)
|
||||
|
||||
objc_library(
|
||||
name = "TgCallsTestsLib",
|
||||
copts = [
|
||||
"-I{}/tgcalls/tgcalls".format(package_name()),
|
||||
"-Ithird-party/webrtc/webrtc",
|
||||
"-Ithird-party/webrtc/dependencies",
|
||||
"-Ithird-party/webrtc/dependencies/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/base",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/components/renderer/metal",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/components/renderer/opengl",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/components/video_codec",
|
||||
"-Ithird-party/libyuv/third_party/libyuv/include",
|
||||
"-Ithird-party/libyuv",
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/api/video_codec",
|
||||
"-DWEBRTC_IOS",
|
||||
"-DWEBRTC_MAC",
|
||||
"-DWEBRTC_POSIX",
|
||||
"-DRTC_ENABLE_VP9",
|
||||
"-DRTC_ENABLE_H265",
|
||||
"-DTGVOIP_NAMESPACE=tgvoip_webrtc",
|
||||
"-std=c++17",
|
||||
],
|
||||
srcs = glob([
|
||||
"tests/*.m",
|
||||
"tests/*.mm",
|
||||
], allow_empty=True),
|
||||
deps = [
|
||||
":TgVoipWebrtc"
|
||||
],
|
||||
)
|
||||
|
||||
ios_unit_test(
|
||||
name = "TgCallsTests",
|
||||
minimum_os_version = "9.0",
|
||||
deps = [
|
||||
":TgCallsTestsLib",
|
||||
],
|
||||
visibility = [
|
||||
"//visibility:public",
|
||||
],
|
||||
)
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 1348de6aa6c07ed32354d3e26423c45304000a39
|
||||
Subproject commit 5ddc3ccf2086127722a06e3d836698fcd717f11b
|
12
third-party/webrtc/BUILD
vendored
12
third-party/webrtc/BUILD
vendored
@ -2507,6 +2507,7 @@ ios_objc_sources = [
|
||||
"objc/base/RTCEncodedImage.m",
|
||||
"objc/base/RTCVideoCapturer.m",
|
||||
"objc/base/RTCVideoCodecInfo.m",
|
||||
"objc/base/RTCVideoEncoderQpThresholds.h",
|
||||
"objc/base/RTCVideoEncoderQpThresholds.m",
|
||||
"objc/base/RTCVideoEncoderSettings.m",
|
||||
"objc/helpers/RTCDispatcher.m",
|
||||
@ -3063,7 +3064,7 @@ objc_library(
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/base",
|
||||
"-Ithird-party/libyuv",
|
||||
"-Ithird-party/libyuv/third_party/libyuv/include",
|
||||
"-Ithird-party/webrtc/absl/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/absl",
|
||||
"-DBSD=1",
|
||||
"-DUSE_KISS_FFT",
|
||||
"-DHAVE_PTHREAD",
|
||||
@ -3121,6 +3122,7 @@ objc_library(
|
||||
enable_modules = True,
|
||||
module_name = "webrtc_objc",
|
||||
srcs = [ "webrtc/sdk/" + path for path in ios_objc_sources ] + [
|
||||
"webrtc/sdk/" + path for path in ios_objcpp_sources ] + [
|
||||
"webrtc/rtc_base/system/gcd_helpers.m",
|
||||
],
|
||||
copts = [
|
||||
@ -3130,7 +3132,7 @@ objc_library(
|
||||
"-Ithird-party/webrtc/webrtc/sdk/objc/base",
|
||||
"-Ithird-party/libyuv",
|
||||
"-Ithird-party/libyuv/third_party/libyuv/include",
|
||||
"-Ithird-party/webrtc/absl/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/absl",
|
||||
"-DBSD=1",
|
||||
"-DUSE_KISS_FFT",
|
||||
"-DHAVE_PTHREAD",
|
||||
@ -3162,7 +3164,9 @@ objc_library(
|
||||
"//third-party/openh264",
|
||||
":field_trials_header",
|
||||
"//third-party/webrtc/absl",
|
||||
":webrtc_objcpp",
|
||||
],
|
||||
cxxopts = [
|
||||
"-std=c++17",
|
||||
],
|
||||
sdk_frameworks = [
|
||||
"AVFoundation",
|
||||
@ -3193,7 +3197,7 @@ objc_library(
|
||||
"-Ithird-party/webrtc/webrtc/",
|
||||
"-Ithird-party/libyuv",
|
||||
"-Ithird-party/libyuv/third_party/libyuv/include",
|
||||
"-Ithird-party/webrtc/absl/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/absl",
|
||||
"-DBSD=1",
|
||||
"-DUSE_KISS_FFT",
|
||||
"-DHAVE_PTHREAD",
|
||||
|
225
third-party/webrtc/absl/BUILD
vendored
225
third-party/webrtc/absl/BUILD
vendored
@ -1,4 +1,5 @@
|
||||
absl_sources = [ "third_party/abseil-cpp/" + x for x in [
|
||||
|
||||
absl_headers = [
|
||||
"absl/container/internal/layout.h",
|
||||
"absl/container/internal/hashtable_debug_hooks.h",
|
||||
"absl/strings/internal/cord_internal.h",
|
||||
@ -14,117 +15,15 @@ absl_sources = [ "third_party/abseil-cpp/" + x for x in [
|
||||
"absl/strings/internal/cordz_update_scope.h",
|
||||
"absl/strings/internal/string_constant.h",
|
||||
"absl/base/internal/inline_variable.h",
|
||||
"absl/base/internal/cycleclock.cc",
|
||||
"absl/base/internal/low_level_alloc.cc",
|
||||
"absl/base/internal/raw_logging.cc",
|
||||
"absl/base/internal/scoped_set_env.cc",
|
||||
"absl/base/internal/spinlock.cc",
|
||||
"absl/base/internal/spinlock_wait.cc",
|
||||
"absl/base/internal/strerror.cc",
|
||||
"absl/base/internal/sysinfo.cc",
|
||||
"absl/base/internal/thread_identity.cc",
|
||||
"absl/base/internal/throw_delegate.cc",
|
||||
"absl/base/internal/unscaledcycleclock.cc",
|
||||
"absl/base/log_severity.cc",
|
||||
"absl/base/config.h",
|
||||
"absl/container/internal/hash_generator_testing.cc",
|
||||
"absl/container/internal/hashtablez_sampler.cc",
|
||||
"absl/container/internal/hashtablez_sampler_force_weak_definition.cc",
|
||||
"absl/container/internal/raw_hash_set.cc",
|
||||
"absl/container/internal/test_instance_tracker.cc",
|
||||
"absl/debugging/failure_signal_handler.cc",
|
||||
"absl/debugging/internal/address_is_readable.cc",
|
||||
"absl/debugging/internal/demangle.cc",
|
||||
"absl/debugging/internal/elf_mem_image.cc",
|
||||
"absl/debugging/internal/examine_stack.cc",
|
||||
"absl/debugging/internal/stack_consumption.cc",
|
||||
"absl/debugging/internal/vdso_support.cc",
|
||||
"absl/debugging/stacktrace.cc",
|
||||
"absl/debugging/symbolize.cc",
|
||||
"absl/flags/flag_test_defs.cc",
|
||||
"absl/flags/internal/commandlineflag.cc",
|
||||
"absl/flags/internal/flag.cc",
|
||||
"absl/flags/internal/program_name.cc",
|
||||
"absl/flags/internal/usage.cc",
|
||||
"absl/flags/marshalling.cc",
|
||||
"absl/flags/parse.cc",
|
||||
"absl/flags/usage.cc",
|
||||
"absl/flags/usage_config.cc",
|
||||
"absl/hash/internal/city.cc",
|
||||
"absl/hash/internal/hash.cc",
|
||||
"absl/numeric/int128.cc",
|
||||
"absl/random/discrete_distribution.cc",
|
||||
"absl/random/gaussian_distribution.cc",
|
||||
"absl/random/internal/chi_square.cc",
|
||||
"absl/random/internal/distribution_test_util.cc",
|
||||
"absl/random/internal/nanobenchmark.cc",
|
||||
"absl/random/internal/pool_urbg.cc",
|
||||
"absl/random/internal/randen.cc",
|
||||
"absl/random/internal/randen_detect.cc",
|
||||
"absl/random/internal/randen_hwaes.cc",
|
||||
"absl/random/internal/randen_slow.cc",
|
||||
"absl/random/internal/seed_material.cc",
|
||||
"absl/random/seed_gen_exception.cc",
|
||||
"absl/random/seed_sequences.cc",
|
||||
"absl/status/status.cc",
|
||||
"absl/status/status_payload_printer.cc",
|
||||
"absl/strings/ascii.cc",
|
||||
"absl/strings/charconv.cc",
|
||||
"absl/strings/cord.cc",
|
||||
"absl/strings/escaping.cc",
|
||||
"absl/strings/internal/charconv_bigint.cc",
|
||||
"absl/strings/internal/charconv_parse.cc",
|
||||
"absl/strings/internal/escaping.cc",
|
||||
"absl/strings/internal/memutil.cc",
|
||||
"absl/strings/internal/ostringstream.cc",
|
||||
"absl/strings/internal/pow10_helper.cc",
|
||||
"absl/strings/internal/str_format/arg.cc",
|
||||
"absl/strings/internal/str_format/bind.cc",
|
||||
"absl/strings/internal/str_format/extension.cc",
|
||||
"absl/strings/internal/str_format/float_conversion.cc",
|
||||
"absl/strings/internal/str_format/output.cc",
|
||||
"absl/strings/internal/str_format/parser.cc",
|
||||
"absl/strings/internal/utf8.cc",
|
||||
"absl/strings/match.cc",
|
||||
"absl/strings/numbers.cc",
|
||||
"absl/strings/str_cat.cc",
|
||||
"absl/strings/str_replace.cc",
|
||||
"absl/strings/str_split.cc",
|
||||
"absl/strings/string_view.cc",
|
||||
"absl/strings/substitute.cc",
|
||||
"absl/synchronization/mutex.h",
|
||||
"absl/synchronization/barrier.cc",
|
||||
"absl/synchronization/blocking_counter.cc",
|
||||
"absl/synchronization/internal/create_thread_identity.cc",
|
||||
"absl/synchronization/internal/graphcycles.cc",
|
||||
"absl/synchronization/internal/per_thread_sem.cc",
|
||||
"absl/synchronization/notification.cc",
|
||||
"absl/time/civil_time.cc",
|
||||
"absl/time/clock.cc",
|
||||
"absl/time/duration.cc",
|
||||
"absl/time/format.cc",
|
||||
"absl/time/internal/cctz/src/civil_time_detail.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_fixed.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_fixed.h",
|
||||
"absl/time/internal/cctz/src/time_zone_format.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_if.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_if.h",
|
||||
"absl/time/internal/cctz/src/time_zone_impl.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_impl.h",
|
||||
"absl/time/internal/cctz/src/time_zone_info.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_info.h",
|
||||
"absl/time/internal/cctz/src/time_zone_libc.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_libc.h",
|
||||
"absl/time/internal/cctz/src/time_zone_lookup.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_posix.cc",
|
||||
"absl/synchronization/mutex.h",
|
||||
"absl/time/internal/cctz/src/time_zone_fixed.h",
|
||||
"absl/time/internal/cctz/src/time_zone_if.h",
|
||||
"absl/time/internal/cctz/src/time_zone_impl.h",
|
||||
"absl/time/internal/cctz/src/time_zone_info.h",
|
||||
"absl/time/internal/cctz/src/time_zone_posix.h",
|
||||
"absl/time/internal/cctz/src/zone_info_source.cc",
|
||||
"absl/time/internal/cctz/src/tzfile.h",
|
||||
"absl/time/internal/test_util.cc",
|
||||
"absl/time/time.cc",
|
||||
"absl/types/bad_any_cast.cc",
|
||||
"absl/types/bad_optional_access.cc",
|
||||
"absl/types/bad_variant_access.cc",
|
||||
"absl/meta/type_traits.h",
|
||||
"absl/base/options.h",
|
||||
"absl/base/policy_checks.h",
|
||||
@ -349,10 +248,116 @@ absl_sources = [ "third_party/abseil-cpp/" + x for x in [
|
||||
"absl/synchronization/internal/win32_waiter.h",
|
||||
"absl/crc/internal/crc32_x86_arm_combined_simd.h",
|
||||
"absl/strings/internal/damerau_levenshtein_distance.h",
|
||||
]]
|
||||
]
|
||||
|
||||
absl_sources = [
|
||||
"absl/base/internal/cycleclock.cc",
|
||||
"absl/base/internal/low_level_alloc.cc",
|
||||
"absl/base/internal/raw_logging.cc",
|
||||
"absl/base/internal/scoped_set_env.cc",
|
||||
"absl/base/internal/spinlock.cc",
|
||||
"absl/base/internal/spinlock_wait.cc",
|
||||
"absl/base/internal/strerror.cc",
|
||||
"absl/base/internal/sysinfo.cc",
|
||||
"absl/base/internal/thread_identity.cc",
|
||||
"absl/base/internal/throw_delegate.cc",
|
||||
"absl/base/internal/unscaledcycleclock.cc",
|
||||
"absl/base/log_severity.cc",
|
||||
"absl/container/internal/hash_generator_testing.cc",
|
||||
"absl/container/internal/hashtablez_sampler.cc",
|
||||
"absl/container/internal/hashtablez_sampler_force_weak_definition.cc",
|
||||
"absl/container/internal/raw_hash_set.cc",
|
||||
"absl/container/internal/test_instance_tracker.cc",
|
||||
"absl/debugging/failure_signal_handler.cc",
|
||||
"absl/debugging/internal/address_is_readable.cc",
|
||||
"absl/debugging/internal/demangle.cc",
|
||||
"absl/debugging/internal/elf_mem_image.cc",
|
||||
"absl/debugging/internal/examine_stack.cc",
|
||||
"absl/debugging/internal/stack_consumption.cc",
|
||||
"absl/debugging/internal/vdso_support.cc",
|
||||
"absl/debugging/stacktrace.cc",
|
||||
"absl/debugging/symbolize.cc",
|
||||
"absl/flags/flag_test_defs.cc",
|
||||
"absl/flags/internal/commandlineflag.cc",
|
||||
"absl/flags/internal/flag.cc",
|
||||
"absl/flags/internal/program_name.cc",
|
||||
"absl/flags/internal/usage.cc",
|
||||
"absl/flags/marshalling.cc",
|
||||
"absl/flags/parse.cc",
|
||||
"absl/flags/usage.cc",
|
||||
"absl/flags/usage_config.cc",
|
||||
"absl/hash/internal/city.cc",
|
||||
"absl/hash/internal/hash.cc",
|
||||
"absl/numeric/int128.cc",
|
||||
"absl/random/discrete_distribution.cc",
|
||||
"absl/random/gaussian_distribution.cc",
|
||||
"absl/random/internal/chi_square.cc",
|
||||
"absl/random/internal/distribution_test_util.cc",
|
||||
"absl/random/internal/nanobenchmark.cc",
|
||||
"absl/random/internal/pool_urbg.cc",
|
||||
"absl/random/internal/randen.cc",
|
||||
"absl/random/internal/randen_detect.cc",
|
||||
"absl/random/internal/randen_hwaes.cc",
|
||||
"absl/random/internal/randen_slow.cc",
|
||||
"absl/random/internal/seed_material.cc",
|
||||
"absl/random/seed_gen_exception.cc",
|
||||
"absl/random/seed_sequences.cc",
|
||||
"absl/status/status.cc",
|
||||
"absl/status/status_payload_printer.cc",
|
||||
"absl/strings/ascii.cc",
|
||||
"absl/strings/charconv.cc",
|
||||
"absl/strings/cord.cc",
|
||||
"absl/strings/escaping.cc",
|
||||
"absl/strings/internal/charconv_bigint.cc",
|
||||
"absl/strings/internal/charconv_parse.cc",
|
||||
"absl/strings/internal/escaping.cc",
|
||||
"absl/strings/internal/memutil.cc",
|
||||
"absl/strings/internal/ostringstream.cc",
|
||||
"absl/strings/internal/pow10_helper.cc",
|
||||
"absl/strings/internal/str_format/arg.cc",
|
||||
"absl/strings/internal/str_format/bind.cc",
|
||||
"absl/strings/internal/str_format/extension.cc",
|
||||
"absl/strings/internal/str_format/float_conversion.cc",
|
||||
"absl/strings/internal/str_format/output.cc",
|
||||
"absl/strings/internal/str_format/parser.cc",
|
||||
"absl/strings/internal/utf8.cc",
|
||||
"absl/strings/match.cc",
|
||||
"absl/strings/numbers.cc",
|
||||
"absl/strings/str_cat.cc",
|
||||
"absl/strings/str_replace.cc",
|
||||
"absl/strings/str_split.cc",
|
||||
"absl/strings/string_view.cc",
|
||||
"absl/strings/substitute.cc",
|
||||
"absl/synchronization/barrier.cc",
|
||||
"absl/synchronization/blocking_counter.cc",
|
||||
"absl/synchronization/internal/create_thread_identity.cc",
|
||||
"absl/synchronization/internal/graphcycles.cc",
|
||||
"absl/synchronization/internal/per_thread_sem.cc",
|
||||
"absl/synchronization/notification.cc",
|
||||
"absl/time/civil_time.cc",
|
||||
"absl/time/clock.cc",
|
||||
"absl/time/duration.cc",
|
||||
"absl/time/format.cc",
|
||||
"absl/time/internal/cctz/src/civil_time_detail.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_fixed.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_format.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_if.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_impl.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_info.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_libc.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_lookup.cc",
|
||||
"absl/time/internal/cctz/src/time_zone_posix.cc",
|
||||
"absl/time/internal/cctz/src/zone_info_source.cc",
|
||||
"absl/time/internal/test_util.cc",
|
||||
"absl/time/time.cc",
|
||||
"absl/types/bad_any_cast.cc",
|
||||
"absl/types/bad_optional_access.cc",
|
||||
"absl/types/bad_variant_access.cc",
|
||||
]
|
||||
|
||||
cc_library(
|
||||
name = "absl",
|
||||
hdrs = absl_headers,
|
||||
srcs = absl_sources,
|
||||
cxxopts = [
|
||||
"-std=c++17",
|
||||
@ -360,7 +365,7 @@ cc_library(
|
||||
deps = [
|
||||
],
|
||||
copts = [
|
||||
"-Ithird-party/webrtc/absl/third_party/abseil-cpp",
|
||||
"-Ithird-party/webrtc/absl",
|
||||
"-DABSL_ALLOCATOR_NOTHROW=1",
|
||||
],
|
||||
visibility = ["//visibility:public"],
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user