diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 4f9e8c9..e713dfb 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -22,8 +22,10 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - target: [x86_64, x86, - # aarch64, armv7, s390x, ppc64le + target: [ + #x86_64, x86, + aarch64 + # armv7, s390x, ppc64le ] steps: - uses: actions/checkout@v3 diff --git a/ci/prepare-ci-container.sh b/ci/prepare-ci-container.sh index 7c39781..79daa70 100755 --- a/ci/prepare-ci-container.sh +++ b/ci/prepare-ci-container.sh @@ -2,16 +2,40 @@ set -e +if command -v apt-get &> /dev/null; then + echo "using apt-get" + apt-get update + apt-get install -y libxkbcommon0 libxkbcommon-dev libxkbcommon-tools automake libtool pkg-config -yum install -y libxkbcommon-devel libatomic + cat <> /etc/apt/sources.list + deb [arch=arm64] http://ports.ubuntu.com/ jammy main multiverse universe + deb [arch=arm64] http://ports.ubuntu.com/ jammy-security main multiverse universe + deb [arch=arm64] http://ports.ubuntu.com/ jammy-backports main multiverse universe + deb [arch=arm64] http://ports.ubuntu.com/ jammy-updates main multiverse universe +EOF + dpkg --print-foreign-architectures + dpkg --add-architecture arm64 + dpkg --print-foreign-architectures + set +e + apt-get update + set -e + apt-get install -y libxkbcommon-dev:arm64 + dpkg -L libxkbcommon-dev:arm64 + export PATH=~/usr/lib/aarch64-linux-gnu:$PATH + export RUSTFLAGS='-L /usr/lib/aarch64-linux-gnu' + cp /usr/lib/aarch64-linux-gnu/libxkbcommon.so /usr/aarch64-unknown-linux-gnu/aarch64-unknown-linux-gnu/lib64 +elif command -v yum &> /dev/null; then + echo "using yum" + yum install -y libxkbcommon-devel libatomic -cd /tmp -git clone https://github.com/pkgconf/pkgconf -cd pkgconf - -./autogen.sh -./configure \ - --with-system-libdir=/lib:/usr/lib \ - --with-system-includedir=/usr/include -make -make install + # build pkg-config manually due to a bug in the old version from the repo + cd /tmp + git clone https://github.com/pkgconf/pkgconf + cd pkgconf + ./autogen.sh + ./configure \ + --with-system-libdir=/lib:/usr/lib \ + --with-system-includedir=/usr/include + make + make install +fi