From 49a315870ee7408c90f507b344ff498603015fd4 Mon Sep 17 00:00:00 2001 From: John Nunley Date: Sun, 8 Oct 2023 09:38:51 -0700 Subject: [PATCH] Review comments Signed-off-by: John Nunley --- .github/workflows/ci.yml | 17 ++++++++--------- Cargo.toml | 3 ++- .../Cargo.toml | 6 ++++-- android-xbuild-target/README.md | 3 +++ android-xbuild-target/src/lib.rs | 14 ++++++++++++++ ios-xbuild-target/Cargo.toml | 8 ++++++++ {xbuild-target => ios-xbuild-target}/README.md | 3 +-- .../src/main.rs | 3 ++- 8 files changed, 42 insertions(+), 15 deletions(-) rename {xbuild-target => android-xbuild-target}/Cargo.toml (69%) create mode 100644 android-xbuild-target/README.md create mode 100644 android-xbuild-target/src/lib.rs create mode 100644 ios-xbuild-target/Cargo.toml rename {xbuild-target => ios-xbuild-target}/README.md (80%) rename {xbuild-target => ios-xbuild-target}/src/main.rs (54%) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5ea20e51c..8d84ea466 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,7 +60,6 @@ jobs: RUSTDOCFLAGS: '--deny=warnings' OPTIONS: --target=${{ matrix.platform.target }} ${{ matrix.platform.options }} - CMD: ${{ matrix.platform.cmd }} steps: - uses: actions/checkout@v3 @@ -102,7 +101,7 @@ jobs: - name: Install LLVM tools for Android if: contains(matrix.platform.target, 'android') - run: sudo apt-get install lld llvm + run: sudo apt-get update && sudo apt-get install lld llvm - name: Check documentation run: cargo doc --no-deps $OPTIONS --document-private-items @@ -110,13 +109,13 @@ jobs: - name: Build crate run: cargo build $OPTIONS - - name: Package crate for Android + - name: Build and package crate for Android if: contains(matrix.platform.target, 'android') - run: x build -p xbuild-target --platform android --arch arm64 + run: x build -p android-xbuild-target --platform android --arch arm64 - - name: Package crate for iOS + - name: Build and package crate for iOS if: contains(matrix.platform.target, 'ios') - run: x build -p xbuild-target --platform ios --arch arm64 + run: x build -p ios-xbuild-target --platform ios --arch arm64 - name: Build tests if: > @@ -132,7 +131,7 @@ jobs: !contains(matrix.platform.target, 'wasm32') && !contains(matrix.platform.target, 'redox') && matrix.toolchain != '1.65.0' - run: cargo $CMD test $OPTIONS + run: cargo test $OPTIONS - name: Lint with clippy if: (matrix.toolchain == 'stable') && !contains(matrix.platform.options, '--no-default-features') @@ -143,7 +142,7 @@ jobs: !contains(matrix.platform.target, 'redox') && !contains(matrix.platform.target, 'android') && matrix.toolchain != '1.65.0' - run: cargo $CMD test --no-run $OPTIONS --features serde + run: cargo test --no-run $OPTIONS --features serde - name: Run tests with serde enabled if: > @@ -152,7 +151,7 @@ jobs: !contains(matrix.platform.target, 'wasm32') && !contains(matrix.platform.target, 'redox') && matrix.toolchain != '1.65.0' - run: cargo $CMD test $OPTIONS --features serde + run: cargo test $OPTIONS --features serde # See restore step above - name: Save cache of cargo folder diff --git a/Cargo.toml b/Cargo.toml index 8645e5c32..2d9d7d429 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -212,6 +212,7 @@ web-sys = { version = "0.3.22", features = ['CanvasRenderingContext2d'] } [workspace] members = [ + "android-xbuild-target", + "ios-xbuild-target", "run-wasm", - "xbuild-target" ] diff --git a/xbuild-target/Cargo.toml b/android-xbuild-target/Cargo.toml similarity index 69% rename from xbuild-target/Cargo.toml rename to android-xbuild-target/Cargo.toml index 3ac57fa16..dfcab59fc 100644 --- a/xbuild-target/Cargo.toml +++ b/android-xbuild-target/Cargo.toml @@ -1,10 +1,12 @@ [package] -name = "xbuild-target" +name = "android-xbuild-target" version = "0.1.0" edition = "2021" +[lib] +crate_type = ["cdylib"] + [dependencies.winit] version = "0.29.1-beta" path = ".." features = ["android-game-activity"] - diff --git a/android-xbuild-target/README.md b/android-xbuild-target/README.md new file mode 100644 index 000000000..d0dfd8f36 --- /dev/null +++ b/android-xbuild-target/README.md @@ -0,0 +1,3 @@ +# android-xbuild-target + +This is a crate that can be built via `x build` in order to simplify CI testing. diff --git a/android-xbuild-target/src/lib.rs b/android-xbuild-target/src/lib.rs new file mode 100644 index 000000000..ad211382e --- /dev/null +++ b/android-xbuild-target/src/lib.rs @@ -0,0 +1,14 @@ +use winit::platform::android::{ + activity::AndroidApp, + EventLoopBuilderExtAndroid +}; + +#[no_mangle] +fn android_main(app: AndroidApp) { + winit::event_loop::EventLoopBuilder::new() + .with_android_app(app) + .build() + .unwrap() + .run(|_, _| todo!()) + .ok(); +} diff --git a/ios-xbuild-target/Cargo.toml b/ios-xbuild-target/Cargo.toml new file mode 100644 index 000000000..0bee9d138 --- /dev/null +++ b/ios-xbuild-target/Cargo.toml @@ -0,0 +1,8 @@ +[package] +name = "ios-xbuild-target" +version = "0.1.0" +edition = "2021" + +[dependencies.winit] +version = "0.29.1-beta" +path = ".." diff --git a/xbuild-target/README.md b/ios-xbuild-target/README.md similarity index 80% rename from xbuild-target/README.md rename to ios-xbuild-target/README.md index 5d41179eb..6284d0e5a 100644 --- a/xbuild-target/README.md +++ b/ios-xbuild-target/README.md @@ -1,4 +1,3 @@ -# xbuild-target +# ios-xbuild-target This is a crate that can be built via `x build` in order to simplify CI testing. - diff --git a/xbuild-target/src/main.rs b/ios-xbuild-target/src/main.rs similarity index 54% rename from xbuild-target/src/main.rs rename to ios-xbuild-target/src/main.rs index 91b390c63..a04cad9ac 100644 --- a/xbuild-target/src/main.rs +++ b/ios-xbuild-target/src/main.rs @@ -1,5 +1,6 @@ fn main() { - winit::event_loop::EventLoop::new() + winit::event_loop::EventLoopBuilder::new() + .build() .unwrap() .run(|_, _| todo!()) .ok();