diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..859c82c --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,29 @@ +name: Cdio's Rust CI + +on: + push: + branches: [ "main" ] + pull_request: + +env: + CARGO_TERM_COLOR: always + +jobs: + ci: + strategy: + matrix: + os: [windows-latest, macos-latest, ubuntu-latest] + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v7 + - uses: Swatinem/rust-cache@v2 + - name: (TEMP) Update skr4n's libcdio-sys dependency + run: cargo update -p libcdio-sys + - name: Build + run: cargo build --all-features + - name: Test + run: cargo test --all-features + - name: Format + run: cargo fmt -- --check + - name: Lint + run: cargo clippy --all-features --all-targets -- -D warnings diff --git a/Cargo.lock b/Cargo.lock index 875ba26..9ef22e5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -114,7 +114,7 @@ dependencies = [ "quote", "regex", "rustc-hash", - "shlex", + "shlex 1.3.0", "syn", ] @@ -135,6 +135,16 @@ dependencies = [ "serde", ] +[[package]] +name = "cc" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d262e149917187838d5b42777c8253bcb64500067342904e7d429499a6f277e" +dependencies = [ + "find-msvc-tools", + "shlex 2.0.1", +] + [[package]] name = "cexpr" version = "0.6.0" @@ -346,6 +356,12 @@ dependencies = [ "libc", ] +[[package]] +name = "find-msvc-tools" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b73573e6edcd2af0cdf47bd6cb58f0b3839491263c314eaad1ccf24430e1de" + [[package]] name = "glob" version = "0.3.3" @@ -479,11 +495,11 @@ dependencies = [ [[package]] name = "libcdio-sys" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a4a29039bac847bf200de57a6172ec66d9e5d3b8a2ca1c86c3a45f393f0baca" +version = "3.0.0+2.4.0p2.0.2" +source = "git+https://github.com/MonterraByte/libcdio-sys.git#34b6bfc486e60eae33c1b005e02186a95ca14c04" dependencies = [ "bindgen", + "cc", "system-deps", ] @@ -796,6 +812,12 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "shlex" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" + [[package]] name = "smallvec" version = "1.15.1" diff --git a/Cargo.toml b/Cargo.toml index 2d91f1a..0174137 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,8 @@ readme = "README.md" repository = "https://github.com/libcdio/cdio-rust" [workspace.dependencies] -libcdio-sys = { version = "2.0.0", default-features = false } +libcdio-sys = { git = "https://github.com/MonterraByte/libcdio-sys.git" } +# libcdio-sys = { version = "2.0.0", default-features = false } test-log = { version = "0.2.20", features = ["trace"] } time = "0.3.47" tracing = { version = "0.1.44", default-features = false, features = ["log", "std"] }