diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6b93a640..ba89f0e9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -116,3 +116,17 @@ jobs: run: swift build - name: Unit Tests run: swift test + + android: + name: Build (Android) + runs-on: ubuntu-latest + timeout-minutes: 30 + env: + TARGET_TRIPLE: aarch64-unknown-linux-android28 + steps: + - uses: actions/checkout@main + - uses: orchetect/setup-swift-android-sdk@v1 + with: + target-triple: ${{ env.TARGET_TRIPLE }} + - name: Build + run: swift build --swift-sdk "$TARGET_TRIPLE" --static-swift-stdlib diff --git a/Sources/SwiftTimecodeCore/Timecode/Protocol Adoptions/Strideable.swift b/Sources/SwiftTimecodeCore/Timecode/Protocol Adoptions/Strideable.swift index 40f22838..ff2325ac 100644 --- a/Sources/SwiftTimecodeCore/Timecode/Protocol Adoptions/Strideable.swift +++ b/Sources/SwiftTimecodeCore/Timecode/Protocol Adoptions/Strideable.swift @@ -10,6 +10,8 @@ import Darwin import Glibc #elseif canImport(Musl) import Musl +#elseif canImport(Android) +import Android #endif extension Timecode: Strideable { diff --git a/Sources/SwiftTimecodeCore/Utilities/Outsourced/FloatingPoint and Darwin.swift b/Sources/SwiftTimecodeCore/Utilities/Outsourced/FloatingPoint and Darwin.swift index 6ad48d66..ae893624 100644 --- a/Sources/SwiftTimecodeCore/Utilities/Outsourced/FloatingPoint and Darwin.swift +++ b/Sources/SwiftTimecodeCore/Utilities/Outsourced/FloatingPoint and Darwin.swift @@ -15,6 +15,8 @@ import Darwin import Glibc #elseif canImport(Musl) import Musl +#elseif canImport(Android) +import Android #endif // MARK: - ceiling / floor @@ -30,6 +32,8 @@ extension FloatingPoint { Glibc.ceil(self) #elseif canImport(Musl) Musl.ceil(self) + #elseif canImport(Android) + Android.ceil(self) #endif } @@ -43,6 +47,8 @@ extension FloatingPoint { Glibc.floor(self) #elseif canImport(Musl) Musl.floor(self) + #elseif canImport(Android) + Android.floor(self) #endif } }