-
Notifications
You must be signed in to change notification settings - Fork 282
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add linux-arm64 and linux-ppc64el (#552)
* Cache Ubuntu multi-arch build image * Remove native binaries from source * Update depdencies * Add builds for aarch64 and ppc64el (Linux only) * Disable sctp tests as the natives are not committed * Change artifact transfer * Fix dependency and test builds * Java 17 and make package install executable * Runner permissions * The Mac runner has no automake installed * Pin Ubuntu to 18.04 * Typo * -fPIC for SpeexDSP * Fix default install dir for linux-x86
- Loading branch information
1 parent
19f651a
commit 7488682
Showing
76 changed files
with
467 additions
and
234 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
FROM ubuntu:bionic | ||
|
||
ARG ARCH=x86-64 | ||
ARG JAVA_VERSION=8 | ||
|
||
ADD https://github.com/Kitware/CMake/releases/download/v3.22.0/cmake-3.22.0-Linux-x86_64.sh /opt/cmake.sh | ||
RUN chmod +x /opt/cmake.sh && /opt/cmake.sh --skip-license --prefix=/usr --exclude-subdir | ||
|
||
COPY ports-sources.list /etc/apt/ | ||
RUN if [ "$ARCH" != "x86" ] && [ "$ARCH" != "x86-64" ]; then cp /etc/apt/ports-sources.list /etc/apt/sources.list; fi | ||
|
||
COPY packages.sh /opt/ | ||
RUN /opt/packages.sh $ARCH $JAVA_VERSION |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
#!/bin/bash | ||
|
||
export GIT_COMMITTER_EMAIL="[email protected]" | ||
export GIT_COMMITTER_NAME="libjitsi `basename $0`" | ||
|
||
ARCH=$1 | ||
JAVA_VERSION=$2 | ||
LIBROOT=$3 | ||
case "$ARCH" in | ||
"x86") | ||
VCPKG_ARCH="x86" | ||
JAVA_ARCH="i386" | ||
export CFLAGS="-m32 -msse -msse2" | ||
export CXXFLAGS="-m32 -msse -msse2" | ||
;; | ||
"x86-64") | ||
VCPKG_ARCH="x64" | ||
JAVA_ARCH="amd64" | ||
export CFLAGS="-m64 -msse -msse2" | ||
export CXXFLAGS="-m64 -msse -msse2" | ||
;; | ||
"arm64") | ||
#for libvpx | ||
export CROSS="aarch64-linux-gnu-" | ||
VCPKG_ARCH="arm64" | ||
JAVA_ARCH="arm64" | ||
TOOLCHAIN=$LIBROOT/src/native/cmake/toolchains/arm64-linux.cmake | ||
;; | ||
"ppc64el") | ||
VCPKG_ARCH="ppc64le" | ||
JAVA_ARCH="ppc64el" | ||
TOOLCHAIN=$LIBROOT/src/native/cmake/toolchains/ppc64el-linux.cmake | ||
;; | ||
esac | ||
|
||
export JAVA_HOME=/usr/lib/jvm/java-$JAVA_VERSION-openjdk-$JAVA_ARCH | ||
|
||
cd "$LIBROOT/src/native" || exit 1 | ||
cp cmake/vcpkg-triplets/x86-linux.cmake vcpkg/triplets/community | ||
cmake -B cmake-build-$ARCH \ | ||
-DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=$TOOLCHAIN \ | ||
-DVCPKG_VERBOSE=ON \ | ||
-DVCPKG_TARGET_TRIPLET=$VCPKG_ARCH-linux \ | ||
-DVCPKG_BUILD_TYPE=release \ | ||
-DCMAKE_BUILD_TYPE=release \ | ||
-DCMAKE_C_FLAGS="$CFLAGS" \ | ||
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \ | ||
-DUSE_SYSTEM_OPUS=OFF \ | ||
-DUSE_SYSTEM_SPEEX=OFF \ | ||
-DUSE_SYSTEM_USRSCTP=OFF \ | ||
-DUSE_SYSTEM_VPX=OFF | ||
|
||
cmake --build cmake-build-$ARCH --config Release --target install --parallel |
Oops, something went wrong.