-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
incompatible_disable_runtimes_filegroups: Remove cc_toolchain.static_runtime_libs and cc_toolchain.dynamic_runtime_libs #6942
Labels
incompatible-change
Incompatible/breaking change
P1
I'll work on this now. (Assignee required)
team-Rules-CPP
Issues for C++ rules
Comments
hlopko
added
P1
I'll work on this now. (Assignee required)
team-Rules-CPP
Issues for C++ rules
incompatible-change
Incompatible/breaking change
Bazel 1.0
labels
Dec 17, 2018
hlopko
changed the title
Incompatibel change: Remove static_runtimes_filegroup and dynamic_runtimes_filegroup from CROSSTOOL
Incompatible change: Remove static_runtimes_filegroup and dynamic_runtimes_filegroup from CROSSTOOL
Dec 17, 2018
hlopko
changed the title
Incompatible change: Remove static_runtimes_filegroup and dynamic_runtimes_filegroup from CROSSTOOL
Incompatible change: Remove cc_toolchain.static_runtime_libs and cc_toolchain.dynamic_runtime_libs
Dec 17, 2018
bazel-io
pushed a commit
that referenced
this issue
Dec 19, 2018
This change adds cc_toolchain.static_runtime_lib and cc_toolchain.dynamic_runtime_lib attributes and an incompatible flag that disables deprecated cc_toolchain.static_runtime_libs and cc_toolchain.dynamic_runtime_libs. Issue for the incompatible flag: #6942 Tracking issue for legacy crosstool fields removal: #5883 RELNOTES: Added --incompatible_disable_runtimes_filegroups (#6942). PiperOrigin-RevId: 226165743
meteorcloudy
changed the title
Incompatible change: Remove cc_toolchain.static_runtime_libs and cc_toolchain.dynamic_runtime_libs
incompatible_disable_runtimes_filegroups: Remove cc_toolchain.static_runtime_libs and cc_toolchain.dynamic_runtime_libs
Jan 2, 2019
bazel-io
pushed a commit
to bazelbuild/rules_cc
that referenced
this issue
Jan 11, 2019
This change adds cc_toolchain.static_runtime_lib and cc_toolchain.dynamic_runtime_lib attributes and an incompatible flag that disables deprecated cc_toolchain.static_runtime_libs and cc_toolchain.dynamic_runtime_libs. Issue for the incompatible flag: #6942 Tracking issue for legacy crosstool fields removal: #5883 RELNOTES: Added --incompatible_disable_runtimes_filegroups (bazelbuild/bazel#6942). PiperOrigin-RevId: 226165743
bazel-io
pushed a commit
that referenced
this issue
Jan 28, 2019
Baseline: deb028e Cherry picks: + a3a5975: Fix a race condition in remote cache + b8d0e1b: Use a new GitHub token and KMS key for the release process. + 3759e38: remote: fix unexpected IO error (not a directory) + 4473bb1: Fix a race condition in Bazel's Windows process management. + 9137fb9: undo flag flip of --incompatible_strict_action_env + 12ab12e: Revert "Enabling Bazel to generate input symlinks as defined by RE AP? + 6345c74: Automated rollback of commit 30536ba. New features: - Add inputs filtering for aquery - https://docs.bazel.build now supports versioned documentation. Use the selector at the top of the navigation bar to switch between documentation for different Bazel releases. - build_tar.py in tools/build_defs/pkg now supports a json manifest that can be used to add paths that have symbols that can't be specified via the command line Important changes: - Added `--incompatible_dont_emit_static_libgcc` (#6825) Added `--incompatible_linkopts_in_user_link_flags` (#6826) - mobile-install now works with aapt2. Try it out with `bazel mobile-install --android_aapt=aapt2 //my:target` - Fixed a mobile-install v1 bug when deploying to Android 9 Pie devices. #6814 - Add a new option --xbinary_fdo to pass xbinary profile. - --runs_per_test: place in TESTING documentation category. - Adds a clarifying message to test case summary output when all test cases pass but the target fails. - Fixed mobile-install v1 error when installing an app with native libraries onto an Android 9 (Pie) device. See bazelbuild/examples#77 - Fixed issue where error messages from Android manifest merging actions were not propagated fully. - Add outputs and mnemonic filtering to aquery - New incompatible change flag for defaulting to aapt2 in Android builds: `--incompatible_use_aapt2_by_default`. To build with aapt2 today, pass the flag `--incompatible_use_aapt2_by_default=true` or `--android_aapt=aapt2`, or set the `aapt_version` to `aapt2` on your `android_binary` or `android_local_test` target. - set projectId in all PublishBuildToolEventStreamRequest - Flip flag --incompatible_string_is_not_iterable (#5830) - cc_toolchain.(static|dynamic)_runtime_libs attributes are now optional - Added --incompatible_disable_runtimes_filegroups (#6942). - objc_bundle has been removed. Please migrate to rules_apple's [apple_bundle_import](https://github.com/bazelbuild/rules_apple/bl ob/master/doc/rules-resources.md#apple_bundle_import). - The apple_stub_binary rule has been deleted. - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (#6825) - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (#6826) - Open source aquery & cquery query2 tests - Fixed a mobile-install bug where `arm64-v8a` libraries were not deployed correctly on `arm64` devices. This was done by enabling incremental native lib deployment by default. A previously undocumented `--android_incremental_native_libs` flag is removed, and is now the regular behavior. See #2239 - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (#6826) - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (#6825) - Added --incompatible_disable_legacy_crosstool_fields. See the migration notes at #6861. - In the Query HowTo, recommend ":*" instead of ":all". "all" might be the name of a target. - The default value for --incompatible_strict_action_env has been flipped to 'false' again, as we discovered breakages for local execution users. We'll need some more time to figure out the best way to make this work for local and remote execution. Follow #7026 for more details. This release contains contributions from many people at Google, as well as Benjamin Peterson, Dave Lee, George Gensure, Gert van Dijk, Gustavo Storti Salibi, Keith Smiley, Loo Rong Jie, Lukasz Tekieli, Mikhail Mazurskiy, Thi, Travis Cline, Vladimir Chebotarev, Yannic.
weixiao-huang
pushed a commit
to weixiao-huang/bazel
that referenced
this issue
Jan 31, 2019
Baseline: deb028e Cherry picks: + a3a5975: Fix a race condition in remote cache + b8d0e1b: Use a new GitHub token and KMS key for the release process. + 3759e38: remote: fix unexpected IO error (not a directory) + 4473bb1: Fix a race condition in Bazel's Windows process management. + 9137fb9: undo flag flip of --incompatible_strict_action_env + 12ab12e: Revert "Enabling Bazel to generate input symlinks as defined by RE AP? + 6345c74: Automated rollback of commit 30536ba. New features: - Add inputs filtering for aquery - https://docs.bazel.build now supports versioned documentation. Use the selector at the top of the navigation bar to switch between documentation for different Bazel releases. - build_tar.py in tools/build_defs/pkg now supports a json manifest that can be used to add paths that have symbols that can't be specified via the command line Important changes: - Added `--incompatible_dont_emit_static_libgcc` (bazelbuild#6825) Added `--incompatible_linkopts_in_user_link_flags` (bazelbuild#6826) - mobile-install now works with aapt2. Try it out with `bazel mobile-install --android_aapt=aapt2 //my:target` - Fixed a mobile-install v1 bug when deploying to Android 9 Pie devices. bazelbuild#6814 - Add a new option --xbinary_fdo to pass xbinary profile. - --runs_per_test: place in TESTING documentation category. - Adds a clarifying message to test case summary output when all test cases pass but the target fails. - Fixed mobile-install v1 error when installing an app with native libraries onto an Android 9 (Pie) device. See bazelbuild/examples#77 - Fixed issue where error messages from Android manifest merging actions were not propagated fully. - Add outputs and mnemonic filtering to aquery - New incompatible change flag for defaulting to aapt2 in Android builds: `--incompatible_use_aapt2_by_default`. To build with aapt2 today, pass the flag `--incompatible_use_aapt2_by_default=true` or `--android_aapt=aapt2`, or set the `aapt_version` to `aapt2` on your `android_binary` or `android_local_test` target. - set projectId in all PublishBuildToolEventStreamRequest - Flip flag --incompatible_string_is_not_iterable (bazelbuild#5830) - cc_toolchain.(static|dynamic)_runtime_libs attributes are now optional - Added --incompatible_disable_runtimes_filegroups (bazelbuild#6942). - objc_bundle has been removed. Please migrate to rules_apple's [apple_bundle_import](https://github.com/bazelbuild/rules_apple/bl ob/master/doc/rules-resources.md#apple_bundle_import). - The apple_stub_binary rule has been deleted. - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (bazelbuild#6825) - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (bazelbuild#6826) - Open source aquery & cquery query2 tests - Fixed a mobile-install bug where `arm64-v8a` libraries were not deployed correctly on `arm64` devices. This was done by enabling incremental native lib deployment by default. A previously undocumented `--android_incremental_native_libs` flag is removed, and is now the regular behavior. See bazelbuild#2239 - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (bazelbuild#6826) - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (bazelbuild#6825) - Added --incompatible_disable_legacy_crosstool_fields. See the migration notes at bazelbuild#6861. - In the Query HowTo, recommend ":*" instead of ":all". "all" might be the name of a target. - The default value for --incompatible_strict_action_env has been flipped to 'false' again, as we discovered breakages for local execution users. We'll need some more time to figure out the best way to make this work for local and remote execution. Follow bazelbuild#7026 for more details. This release contains contributions from many people at Google, as well as Benjamin Peterson, Dave Lee, George Gensure, Gert van Dijk, Gustavo Storti Salibi, Keith Smiley, Loo Rong Jie, Lukasz Tekieli, Mikhail Mazurskiy, Thi, Travis Cline, Vladimir Chebotarev, Yannic.
This flag was not flipped in time for the Bazel 0.23.0 release and will thus be postponed to Bazel 0.24.0. |
hlopko
added a commit
to hlopko/tensorflow
that referenced
this issue
Mar 18, 2019
Since Bazel 0.22 static_runtime_libs and dynamic_runtime_libs attributes are not mandatory, and since 0.23 they are replaced by their singluar siblings.
This was referenced Mar 18, 2019
bazel-io
pushed a commit
that referenced
this issue
Mar 26, 2019
Baseline: 235e76b Cherry picks: + badd82e: Automated rollback of commit 1b4c37c. + 33e5719: Fix the Python version select() mechanism to handle PY3-as-default + 56366ee: Set non-empty values for msvc_env_* when VC not installed + 22b3fbf: Windows, test wrapper: fix broken integration test + f14d447: Add whitelist file for starlark transitions + d99bc47: Update BUILD + 3529ad7: Rename tools/function_transition_whitelist/BUILD to tools/whitelists/function_transition_whitelist/BUILD + de0612a: Update bazel_toolchains to latest release and add toolchain config target for BuildKite CI (rbe_ubuntu1604) + 3e660ad: Automated rollback of commit 0877340. + 314cf1f: Pass -undefined dynamic_lookup to dynamic library linking actions on Mac + fc586a8: Move cc_flags target into @bazel_tools//tools/cpp. + ea1703b: C++: Fix crash reported in #7721 + 803801d: Pass execution info to xml generating spawn. Fixes #7794 Incompatible changes: - Added --incompatible_py3_is_default to test switching the default Python version to PY3 for py_binary/py_test targets that do not specify a version. See #7359. - //tools/cmd_line_differ has been renamed to //tools/aquery_differ & can now compare (in addition to command lines) inputs of actions given 2 aquery results. - java_(mutable_|)proto_library: removed strict_deps attribute. - The flag --incompatible_list_based_execution_strategy_selection was added and is used to ease the migration to the new style of specifying execution strategy selection and fallback behavior. The documentation for this flag is here: #7480 - Added --incompatible_py2_outputs_are_suffixed, for switching the bazel-bin symlink to point to Python 3 outputs instead of Python 2 outputs. See [#7593](#7593). New features: - Make actions.args() object chainable. - Added --incompatible_windows_style_arg_escaping flag: enables correct subprocess argument escaping on Windows. (No-op on other platforms.) - Added --incompatible_windows_escape_jvm_flags flag: enables correct java_binary.jvm_flags and java_test.jvm_flags tokenization and escaping on Windows. (No-op on other platforms.) Important changes: - Allow running aquery against the current state of Skyframe - Added support for the "navigation" resource directory to Android resource processing in Bazel. This is used by the Navigation Architecture Component. - --incompatible_disable_runtimes_filegroups was flipped (#6942) - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (#6826) - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (#6825) - --incompatible_disallow_filetype is enabled by default. - Fixed issue where exceptions and stacktraces were silently swallowed in the Android resource processing pipeline. - `--incompatible_disable_expand_if_all_available_in_flag_set` has been flipped (#7008) - --incompatible_disallow_dict_plus is enabled by default - Adds --incompatible_disable_objc_library_resources to disable resource attributes in objc_library. Please migrate these attributes to `data` instead. - --incompatible_disallow_old_style_args_add is enabled by default. - Using the `native` module in BUILD files is deprecated. It will be forbidden with --incompatible_disallow_native_in_build_file. - (Python rules) PyRuntimeInfo is exposed to Starlark, making it possible for Starlark rules to depend on or imitate `py_runtime`. The `files` attribute of `py_runtime` is no longer mandatory. - incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targetshttps://github.com//issues/7186. - is_using_fission crosstool variable is now exposed in all compile actions when fission is active (it used to be exposed only for linking actions). - incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targetshttps://github.com//issues/7186. - `py_runtime` gains a `python_version` attribute for specifying whether it represents a Python 2 or 3 interpreter. - `--incompatible_java_coverage` is enabled by default. - Starlark rules can safely declare attributes named "licenses" - When using --incompatible_list_based_execution_strategy_selection, Bazel will use remote execution by default (if you specify --remote_executor), otherwise persistent workers (if the action supports it), otherwise sandboxed local execution (if the action and platform supports it) and at last unsandboxed local execution. The flags --spawn_strategy and --strategy continue to work as before - this only sets new defaults for the case where you don't specify these flags. - Set default value of --incompatible_remap_main_repo to true. - Set default value of --incompatible_remap_main_repo to true. This release contains contributions from many people at Google, as well as Andrew Suffield, Brandon Lico, Chris Eason, Clint Harrison, Ed Schouten, Garrett Hopper, George Gensure, Greg, John Millikin, Julie, Keith Smiley, Laurent Le Brun, Ryan Beasley, Shmuel H, Travis Cline, Vladimir Chebotarev.
katre
pushed a commit
that referenced
this issue
Mar 29, 2019
Baseline: 235e76b Cherry picks: + badd82e: Automated rollback of commit 1b4c37c. + 33e5719: Fix the Python version select() mechanism to handle PY3-as-default + 56366ee: Set non-empty values for msvc_env_* when VC not installed + 22b3fbf: Windows, test wrapper: fix broken integration test + f14d447: Add whitelist file for starlark transitions + d99bc47: Update BUILD + 3529ad7: Rename tools/function_transition_whitelist/BUILD to tools/whitelists/function_transition_whitelist/BUILD + de0612a: Update bazel_toolchains to latest release and add toolchain config target for BuildKite CI (rbe_ubuntu1604) + 3e660ad: Automated rollback of commit 0877340. + 314cf1f: Pass -undefined dynamic_lookup to dynamic library linking actions on Mac + fc586a8: Move cc_flags target into @bazel_tools//tools/cpp. + ea1703b: C++: Fix crash reported in #7721 + 803801d: Pass execution info to xml generating spawn. Fixes #7794 Incompatible changes: - Added --incompatible_py3_is_default to test switching the default Python version to PY3 for py_binary/py_test targets that do not specify a version. See #7359. - //tools/cmd_line_differ has been renamed to //tools/aquery_differ & can now compare (in addition to command lines) inputs of actions given 2 aquery results. - java_(mutable_|)proto_library: removed strict_deps attribute. - The flag --incompatible_list_based_execution_strategy_selection was added and is used to ease the migration to the new style of specifying execution strategy selection and fallback behavior. The documentation for this flag is here: #7480 - Added --incompatible_py2_outputs_are_suffixed, for switching the bazel-bin symlink to point to Python 3 outputs instead of Python 2 outputs. See [#7593](#7593). New features: - Make actions.args() object chainable. - Added --incompatible_windows_style_arg_escaping flag: enables correct subprocess argument escaping on Windows. (No-op on other platforms.) - Added --incompatible_windows_escape_jvm_flags flag: enables correct java_binary.jvm_flags and java_test.jvm_flags tokenization and escaping on Windows. (No-op on other platforms.) Important changes: - Allow running aquery against the current state of Skyframe - Added support for the "navigation" resource directory to Android resource processing in Bazel. This is used by the Navigation Architecture Component. - --incompatible_disable_runtimes_filegroups was flipped (#6942) - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (#6826) - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (#6825) - --incompatible_disallow_filetype is enabled by default. - Fixed issue where exceptions and stacktraces were silently swallowed in the Android resource processing pipeline. - `--incompatible_disable_expand_if_all_available_in_flag_set` has been flipped (#7008) - --incompatible_disallow_dict_plus is enabled by default - Adds --incompatible_disable_objc_library_resources to disable resource attributes in objc_library. Please migrate these attributes to `data` instead. - --incompatible_disallow_old_style_args_add is enabled by default. - Using the `native` module in BUILD files is deprecated. It will be forbidden with --incompatible_disallow_native_in_build_file. - (Python rules) PyRuntimeInfo is exposed to Starlark, making it possible for Starlark rules to depend on or imitate `py_runtime`. The `files` attribute of `py_runtime` is no longer mandatory. - incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targetshttps://github.com//issues/7186. - is_using_fission crosstool variable is now exposed in all compile actions when fission is active (it used to be exposed only for linking actions). - incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targetshttps://github.com//issues/7186. - `py_runtime` gains a `python_version` attribute for specifying whether it represents a Python 2 or 3 interpreter. - `--incompatible_java_coverage` is enabled by default. - Starlark rules can safely declare attributes named "licenses" - When using --incompatible_list_based_execution_strategy_selection, Bazel will use remote execution by default (if you specify --remote_executor), otherwise persistent workers (if the action supports it), otherwise sandboxed local execution (if the action and platform supports it) and at last unsandboxed local execution. The flags --spawn_strategy and --strategy continue to work as before - this only sets new defaults for the case where you don't specify these flags. - Set default value of --incompatible_remap_main_repo to true. - Set default value of --incompatible_remap_main_repo to true. This release contains contributions from many people at Google, as well as Andrew Suffield, Brandon Lico, Chris Eason, Clint Harrison, Ed Schouten, Garrett Hopper, George Gensure, Greg, John Millikin, Julie, Keith Smiley, Laurent Le Brun, Ryan Beasley, Shmuel H, Travis Cline, Vladimir Chebotarev.
matt-e
added a commit
to matt-e/rpi_bazel
that referenced
this issue
May 1, 2019
See bazelbuild/bazel#6942 for details
lngart
pushed a commit
to lngart/GitSubSep
that referenced
this issue
Oct 5, 2021
Since Bazel 0.22 static_runtime_libs and dynamic_runtime_libs attributes are not mandatory, and since 0.23 they are replaced by their singluar siblings.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
incompatible-change
Incompatible/breaking change
P1
I'll work on this now. (Assignee required)
team-Rules-CPP
Issues for C++ rules
Flag:
--incompatible_disable_runtimes_filegroups
Available since: 0.22 (January 2019 release)
Will be flipped in: 0.23 (February 2019 release)
Tracking issue: #5883
Current state
cc_toolchain
definesstatic_runtime_libs
anddynamic_runtime_libs
attributes that specify a collection of artifacts, all of which as loaded and analyzed. Then in the CROSSTOOL we specified one of those labels usingstatic_runtimes_filegroup
andstatic_runtimes_filegroup
. This interesting arrangement was the result of having onecc_toolchain
associated with multipleCROSSTOOL.toolchain
s. Since that is no longer the case (thanks to the #6072 and the drive towards #6516) and we have 1:1 correspondence betweencc_toolchain
andCROSSTOOL.toolchain
, and we will also have the same with CROSSTOOL in Starlark (#5380), we're cleaning this up.State with this flag flipped
cc_toolchain
now supports two new attributes:static_runtime_lib
anddynamic_runtime_lib
. When these are specified they will take precedence overstatic_runtime_libs
anddynamic_runtime_libs
.With this flag flipped it will be an error to specify
static_runtime_libs
anddynamic_runtime_libs
.Migration
Label from
CROSSTOOL.toolchain.static_runtimes_filegroup
andCROSSTOOL.toolchain.dynamic_runtimes_filegroup
has to be put intocc_toolchain.static_runtime_lib
andcc_toolchain.dynamic_runtime_lib
respectively.The text was updated successfully, but these errors were encountered: