Skip to content

Commit 7466e5d

Browse files
committed
rust: move SUFFIXES_BY_TRIPLE to its own module
1 parent e2e8eee commit 7466e5d

File tree

3 files changed

+41
-39
lines changed

3 files changed

+41
-39
lines changed

src/github.rs

Lines changed: 2 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -3,52 +3,15 @@
33
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
44

55
use {
6+
crate::release::SUFFIXES_BY_TRIPLE,
67
anyhow::{anyhow, Result},
78
clap::ArgMatches,
89
futures::StreamExt,
910
octocrab::{models::workflows::WorkflowListArtifact, Octocrab, OctocrabBuilder},
10-
once_cell::sync::Lazy,
11-
std::{
12-
collections::{BTreeMap, BTreeSet},
13-
io::Read,
14-
path::PathBuf,
15-
},
11+
std::{collections::BTreeSet, io::Read, path::PathBuf},
1612
zip::ZipArchive,
1713
};
1814

19-
static SUFFIXES_BY_TRIPLE: Lazy<BTreeMap<&'static str, Vec<&'static str>>> = Lazy::new(|| {
20-
let mut h = BTreeMap::new();
21-
22-
// macOS.
23-
let macos_suffixes = vec!["debug", "lto", "pgo", "pgo+lto", "install_only"];
24-
h.insert("aarch64-apple-darwin", macos_suffixes.clone());
25-
h.insert("x86_64-apple-darwin", macos_suffixes);
26-
27-
// Windows.
28-
let windows_suffixes = vec!["shared-pgo", "static-noopt", "shared-install_only"];
29-
h.insert("i686-pc-windows-msvc", windows_suffixes.clone());
30-
h.insert("x86_64-pc-windows-msvc", windows_suffixes);
31-
32-
// Linux.
33-
let linux_suffixes_pgo = vec!["debug", "lto", "pgo", "pgo+lto", "install_only"];
34-
let linux_suffixes_nopgo = vec!["debug", "lto", "noopt", "install_only"];
35-
36-
h.insert("aarch64-unknown-linux-gnu", linux_suffixes_nopgo.clone());
37-
38-
h.insert("i686-unknown-linux-gnu", linux_suffixes_pgo.clone());
39-
40-
h.insert("x86_64-unknown-linux-gnu", linux_suffixes_pgo.clone());
41-
h.insert("x86_64_v2-unknown-linux-gnu", linux_suffixes_pgo.clone());
42-
h.insert("x86_64_v3-unknown-linux-gnu", linux_suffixes_pgo.clone());
43-
h.insert("x86_64_v4-unknown-linux-gnu", linux_suffixes_nopgo.clone());
44-
h.insert("x86_64-unknown-linux-musl", linux_suffixes_nopgo.clone());
45-
h.insert("x86_64_v2-unknown-linux-musl", linux_suffixes_nopgo.clone());
46-
h.insert("x86_64_v3-unknown-linux-musl", linux_suffixes_nopgo.clone());
47-
h.insert("x86_64_v4-unknown-linux-musl", linux_suffixes_nopgo.clone());
48-
49-
h
50-
});
51-
5215
async fn fetch_artifact(client: &Octocrab, artifact: WorkflowListArtifact) -> Result<bytes::Bytes> {
5316
println!("downloading {}", artifact.name);
5417
let res = client

src/main.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
mod github;
66
mod json;
77
mod macho;
8+
mod release;
89
mod validation;
910

1011
use {

src/release.rs

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// This Source Code Form is subject to the terms of the Mozilla Public
2+
// License, v. 2.0. If a copy of the MPL was not distributed with this
3+
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
4+
5+
use {once_cell::sync::Lazy, std::collections::BTreeMap};
6+
7+
pub static SUFFIXES_BY_TRIPLE: Lazy<BTreeMap<&'static str, Vec<&'static str>>> = Lazy::new(|| {
8+
let mut h = BTreeMap::new();
9+
10+
// macOS.
11+
let macos_suffixes = vec!["debug", "lto", "pgo", "pgo+lto", "install_only"];
12+
h.insert("aarch64-apple-darwin", macos_suffixes.clone());
13+
h.insert("x86_64-apple-darwin", macos_suffixes);
14+
15+
// Windows.
16+
let windows_suffixes = vec!["shared-pgo", "static-noopt", "shared-install_only"];
17+
h.insert("i686-pc-windows-msvc", windows_suffixes.clone());
18+
h.insert("x86_64-pc-windows-msvc", windows_suffixes);
19+
20+
// Linux.
21+
let linux_suffixes_pgo = vec!["debug", "lto", "pgo", "pgo+lto", "install_only"];
22+
let linux_suffixes_nopgo = vec!["debug", "lto", "noopt", "install_only"];
23+
24+
h.insert("aarch64-unknown-linux-gnu", linux_suffixes_nopgo.clone());
25+
26+
h.insert("i686-unknown-linux-gnu", linux_suffixes_pgo.clone());
27+
28+
h.insert("x86_64-unknown-linux-gnu", linux_suffixes_pgo.clone());
29+
h.insert("x86_64_v2-unknown-linux-gnu", linux_suffixes_pgo.clone());
30+
h.insert("x86_64_v3-unknown-linux-gnu", linux_suffixes_pgo.clone());
31+
h.insert("x86_64_v4-unknown-linux-gnu", linux_suffixes_nopgo.clone());
32+
h.insert("x86_64-unknown-linux-musl", linux_suffixes_nopgo.clone());
33+
h.insert("x86_64_v2-unknown-linux-musl", linux_suffixes_nopgo.clone());
34+
h.insert("x86_64_v3-unknown-linux-musl", linux_suffixes_nopgo.clone());
35+
h.insert("x86_64_v4-unknown-linux-musl", linux_suffixes_nopgo.clone());
36+
37+
h
38+
});

0 commit comments

Comments
 (0)