diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6025808eb615d..7c1aaef7026f9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,6 +50,9 @@ jobs: env: CI_ONLY_WHEN_SUBMODULES_CHANGED: 1 os: ubuntu-latest-xl + - name: dist-x86_64-freebsd + os: ubuntu-latest-xl + env: {} timeout-minutes: 600 runs-on: "${{ matrix.os }}" steps: @@ -635,7 +638,7 @@ jobs: strategy: matrix: include: - - name: dist-x86_64-linux + - name: dist-x86_64-freebsd os: ubuntu-latest-xl env: {} timeout-minutes: 600 diff --git a/.gitmodules b/.gitmodules index 984113151de4d..a5a852b5bee69 100644 --- a/.gitmodules +++ b/.gitmodules @@ -46,4 +46,5 @@ url = https://github.com/rust-analyzer/rust-analyzer.git [submodule "library/backtrace"] path = library/backtrace - url = https://github.com/rust-lang/backtrace-rs.git + url = https://github.com/lzutao/backtrace-rs.git + branch = bsd diff --git a/Cargo.lock b/Cargo.lock index 98e7e34faf76f..180bced19264d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1707,9 +1707,8 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.79" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2448f6066e80e3bfc792e9c98bf705b4b0fc6e8ef5b43e5889aff0eaa9c58743" +version = "0.2.80" +source = "git+https://github.com/lzutao/rust-libc?branch=i78184#624f53143a942e45b1f50d9690191e2543db8ef8" dependencies = [ "rustc-std-workspace-core", ] diff --git a/Cargo.toml b/Cargo.toml index 02794d1028b50..7b14ff3c9090d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -77,6 +77,10 @@ object.debug = 0 [patch."https://github.com/rust-lang/cargo"] cargo = { path = "src/tools/cargo" } +[patch.crates-io.libc] +git = "https://github.com/lzutao/rust-libc" +branch = "i78184" + [patch."https://github.com/rust-lang/rustfmt"] # Similar to Cargo above we want the RLS to use a vendored version of `rustfmt` # that we're shipping as well (to ensure that the rustfmt in RLS and the diff --git a/library/backtrace b/library/backtrace index 8b8ea53b56f51..2f5d1b012f072 160000 --- a/library/backtrace +++ b/library/backtrace @@ -1 +1 @@ -Subproject commit 8b8ea53b56f519dd7780defdd4254daaec892584 +Subproject commit 2f5d1b012f07251b7838df49ae03308ede7cbb41 diff --git a/src/ci/github-actions/ci.yml b/src/ci/github-actions/ci.yml index 01f15a82f0f5a..36b65ca53de89 100644 --- a/src/ci/github-actions/ci.yml +++ b/src/ci/github-actions/ci.yml @@ -288,6 +288,8 @@ jobs: CI_ONLY_WHEN_SUBMODULES_CHANGED: 1 <<: *job-linux-xl + - name: dist-x86_64-freebsd + <<: *job-linux-xl auto: <<: *base-ci-job name: auto @@ -679,7 +681,8 @@ jobs: strategy: matrix: include: - - *dist-x86_64-linux + - name: dist-x86_64-freebsd + <<: *job-linux-xl master: name: master diff --git a/src/tools/tidy/src/extdeps.rs b/src/tools/tidy/src/extdeps.rs index 1cf0d24e26ff5..507bba4d691ad 100644 --- a/src/tools/tidy/src/extdeps.rs +++ b/src/tools/tidy/src/extdeps.rs @@ -4,7 +4,10 @@ use std::fs; use std::path::Path; /// List of allowed sources for packages. -const ALLOWED_SOURCES: &[&str] = &["\"registry+https://github.com/rust-lang/crates.io-index\""]; +const ALLOWED_SOURCES: &[&str] = &[ + "\"registry+https://github.com/rust-lang/crates.io-index\"", + "\"git+https://github.com/lzutao/rust-libc", +]; /// Checks for external package sources. `root` is the path to the directory that contains the /// workspace `Cargo.toml`. @@ -26,7 +29,14 @@ pub fn check(root: &Path, bad: &mut bool) { let source = line.splitn(2, '=').nth(1).unwrap().trim(); // Ensure source is allowed. - if !ALLOWED_SOURCES.contains(&&*source) { + let mut matched = false; + for allowed in ALLOWED_SOURCES { + if source.starts_with(allowed) { + matched = true; + break; + } + } + if !matched { println!("invalid source: {}", source); *bad = true; }