1
1
"""Entry point for extensions used by bzlmod."""
2
2
3
3
load ("//foreign_cc:repositories.bzl" , "DEFAULT_CMAKE_VERSION" , "DEFAULT_MAKE_VERSION" , "DEFAULT_MESON_VERSION" , "DEFAULT_NINJA_VERSION" , "DEFAULT_PKGCONFIG_VERSION" , "rules_foreign_cc_dependencies" )
4
- load ("//toolchains:built_toolchains.bzl" , "make_toolchain" , "meson_toolchain" , "pkgconfig_toolchain" )
4
+ load ("//foreign_cc/private/framework:toolchain.bzl" , "register_framework_toolchains" )
5
+ load ("//toolchains:built_toolchains.bzl" , cmake_toolchains_src = "cmake_toolchain" , "make_toolchain" , "meson_toolchain" , "pkgconfig_toolchain" , ninja_toolchains_src = "ninja_toolchain" )
5
6
load ("//toolchains:prebuilt_toolchains.bzl" , "cmake_toolchains" , "ninja_toolchains" )
6
7
7
8
cmake_toolchain_version = tag_class (attrs = {
@@ -25,36 +26,51 @@ pkgconfig_toolchain_version = tag_class(attrs = {
25
26
})
26
27
27
28
def _init (module_ctx ):
29
+ cmake_registered = False
30
+ make_registered = False
31
+ meson_registered = False
32
+ ninja_registered = False
33
+ pkgconfig_registered = False
34
+
28
35
for mod in module_ctx .modules :
29
36
if mod .is_root :
30
37
for toolchain in mod .tags .cmake :
38
+ cmake_toolchains_src (toolchain .version , register_toolchains = False )
31
39
cmake_toolchains (toolchain .version , register_toolchains = False )
40
+ cmake_registered = True
32
41
33
42
for toolchain in mod .tags .make :
34
43
make_toolchain (toolchain .version , register_toolchains = False )
44
+ make_registered = True
35
45
36
46
for toolchain in mod .tags .meson :
37
47
meson_toolchain (toolchain .version , register_toolchains = False )
48
+ meson_registered = True
38
49
39
50
for toolchain in mod .tags .ninja :
40
51
ninja_toolchains (toolchain .version , register_toolchains = False )
52
+ ninja_toolchains_src (toolchain .version , register_toolchains = False )
53
+ ninja_registered = True
41
54
42
55
for toolchain in mod .tags .pkgconfig :
43
56
pkgconfig_toolchain (toolchain .version , register_toolchains = False )
57
+ pkgconfig_registered = True
58
+
59
+ if not cmake_registered :
60
+ cmake_toolchains_src (DEFAULT_CMAKE_VERSION , register_toolchains = False )
61
+ cmake_toolchains (DEFAULT_CMAKE_VERSION , register_toolchains = False )
62
+ if not make_registered :
63
+ make_toolchain (DEFAULT_MAKE_VERSION , register_toolchains = False )
64
+ if not meson_registered :
65
+ meson_toolchain (DEFAULT_MESON_VERSION , register_toolchains = False )
66
+ if not ninja_registered :
67
+ ninja_toolchains (DEFAULT_NINJA_VERSION , register_toolchains = False )
68
+ ninja_toolchains_src (DEFAULT_NINJA_VERSION , register_toolchains = False )
69
+ if not pkgconfig_registered :
70
+ pkgconfig_toolchain (DEFAULT_PKGCONFIG_VERSION , register_toolchains = False )
71
+
72
+ register_framework_toolchains (register_toolchains = False )
44
73
45
- cmake_toolchains (DEFAULT_CMAKE_VERSION , register_toolchains = False )
46
- make_toolchain (DEFAULT_MAKE_VERSION , register_toolchains = False )
47
- meson_toolchain (DEFAULT_MESON_VERSION , register_toolchains = False )
48
- ninja_toolchains (DEFAULT_NINJA_VERSION , register_toolchains = False )
49
- pkgconfig_toolchain (DEFAULT_PKGCONFIG_VERSION , register_toolchains = False )
50
-
51
- rules_foreign_cc_dependencies (
52
- register_toolchains = False ,
53
- register_built_tools = True ,
54
- register_default_tools = False ,
55
- register_preinstalled_tools = False ,
56
- register_built_pkgconfig_toolchain = False ,
57
- )
58
74
59
75
tools = module_extension (
60
76
implementation = _init ,
0 commit comments