File tree Expand file tree Collapse file tree 4 files changed +35
-21
lines changed Expand file tree Collapse file tree 4 files changed +35
-21
lines changed Original file line number Diff line number Diff line change @@ -195,6 +195,13 @@ string_flag(
195195 visibility = ["//visibility:public" ],
196196)
197197
198+ string_flag (
199+ name = "pip_venv_site_packages" ,
200+ build_setting_default = PipVenvSitePackages .NO ,
201+ # NOTE: Only public because it is used in pip hub repos.
202+ visibility = ["//visibility:public" ],
203+ )
204+
198205define_pypi_internal_flags (
199206 name = "define_pypi_internal_flags" ,
200207)
Original file line number Diff line number Diff line change @@ -43,3 +43,23 @@ def enum(methods = {}, **kwargs):
4343
4444 self = struct (__members__ = members , ** kwargs )
4545 return self
46+
47+ def _FlagEnum_flag_values (self ):
48+ return sorted (self .__members__ .values ())
49+
50+ def FlagEnum (** kwargs ):
51+ """Define an enum specialized for flags.
52+
53+ Args:
54+ **kwargs: members of the enum.
55+
56+ Returns:
57+ {type}`FlagEnum` struct. This is an enum with the following extras:
58+ * `flag_values`: A function that returns a sorted list of the
59+ flag values (enum `__members__`). Useful for passing to the
60+ `values` attribute for string flags.
61+ """
62+ return enum (
63+ methods = dict (flag_values = _FlagEnum_flag_values ),
64+ ** kwargs
65+ )
Original file line number Diff line number Diff line change @@ -19,27 +19,7 @@ unnecessary files when all that are needed are flag definitions.
1919"""
2020
2121load ("@bazel_skylib//rules:common_settings.bzl" , "BuildSettingInfo" )
22- load (":enum.bzl" , "enum" )
23-
24- def _FlagEnum_flag_values (self ):
25- return sorted (self .__members__ .values ())
26-
27- def FlagEnum (** kwargs ):
28- """Define an enum specialized for flags.
29-
30- Args:
31- **kwargs: members of the enum.
32-
33- Returns:
34- {type}`FlagEnum` struct. This is an enum with the following extras:
35- * `flag_values`: A function that returns a sorted list of the
36- flag values (enum `__members__`). Useful for passing to the
37- `values` attribute for string flags.
38- """
39- return enum (
40- methods = dict (flag_values = _FlagEnum_flag_values ),
41- ** kwargs
42- )
22+ load (":enum.bzl" , "FlagEnum" , "enum" )
4323
4424def _AddSrcsToRunfilesFlag_is_enabled (ctx ):
4525 value = ctx .attr ._add_srcs_to_runfiles_flag [BuildSettingInfo ].value
@@ -138,6 +118,8 @@ VenvsUseDeclareSymlinkFlag = FlagEnum(
138118 get_value = _venvs_use_declare_symlink_flag_get_value ,
139119)
140120
121+ VenvsCreateSitePackages
122+
141123# Used for matching freethreaded toolchains and would have to be used in wheels
142124# as well.
143125# buildifier: disable=name-conventions
Original file line number Diff line number Diff line change @@ -44,6 +44,11 @@ UniversalWhlFlag = enum(
4444 UNIVERSAL = "universal" ,
4545)
4646
47+ PipVenvSitePackages = FlagEnum (
48+ YES = "yes"
49+ NO = "no" ,
50+ )
51+
4752_STRING_FLAGS = [
4853 "dist" ,
4954 "whl_plat" ,
You can’t perform that action at this time.
0 commit comments