Remove legacy crosstool fields
hlopko opened this issue · 0 comments
hlopko commented
Remove legacy crosstool fields
For this to happen we need to:
- Create a CcToolchainProvider Skylark API to replace existing
ctx.fragments.cpp.compiler_options()
andctx.fragments.cpp.linker_options()
etc.
Done in #4571 - Prepare migration tooling (elaborated [here]).(https://docs.google.com/document/d/1uv4c1zag6KvdI31qdx8C6jiTognXPQrxgsUpVefm9fM/edit#).
- Add incompatible flags to help Bazel users migrate.
- Migrate all crosstools to features.
- Remove legacy fields from crosstools:
- all supports_* fields
- static_runtimes_filegroup
- dynamic_runtimes_filegroup
- compiler_flag
- optional_compiler_flag
- cxx_flag
- optional_cxx_flag
- unfiltered_cxx_flag
- optional_unfiltered_cxx_flag
- linker_flag
- optional_linker_flag
- dynamic_library_linker_flag
- optional_dynamic_library_linker_flag
- test_only_linker_flag
- objcopy_embed_flag
- ld_embed_flag
- ar_flag
- ar_thin_archives_flag
- gcc_plugin_compiler_flag
- compilation_mode_flags
- lipo_mode_flags
- linking_mode_flags
- gcc_plugin_header_directory
- mao_plugin_header_directory
- tool_path