Skip to content

Commit

Permalink
missing assets
Browse files Browse the repository at this point in the history
  • Loading branch information
eladyn committed May 2, 2023
1 parent d2387ed commit 6006986
Showing 1 changed file with 35 additions and 53 deletions.
88 changes: 35 additions & 53 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ jobs:
artifact_prefix: linux
target: x86_64-unknown-linux-gnu
- build_target: linux-armhf
os: ubuntu-18.04
os: ubuntu-20.04
artifact_prefix: linux-armhf
target: arm-unknown-linux-gnueabihf
- build_target: linux-armv6
os: ubuntu-18.04
os: ubuntu-20.04
artifact_prefix: linux-armv6
target: arm-unknown-linux-gnueabihf
- build_target: macos
Expand Down Expand Up @@ -75,80 +75,62 @@ jobs:

steps:
- name: Installing Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.rust }}
target: ${{ matrix.target }}
override: true
run: curl https://sh.rustup.rs -sSf | sh -s -- -y --profile minimal --default-toolchain ${{ matrix.rust }} --target ${{ matrix.target }}
- name: Installing needed macOS dependencies
if: matrix.os == 'macos-latest'
run: brew install awk dbus pkg-config portaudio
- name: Install Cross-Compile Support (armhf)
if: matrix.build_target == 'linux-armhf' || matrix.build_target == 'linux-armv6'
uses: cyberjunk/gha-ubuntu-cross@v2
with:
arch: armhf
- name: Installing needed Ubuntu dependencies
if: matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-18.04'
if: matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-20.04'
run: |
sudo apt-get update
sudo apt-get install -y -qq libasound2-dev libssl-dev libpulse-dev libdbus-1-dev
- name: Installing needed Ubuntu armhf dependencies
if: matrix.os == 'ubuntu-18.04' && matrix.build_target == 'linux-armhf'
if: matrix.os == 'ubuntu-20.04' && matrix.build_target == 'linux-armhf'
run: |
sudo mkdir -p /build/sysroot
echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports/ bionic main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install -y -qq gcc-arm-linux-gnueabihf libc6-armhf-cross libc6-dev-armhf-cross
sudo apt-get download libasound2:armhf libasound2-dev:armhf libssl-dev:armhf libssl1.1:armhf
sudo dpkg -x libasound2_*.deb /build/sysroot/
sudo dpkg -x libssl-dev*.deb /build/sysroot/
sudo dpkg -x libssl1.1*.deb /build/sysroot/
sudo dpkg -x libasound2-dev*.deb /build/sysroot/
sudo apt-get install libasound2:armhf libasound2-dev:armhf libssl-dev:armhf libssl1.1:armhf
echo "PKG_CONFIG_ALLOW_CROSS=1" >> $GITHUB_ENV
echo "TEST=abc" >> $GITHUB_ENV
echo "RUSTFLAGS=-C linker=arm-linux-gnueabihf-gcc -L/usr/arm-linux-gnueabihf/lib -L/build/sysroot/usr/lib/arm-linux-gnueabihf -L/build/sysroot/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "C_INCLUDE_PATH=/build/sysroot/usr/include" >> $GITHUB_ENV
echo "OPENSSL_LIB_DIR=/build/sysroot/usr/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "OPENSSL_INCLUDE_DIR=/build/sysroot/usr/include/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "RUSTFLAGS=-C linker=arm-linux-gnueabihf-gcc -L/usr/arm-linux-gnueabihf/lib -L/usr/lib/arm-linux-gnueabihf -L/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "C_INCLUDE_PATH=/usr/include" >> $GITHUB_ENV
echo "OPENSSL_LIB_DIR=/usr/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "OPENSSL_INCLUDE_DIR=/usr/include/arm-linux-gnueabihf" >> $GITHUB_ENV
- name: Installing needed Ubuntu armv6 dependencies
if: matrix.os == 'ubuntu-18.04' && matrix.build_target == 'linux-armv6'
if: matrix.os == 'ubuntu-20.04' && matrix.build_target == 'linux-armv6'
run: |
sudo mkdir -p /build/sysroot
echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports/ bionic main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install -y -qq git
sudo git -C /build clone --depth=1 https://github.com/raspberrypi/tools.git
sudo apt-get download libasound2:armhf libasound2-dev:armhf libssl-dev:armhf libssl1.1:armhf
sudo dpkg -x libasound2_*.deb /build/sysroot/
sudo dpkg -x libssl-dev*.deb /build/sysroot/
sudo dpkg -x libssl1.1*.deb /build/sysroot/
sudo dpkg -x libasound2-dev*.deb /build/sysroot/
echo "/build/tools/arm-bcm2708/arm-linux-gnueabihf/bin" >> $GITHUB_PATH
sudo apt-get install -y -qq git build-essential gcc g++
sudo wget -q "https://download.sourceforge.net/project/raspberry-pi-cross-compilers/Raspberry%20Pi%20GCC%20Cross-Compiler%20Toolchains/Bullseye/GCC%2010.3.0/Raspberry%20Pi%201%2C%20Zero/cross-gcc-10.3.0-pi_0-1.tar.gz"
sudo tar xzf cross-gcc-10.3.0-pi_0-1.tar.gz
sudo mv cross-pi-gcc-10.3.0-0 /cross-gcc
sudo apt-get install libasound2:armhf libasound2-dev:armhf libssl-dev:armhf libssl1.1:armhf
echo "/cross-gcc/bin" >> $GITHUB_PATH
echo "PKG_CONFIG_ALLOW_CROSS=1" >> $GITHUB_ENV
echo "TEST=abcd" >> $GITHUB_ENV
echo "RUSTFLAGS=-C linker=/build/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc -L/build/tools/arm-bcm2708/arm-linux-gnueabihf/arm-linux-gnueabihf/sysroot/lib -L/build/tools/arm-bcm2708/arm-linux-gnueabihf/arm-linux-gnueabihf/sysroot/usr/lib -L/build/sysroot/usr/lib/arm-linux-gnueabihf -L/build/sysroot/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "C_INCLUDE_PATH=/build/sysroot/usr/include" >> $GITHUB_ENV
echo "OPENSSL_LIB_DIR=/build/sysroot/usr/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "OPENSSL_INCLUDE_DIR=/build/sysroot/usr/include/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "RUSTFLAGS=-C linker=/cross-gcc/bin/arm-linux-gnueabihf-gcc -L/cross-gcc/arm-linux-gnueabihf/libc/usr/lib -L/cross-gcc/arm-linux-gnueabihf/libc/lib -L/cross-gcc/arm-linux-gnueabihf/lib -L/usr/lib/arm-linux-gnueabihf -L/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "C_INCLUDE_PATH=/usr/include" >> $GITHUB_ENV
echo "OPENSSL_LIB_DIR=/usr/lib/arm-linux-gnueabihf" >> $GITHUB_ENV
echo "OPENSSL_INCLUDE_DIR=/usr/include/arm-linux-gnueabihf" >> $GITHUB_ENV
- name: Installing needed Ubuntu armhf dependencies (full)
if: matrix.os == 'ubuntu-18.04' && matrix.build_target == 'linux-armhf' && matrix.artifact_type != 'slim'
if: matrix.os == 'ubuntu-20.04' && matrix.build_target == 'linux-armhf' && matrix.artifact_type != 'slim'
run: |
# Make dbus-rs cross-compile, see https://github.com/diwic/dbus-rs/issues/184#issuecomment-520228758
sudo apt-get download libdbus-1-dev:armhf libdbus-1-3:armhf libsystemd0:armhf libgcrypt20:armhf liblzma5:armhf liblz4-1:armhf libgpg-error0:armhf
sudo dpkg -x libdbus-1-3*.deb /build/sysroot/
sudo dpkg -x libdbus-1-dev*.deb /build/sysroot/
sudo dpkg -x libsystemd0*.deb /build/sysroot/
sudo dpkg -x libgcrypt20_*.deb /build/sysroot/
sudo dpkg -x liblzma5_*.deb /build/sysroot/
sudo dpkg -x liblz4-1_*.deb /build/sysroot/
sudo dpkg -x libgpg-error0_*.deb /build/sysroot/
sudo cp -r /build/sysroot/lib/* /build/sysroot/usr/lib/
sudo ln -frs /build/sysroot/lib/arm-linux-gnueabihf/libdbus-1.so.3 /build/sysroot/lib/arm-linux-gnueabihf/libdbus-1.so
sudo ln -rs /build/sysroot/lib/arm-linux-gnueabihf/libgcrypt.so.20 /build/sysroot/lib/arm-linux-gnueabihf/libgcrypt.so
sudo ln -rs /build/sysroot/lib/arm-linux-gnueabihf/libgpg-error.so.0 /build/sysroot/lib/arm-linux-gnueabihf/libgpg-error.so
sudo ln -rs /build/sysroot/lib/arm-linux-gnueabihf/liblzma.so.5 /build/sysroot/lib/arm-linux-gnueabihf/liblzma.so
sudo ln -rs /build/sysroot/lib/arm-linux-gnueabihf/libsystemd.so.0 /build/sysroot/lib/arm-linux-gnueabihf/libsystemd.so
sudo ln -rs /build/sysroot/usr/lib/arm-linux-gnueabihf/liblz4.so.1 /build/sysroot/usr/lib/arm-linux-gnueabihf/liblz4.so
sudo apt-get install -y libdbus-1-dev:armhf libdbus-1-3:armhf libsystemd0:armhf libgcrypt20:armhf liblzma5:armhf liblz4-1:armhf libgpg-error0:armhf
sudo ln -frs /lib/arm-linux-gnueabihf/libdbus-1.so.3 /lib/arm-linux-gnueabihf/libdbus-1.so
sudo ln -rs /lib/arm-linux-gnueabihf/libgcrypt.so.20 /lib/arm-linux-gnueabihf/libgcrypt.so
sudo ln -rs /lib/arm-linux-gnueabihf/libgpg-error.so.0 /lib/arm-linux-gnueabihf/libgpg-error.so
sudo ln -rs /lib/arm-linux-gnueabihf/liblzma.so.5 /lib/arm-linux-gnueabihf/liblzma.so
sudo ln -rs /lib/arm-linux-gnueabihf/libsystemd.so.0 /lib/arm-linux-gnueabihf/libsystemd.so
sudo ln -rs /usr/lib/arm-linux-gnueabihf/liblz4.so.1 /usr/lib/arm-linux-gnueabihf/liblz4.so
sudo mkdir -p /.cargo
echo -e '[target.arm-unknown-linux-gnueabihf.dbus]\nrustc-link-lib = ["dbus-1", "gcrypt", "gpg-error", "lz4", "lzma", "systemd"]' | sudo tee -a /.cargo/config
- name: Checking out sources
uses: actions/checkout@v1
uses: actions/checkout@v3
- name: Running cargo build
uses: actions-rs/cargo@v1
with:
Expand Down

0 comments on commit 6006986

Please sign in to comment.