5
5
"codeql_pkg_files" ,
6
6
"codeql_pkg_runfiles" ,
7
7
)
8
+ load ("//misc/bazel:utils.bzl" , "select_os" )
8
9
9
10
filegroup (
10
11
name = "schema" ,
@@ -30,37 +31,39 @@ codeql_pkg_files(
30
31
)
31
32
32
33
codeql_pkg_runfiles (
33
- name = "autobuilder" ,
34
+ name = "autobuilder-files " ,
34
35
exes = ["//swift/swift-autobuilder" ],
35
36
)
36
37
37
38
pkg_filegroup (
38
- name = "tools-arch" ,
39
- srcs = select ({
40
- "@platforms//os:macos" : [
41
- ":autobuilder" ,
42
- "//swift/extractor:pkg" ,
43
- ],
44
- "@platforms//os:linux" : [
45
- ":autobuilder-incompatible-os" ,
46
- "//swift/extractor:pkg" ,
39
+ name = "autobuilder" ,
40
+ srcs = select_os (
41
+ macos = [
42
+ ":autobuilder-files" ,
47
43
],
48
- "@platforms//os:windows" : [
44
+ otherwise = [
49
45
":autobuilder-incompatible-os" ,
50
46
],
51
- } ),
52
- prefix = "{CODEQL_PLATFORM}" ,
47
+ ),
48
+ prefix = "tools/ {CODEQL_PLATFORM}" ,
53
49
)
54
50
55
51
pkg_filegroup (
56
52
name = "tools" ,
57
- srcs = [
58
- ":tools-arch" ,
59
- "//swift/tools" ,
60
- ],
53
+ srcs = ["//swift/tools" ],
61
54
prefix = "tools" ,
62
55
)
63
56
57
+ pkg_filegroup (
58
+ name = "extractor" ,
59
+ srcs = select_os (
60
+ posix = [
61
+ "//swift/extractor:pkg" ,
62
+ ],
63
+ ),
64
+ prefix = "tools/{CODEQL_PLATFORM}" ,
65
+ )
66
+
64
67
codeql_pkg_files (
65
68
name = "root-files" ,
66
69
srcs = [
@@ -70,22 +73,46 @@ codeql_pkg_files(
70
73
],
71
74
)
72
75
73
- codeql_pack (
74
- name = "swift" ,
75
- srcs = [
76
- ":root-files" ,
77
- ":tools" ,
78
- "//swift/downgrades" ,
79
- ],
80
- zips = select ({
81
- "@platforms//os:windows" : {},
82
- "//conditions:default" : {
83
- "//swift/third_party/resources:dir" : "resource-dir/{CODEQL_PLATFORM}" ,
84
- },
85
- }),
86
- )
76
+ zip_map = {
77
+ "//swift/third_party/resources:dir" : "resource-dir/{CODEQL_PLATFORM}" ,
78
+ }
79
+
80
+ [
81
+ codeql_pack (
82
+ name = "swift-linux-included" if linux_included else "swift" ,
83
+ srcs = [
84
+ ":autobuilder" ,
85
+ ":root-files" ,
86
+ ":tools" ,
87
+ "//swift/downgrades" ,
88
+ ] + select_os (
89
+ linux = [":extractor" ] if linux_included else [],
90
+ macos = [":extractor" ],
91
+ windows = [],
92
+ ),
93
+ installer_alias = "install-linux" if linux_included else "install-other" ,
94
+ pack_prefix = "swift" ,
95
+ zips = select_os (
96
+ linux = zip_map if linux_included else {},
97
+ macos = zip_map ,
98
+ windows = {},
99
+ ),
100
+ )
101
+ for linux_included in [
102
+ True ,
103
+ False ,
104
+ ]
105
+ ]
87
106
88
107
alias (
89
108
name = "create-extractor-pack" ,
90
- actual = ":swift-installer" ,
109
+ actual = ":install" ,
110
+ )
111
+
112
+ alias (
113
+ name = "install" ,
114
+ actual = select_os (
115
+ linux = ":install-linux" ,
116
+ otherwise = ":install-other" ,
117
+ ),
91
118
)
0 commit comments