aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSébastien Crozet <developer@crozet.re>2021-07-30 11:12:31 +0200
committerSébastien Crozet <sebastien@crozet.re>2021-07-30 11:29:32 +0200
commitfd778b607f019e8d9e2ea733fab377d98a14619c (patch)
tree2938b95bf0e89b11acf1a486a1ee930a0e2aa0a6
parent37a90a5409fc306981e925e4867922e8ee51c045 (diff)
downloadrapier-fd778b607f019e8d9e2ea733fab377d98a14619c.tar.gz
rapier-fd778b607f019e8d9e2ea733fab377d98a14619c.tar.bz2
rapier-fd778b607f019e8d9e2ea733fab377d98a14619c.zip
Fix emscripten build + add emscripten build to the CI
-rw-r--r--.github/workflows/rapier-ci-build.yml15
-rw-r--r--src/dynamics/solver/velocity_constraint_element.rs6
-rw-r--r--src/dynamics/solver/velocity_ground_constraint_element.rs6
3 files changed, 21 insertions, 6 deletions
diff --git a/.github/workflows/rapier-ci-build.yml b/.github/workflows/rapier-ci-build.yml
index 86b56aa..08c5da5 100644
--- a/.github/workflows/rapier-ci-build.yml
+++ b/.github/workflows/rapier-ci-build.yml
@@ -60,3 +60,18 @@ jobs:
run: cd build/rapier2d && cargo build --verbose --features wasm-bindgen --target wasm32-unknown-unknown;
- name: build rapier3d
run: cd build/rapier3d && cargo build --verbose --features wasm-bindgen --target wasm32-unknown-unknown;
+ build-wasm-emscripten:
+ runs-on: ubuntu-latest
+ env:
+ RUSTFLAGS: -D warnings
+ steps:
+ - uses: actions/checkout@v2
+ - run: rustup target add wasm32-unknown-emscripten
+ - name: build rapier2d
+ run: cd build/rapier2d && cargo build --verbose --target wasm32-unknown-emscripten;
+ - name: build rapier3d
+ run: cd build/rapier3d && cargo build --verbose --target wasm32-unknown-emscripten;
+ - name: build rapier2d --features simd-stable
+ run: cd build/rapier2d && cargo build --verbose --target wasm32-unknown-emscripten --features simd-stable;
+ - name: build rapier3d --features simd-stable
+ run: cd build/rapier3d && cargo build --verbose --target wasm32-unknown-emscripten --features simd-stable;
diff --git a/src/dynamics/solver/velocity_constraint_element.rs b/src/dynamics/solver/velocity_constraint_element.rs
index d1ad6ac..b1c244a 100644
--- a/src/dynamics/solver/velocity_constraint_element.rs
+++ b/src/dynamics/solver/velocity_constraint_element.rs
@@ -16,7 +16,7 @@ pub(crate) struct VelocityConstraintTangentPart<N: SimdRealField> {
}
impl<N: SimdRealField> VelocityConstraintTangentPart<N> {
- #[cfg(not(target_arch = "wasm32"))]
+ #[cfg(any(not(target_arch = "wasm32"), feature = "simd-is-enabled"))]
fn zero() -> Self {
Self {
gcross1: [na::zero(); DIM - 1],
@@ -130,7 +130,7 @@ pub(crate) struct VelocityConstraintNormalPart<N: SimdRealField> {
}
impl<N: SimdRealField> VelocityConstraintNormalPart<N> {
- #[cfg(not(target_arch = "wasm32"))]
+ #[cfg(any(not(target_arch = "wasm32"), feature = "simd-is-enabled"))]
fn zero() -> Self {
Self {
gcross1: na::zero(),
@@ -193,7 +193,7 @@ pub(crate) struct VelocityConstraintElement<N: SimdRealField> {
}
impl<N: SimdRealField> VelocityConstraintElement<N> {
- #[cfg(not(target_arch = "wasm32"))]
+ #[cfg(any(not(target_arch = "wasm32"), feature = "simd-is-enabled"))]
pub fn zero() -> Self {
Self {
normal_part: VelocityConstraintNormalPart::zero(),
diff --git a/src/dynamics/solver/velocity_ground_constraint_element.rs b/src/dynamics/solver/velocity_ground_constraint_element.rs
index c4c6393..edf84c7 100644
--- a/src/dynamics/solver/velocity_ground_constraint_element.rs
+++ b/src/dynamics/solver/velocity_ground_constraint_element.rs
@@ -15,7 +15,7 @@ pub(crate) struct VelocityGroundConstraintTangentPart<N: SimdRealField> {
}
impl<N: SimdRealField> VelocityGroundConstraintTangentPart<N> {
- #[cfg(not(target_arch = "wasm32"))]
+ #[cfg(any(not(target_arch = "wasm32"), feature = "simd-is-enabled"))]
fn zero() -> Self {
Self {
gcross2: [na::zero(); DIM - 1],
@@ -104,7 +104,7 @@ pub(crate) struct VelocityGroundConstraintNormalPart<N: SimdRealField> {
}
impl<N: SimdRealField> VelocityGroundConstraintNormalPart<N> {
- #[cfg(not(target_arch = "wasm32"))]
+ #[cfg(any(not(target_arch = "wasm32"), feature = "simd-is-enabled"))]
fn zero() -> Self {
Self {
gcross2: na::zero(),
@@ -143,7 +143,7 @@ pub(crate) struct VelocityGroundConstraintElement<N: SimdRealField> {
}
impl<N: SimdRealField> VelocityGroundConstraintElement<N> {
- #[cfg(not(target_arch = "wasm32"))]
+ #[cfg(any(not(target_arch = "wasm32"), feature = "simd-is-enabled"))]
pub fn zero() -> Self {
Self {
normal_part: VelocityGroundConstraintNormalPart::zero(),