mirror of
https://github.com/aircrack-ng/rtl8812au.git
synced 2024-11-22 21:34:37 +00:00
Merge pull request #1064 from DrSchottky/v5.6.4.2
Fix RPi build github action
This commit is contained in:
commit
91db7d2220
92
.github/workflows/raspberry.yml
vendored
92
.github/workflows/raspberry.yml
vendored
@ -14,87 +14,75 @@ jobs:
|
|||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo apt update > /dev/null
|
sudo apt-get update
|
||||||
sudo apt install -y wget gnupg2 > /dev/null
|
sudo apt-get install -y curl gnupg2 curl
|
||||||
sudo apt-get -y install qemu-system-arm qemu-user-static binfmt-support > /dev/null
|
sudo apt-get install -y gcc-arm-linux-gnueabihf crossbuild-essential-arm64 make
|
||||||
sudo apt install -y gcc-arm-linux-gnueabihf crossbuild-essential-arm64 make > /dev/null
|
sudo curl -fsSL http://archive.raspberrypi.org/debian/raspberrypi.gpg.key --output /usr/share/keyrings/raspberrypi.gpg.key
|
||||||
|
echo "deb [arch=amd64, signed-by=/usr/share/keyrings/raspberrypi.gpg.key] http://archive.raspberrypi.org/debian/ bullseye main" | sudo tee /etc/apt/sources.list.d/raspberrypi.list > /dev/null
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y raspberrypi-kernel-headers
|
||||||
- name: Build Pi kernel drivers
|
- name: Build Pi kernel drivers
|
||||||
id: build_raspberry
|
id: build_raspberry
|
||||||
run: |
|
run: |
|
||||||
echo "deb http://archive.raspberrypi.org/debian/ bullseye main" | sudo tee /etc/apt/sources.list.d/raspbian.list
|
|
||||||
wget -O - http://archive.raspberrypi.org/debian/raspberrypi.gpg.key | sudo apt-key add -
|
|
||||||
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
||||||
sed -i 's/CONFIG_PLATFORM_ARM_RPI = n/CONFIG_PLATFORM_ARM_RPI = y/g' Makefile
|
sed -i 's/CONFIG_PLATFORM_ARM_RPI = n/CONFIG_PLATFORM_ARM_RPI = y/g' Makefile
|
||||||
for arch in "armhf" "arm64"; do
|
for kernel_folder in /lib/modules/*+; do
|
||||||
echo "Adding arch" "$arch"
|
kver=`basename "$kernel_folder"`
|
||||||
sudo dpkg --add-architecture "$arch" > /dev/null
|
if [[ $kver =~ "v8" ]]; then
|
||||||
sudo apt update > /dev/null || true
|
|
||||||
sudo apt download -y raspberrypi-kernel-headers:"$arch" > /dev/null
|
|
||||||
sudo dpkg --force-all -i raspberrypi-kernel-headers* > /dev/null
|
|
||||||
sudo rm -f raspberrypi-kernel-headers*.deb
|
|
||||||
if [ "$arch" = "arm64" ]; then
|
|
||||||
target_arch="arm64"
|
target_arch="arm64"
|
||||||
cross="aarch64-linux-gnu-"
|
cross="aarch64-linux-gnu-"
|
||||||
sudo ln -fs /usr/aarch64-linux-gnu/lib/libc.so.6 /lib/libc.so.6
|
|
||||||
sudo ln -fs /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 /lib/ld-linux-aarch64.so.1
|
|
||||||
else
|
else
|
||||||
target_arch="arm"
|
target_arch="arm"
|
||||||
cross="arm-linux-gnueabihf-"
|
cross="arm-linux-gnueabihf-"
|
||||||
sudo ln -fs /usr/arm-linux-gnueabihf/lib/libc.so.6 /lib/libc.so.6
|
|
||||||
sudo ln -fs /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3 /lib/ld-linux-armhf.so.3
|
|
||||||
sudo ln -fs /usr/arm-linux-gnueabihf/lib/ld-linux.so.3 /lib/ld-linux.so.3
|
|
||||||
fi
|
fi
|
||||||
for kernel_folder in /lib/modules/*+; do
|
echo "Cross compiling" "$kver" "for arch" "$target_arch"
|
||||||
kver=`basename "$kernel_folder"`
|
make clean > log.txt
|
||||||
echo "Cross compiling" "$kver" "for arch" "$target_arch"
|
make ARCH=$target_arch CROSS_COMPILE=$cross KVER=$kver -j$(nproc) > log.txt && mkdir -p build/raspberrypi/$kver/ && cp 88XXau.ko build/raspberrypi/$kver/
|
||||||
sed -i '1156s/ARCH ?=.*/ARCH ?= '$target_arch'/g' Makefile
|
echo kernel_ver="$(echo $kver | cut -f 1 -d -)" >> $GITHUB_OUTPUT
|
||||||
sed -i '1157s/CROSS_COMPILE ?=.*/CROSS_COMPILE ?= '$cross'/g' Makefile
|
|
||||||
sed -i '1158s/KVER ?=.*/KVER ?= '$kver'/g' Makefile
|
|
||||||
make clean > log.txt
|
|
||||||
make -j$(nproc) > log.txt && mkdir -p build/raspberrypi/$kver/ && cp 88XXau.ko build/raspberrypi/$kver/
|
|
||||||
echo ::set-output name=kernel_ver::"$(echo $kver | cut -f 1 -d -)"
|
|
||||||
done
|
|
||||||
sudo apt purge -y raspberrypi-kernel-headers:"$arch" > /dev/null
|
|
||||||
done
|
done
|
||||||
- name: Build Re4son kernel drivers
|
- name: Build Re4son kernel drivers
|
||||||
id: build_kali
|
id: build_kali
|
||||||
run: |
|
run: |
|
||||||
echo "deb http://http.re4son-kernel.com/re4son/ kali-pi main" | sudo tee /etc/apt/sources.list.d/re4son.list
|
sudo apt-get -y install qemu-system-arm qemu-user-static binfmt-support > /dev/null
|
||||||
wget -O - https://re4son-kernel.com/keys/http/archive-key.asc | sudo apt-key add -
|
curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x96d00b0c4b00fd5360cc087711764ee8ac24832f" | sudo gpg --dearmor -o /usr/share/keyrings/kali.gpg
|
||||||
|
echo "deb [arch=armel,armhf,arm64 signed-by=/usr/share/keyrings/kali.gpg] http://http.re4son-kernel.com/re4son/ kali-pi main" | sudo tee /etc/apt/sources.list.d/kali.list
|
||||||
|
sudo sed -i 's/deb http/deb [arch=amd64] http/g' /etc/apt/sources.list
|
||||||
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
||||||
sed -i 's/CONFIG_PLATFORM_ARM_RPI = n/CONFIG_PLATFORM_ARM_RPI = y/g' Makefile
|
sed -i 's/CONFIG_PLATFORM_ARM_RPI = n/CONFIG_PLATFORM_ARM_RPI = y/g' Makefile
|
||||||
for arch in "armel" "armhf" "arm64"; do
|
for arch in "armel" "armhf" "arm64"; do
|
||||||
echo "Adding arch" "$arch"
|
echo "Adding arch" "$arch"
|
||||||
sudo dpkg --add-architecture "$arch" > /dev/null
|
sudo dpkg --add-architecture "$arch"
|
||||||
sudo apt update > /dev/null || true
|
sudo apt-get update
|
||||||
sudo apt install -y kalipi-kernel-headers:"$arch" > /dev/null
|
sudo apt-get install -y kalipi-kernel-headers:"$arch"
|
||||||
if [ "$arch" = "arm64" ]; then
|
|
||||||
target_arch="arm64"
|
|
||||||
cross="aarch64-linux-gnu-"
|
|
||||||
sudo ln -fs /usr/aarch64-linux-gnu/lib/libc.so.6 /lib/libc.so.6
|
|
||||||
sudo ln -fs /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 /lib/ld-linux-aarch64.so.1
|
|
||||||
else
|
|
||||||
target_arch="arm"
|
|
||||||
cross="arm-linux-gnueabihf-"
|
|
||||||
sudo ln -fs /usr/arm-linux-gnueabihf/lib/libc.so.6 /lib/libc.so.6
|
|
||||||
sudo ln -fs /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3 /lib/ld-linux-armhf.so.3
|
|
||||||
sudo ln -fs /usr/arm-linux-gnueabihf/lib/ld-linux.so.3 /lib/ld-linux.so.3
|
|
||||||
fi
|
|
||||||
for kernel_folder in /lib/modules/*Re4son*; do
|
for kernel_folder in /lib/modules/*Re4son*; do
|
||||||
kver=`basename "$kernel_folder"`
|
kver=`basename "$kernel_folder"`
|
||||||
|
if [[ $kver =~ "v8" ]]; then
|
||||||
|
target_arch="arm64"
|
||||||
|
cross="aarch64-linux-gnu-"
|
||||||
|
sudo ln -fs /usr/aarch64-linux-gnu/lib/libc.so.6 /lib/libc.so.6
|
||||||
|
sudo ln -fs /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 /lib/ld-linux-aarch64.so.1
|
||||||
|
else
|
||||||
|
target_arch="arm"
|
||||||
|
cross="arm-linux-gnueabihf-"
|
||||||
|
sudo ln -fs /usr/arm-linux-gnueabihf/lib/libc.so.6 /lib/libc.so.6
|
||||||
|
sudo ln -fs /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3 /lib/ld-linux-armhf.so.3
|
||||||
|
sudo ln -fs /usr/arm-linux-gnueabihf/lib/ld-linux.so.3 /lib/ld-linux.so.3
|
||||||
|
fi
|
||||||
echo "Cross compiling" "$kver" "for arch" "$target_arch"
|
echo "Cross compiling" "$kver" "for arch" "$target_arch"
|
||||||
sed -i '1156s/ARCH ?=.*/ARCH ?= '$target_arch'/g' Makefile
|
|
||||||
sed -i '1157s/CROSS_COMPILE ?=.*/CROSS_COMPILE ?= '$cross'/g' Makefile
|
|
||||||
sed -i '1158s/KVER ?=.*/KVER ?= '$kver'/g' Makefile
|
|
||||||
make clean > log.txt
|
make clean > log.txt
|
||||||
make -j$(nproc) > log.txt && mkdir -p build/kalipi/$kver/ && cp 88XXau.ko build/kalipi/$kver/
|
make ARCH=$target_arch CROSS_COMPILE=$cross KVER=$kver -j$(nproc) > log.txt && mkdir -p build/kalipi/$kver/ && cp 88XXau.ko build/kalipi/$kver/
|
||||||
echo ::set-output name=kernel_ver::"$(echo $kver | cut -f 1 -d -)"
|
echo kernel_ver="$(echo $kver | cut -f 1 -d -)" >> $GITHUB_OUTPUT
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
- name: Compress artifacts
|
- name: Compress artifacts
|
||||||
run: |
|
run: |
|
||||||
tar czvf rtl8812au-kalipi-${{ steps.build_kali.outputs.kernel_ver }}.tar.gz -C build/kalipi/ .
|
tar czvf rtl8812au-kalipi-${{ steps.build_kali.outputs.kernel_ver }}.tar.gz -C build/kalipi/ .
|
||||||
tar czvf rtl8812au-raspberrypi-${{ steps.build_raspberry.outputs.kernel_ver }}.tar.gz -C build/raspberrypi/ .
|
tar czvf rtl8812au-raspberrypi-${{ steps.build_raspberry.outputs.kernel_ver }}.tar.gz -C build/raspberrypi/ .
|
||||||
|
- name: Upload artifacts
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: RPi kernel drivers
|
||||||
|
path: rtl8812au*.tar.gz
|
||||||
- name: Publish release
|
- name: Publish release
|
||||||
uses: softprops/action-gh-release@v1
|
uses: softprops/action-gh-release@v1
|
||||||
if: startsWith(github.ref, 'refs/tags/')
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
Loading…
Reference in New Issue
Block a user