m323/Sources/MiniProject/MiniProject.xcodeproj/rules_xcodeproj/bazel/xcodeproj.bazelrc
cediackermann 7903970f08
feat(MiniProject): searchable Stadt-Rundlauf runner TUI
Add a SwiftTUI terminal app that lists race runners from the start list
and results files, with an interactive menu to sort, filter by age group,
toggle finishers vs. non-starters, and live-search by name. Parsing and
transforms are written as pure functions over the file contents.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 12:05:50 +02:00

139 lines
6.2 KiB
Text

### `--config=rules_xcodeproj`
#
# Used directly when doing a normal build, but it is also the base config of all
# the `rules_xcodeproj_*` configs. Adjust this config if you want something to
# apply to all builds (which should be most settings).
common:rules_xcodeproj --verbose_failures
# Increase the default file digest cache size to 500k entries, as 50k (the
# default) is too small for large projects.
common:rules_xcodeproj --cache_computed_file_digests=500000
# We default to `dbg` since debugging is broken otherwise
common:rules_xcodeproj --compilation_mode=dbg
# Xcode builds shouldn't mess with the workspace's symlinks
common:rules_xcodeproj --experimental_convenience_symlinks=ignore
# Projects with large C/C++ target command-lines can fail to generate due
# without using params files. While the targets themselves might use params
# files, currently `Action.args` won't unless
# `--experimental_use_cpp_compile_action_args_params_file` is set.
# https://github.com/bazelbuild/bazel/issues/20746 would allow us to remove the
# need for this flag.
common:rules_xcodeproj --experimental_use_cpp_compile_action_args_params_file
# Not using `--define=apple.experimental.tree_artifact_outputs=1` is slow (we
# have to unzip an archive on each build). If this doesn't work for your
# project, you can set `--define=apple.experimental.tree_artifact_outputs=0`
# on `common:rules_xcodeproj` in your `.bazelrc` or `xcodeproj.bazelrc` file.
common:rules_xcodeproj --define=apple.experimental.tree_artifact_outputs=1
# Fix Test Issue navigation
common:rules_xcodeproj --features=apple.swizzle_absolute_xcttestsourcelocation
# `oso_prefix_is_pwd` removes absolute paths in debug info, which increases
# cache hit rates. We "undo" this in `bazel.lldbinit`, so debugging still works.
common:rules_xcodeproj --features=oso_prefix_is_pwd
# `relative_ast_path` uses relative paths when passing `--add_ast_path` to the
# linker, which increases cache hit rates. We "undo" this in `bazel.lldbinit`,
# so debugging still works.
common:rules_xcodeproj --features=relative_ast_path
# `swift.cacheable_swiftmodules` passes `-no-serialize-debugging-options` to
# `swiftc`, which fixes lldb crashes and increases cache hit rates. We "undo"
# this in `swift_debug_settings.py`, so debugging still works.
common:rules_xcodeproj --features=swift.cacheable_swiftmodules
# `swift.index-while-building` passes `-index-store-path` to `swiftc`, which
# generates index store data. We enable this globally, because we import indexes
# in Index Build as well. And even if we didn't, we would still want it enabled
# to get cache hits between normal and Index Build builds.
common:rules_xcodeproj --features=swift.index_while_building
common:rules_xcodeproj --features=swift.use_global_index_store
# Removes potentially large unneeded event from the BEP
common:rules_xcodeproj --nolegacy_important_outputs
# `--show_result=0` prevents showing the spec.json and intermediate `.xcodeproj`
# in the logs when generating, and all of the many outputs when building
common:rules_xcodeproj --show_result=0
# Disable sandboxing. Sandboxing on macOS is still very slow.
common:rules_xcodeproj --noworker_sandboxing
common:rules_xcodeproj --spawn_strategy=remote,worker,local
# Needed to download aspect output groups
build:rules_xcodeproj --remote_download_outputs=toplevel
### `--config=rules_xcodeproj_generator`
#
# Used when generating a project.
common:rules_xcodeproj_generator --config=rules_xcodeproj
### `--config=rules_xcodeproj_indexbuild`
#
# Used when doing an Index Build.
common:rules_xcodeproj_indexbuild --config=rules_xcodeproj
# Disable BES for Index Builds, as it runs a lot, and isn't user invoked
common:rules_xcodeproj_indexbuild --bes_backend= --bes_results_url=
### `--config=rules_xcodeproj_coverage`
#
# Used when doing building for code coverage.
common:rules_xcodeproj_coverage --config=rules_xcodeproj
# Enable features that allow for building for instrumentation.
#
# Of particular note are the (swift./)_coverage_prefix_map_absolute_sources_non_hermetic
# features, which remap the execroot during the build as the absolute, canonical path
# to the source root.
#
# This approach breaks remote caching when building for testing and codeCoverageEnabled
# is set to YES, but does not affect other builds (for running, or for testing without
# coverage).
common:rules_xcodeproj_coverage --features=coverage
common:rules_xcodeproj_coverage --features=llvm_coverage_map_format
common:rules_xcodeproj_coverage --features=_coverage_prefix_map_absolute_sources_non_hermetic
common:rules_xcodeproj_coverage --features=swift.coverage
common:rules_xcodeproj_coverage --features=swift._coverage_prefix_map_absolute_sources_non_hermetic
# Disable features that interfere with (swift./)_coverage_prefix_map_absolute_sources_non_hermetic
common:rules_xcodeproj_coverage --features=-coverage_prefix_map
common:rules_xcodeproj_coverage --features=-file_prefix_map
common:rules_xcodeproj_coverage --features=-swift.coverage_prefix_map
common:rules_xcodeproj_coverage --features=-swift.file_prefix_map
### `--config=rules_xcodeproj_swiftuipreviews`
#
# Used when doing a Xcode Previews build.
common:rules_xcodeproj_swiftuipreviews --config=rules_xcodeproj
# Allow frameworks to find framework dependencies when running a preview
# See `$PROJECT_FILE_PATH/rules_xcodeproj/bazel/copy_outputs.sh` for more info
common:rules_xcodeproj_swiftuipreviews --linkopt="-Wl,-rpath,@loader_path/SwiftUIPreviewsFrameworks"
# `swiftc` flags needed for SwiftUI Previews
common:rules_xcodeproj_swiftuipreviews --@@rules_swift+//swift:copt=-Xfrontend --@@rules_swift+//swift:copt=-enable-implicit-dynamic
common:rules_xcodeproj_swiftuipreviews --@@rules_swift+//swift:copt=-Xfrontend --@@rules_swift+//swift:copt=-enable-private-imports
common:rules_xcodeproj_swiftuipreviews --@@rules_swift+//swift:copt=-Xfrontend --@@rules_swift+//swift:copt=-enable-dynamic-replacement-chaining
### `--config=_rules_xcodeproj_build`
#
# Private implementation detail. Don't adjust this config, adjust
# `rules_xcodeproj` instead. This config exists solely to allow project-level
# configs to work correctly.
common:_rules_xcodeproj_build --config=rules_xcodeproj
### Project specific configs
# Import `xcodeproj.bazelrc` if it exists
try-import %workspace%/xcodeproj.bazelrc