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,35 +31,31 @@ 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
- name = "tools" ,
57
- srcs = [
58
- ":tools-arch" ,
59
- "//swift/tools" ,
60
- ],
61
- prefix = "tools" ,
52
+ name = "extractor" ,
53
+ srcs = select_os (
54
+ posix = [
55
+ "//swift/extractor:pkg" ,
56
+ ],
57
+ ),
58
+ prefix = "tools/{CODEQL_PLATFORM}" ,
62
59
)
63
60
64
61
codeql_pkg_files (
@@ -70,22 +67,51 @@ codeql_pkg_files(
70
67
],
71
68
)
72
69
73
- codeql_pack (
74
- name = "swift " ,
70
+ pkg_filegroup (
71
+ name = "common " ,
75
72
srcs = [
73
+ ":autobuilder" ,
76
74
":root-files" ,
77
- ":tools" ,
78
75
"//swift/downgrades" ,
79
76
],
80
- zips = select ({
81
- "@platforms//os:windows" : {},
82
- "//conditions:default" : {
83
- "//swift/third_party/resources:dir" : "resource-dir/{CODEQL_PLATFORM}" ,
84
- },
85
- }),
86
77
)
87
78
79
+ zip_map = {
80
+ "//swift/third_party/resources:dir" : "resource-dir/{CODEQL_PLATFORM}" ,
81
+ }
82
+
83
+ [
84
+ codeql_pack (
85
+ name = "swift-linux-included" if linux_included else "swift" ,
86
+ srcs = [
87
+ ":common" ,
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
+ zips = select_os (
95
+ linux = zip_map if linux_included else {},
96
+ macos = zip_map ,
97
+ windows = {},
98
+ ),
99
+ )
100
+ for linux_included in [
101
+ True ,
102
+ False ,
103
+ ]
104
+ ]
105
+
88
106
alias (
89
107
name = "create-extractor-pack" ,
90
108
actual = ":swift-installer" ,
91
109
)
110
+
111
+ alias (
112
+ name = "install" ,
113
+ actual = select_os (
114
+ linux = ":install-linux" ,
115
+ otherwise = ":install-other" ,
116
+ ),
117
+ )
0 commit comments