mirror of
https://xff.cz/git/u-boot/
synced 2025-09-01 00:32:04 +02:00
travis: Replace pre-built ARM/ARM64 GRUB images with the one built from source
As of today travis uses the pre-built GRUB ARM/ARM64 images from opensuse. But azure/gitlab are using images built from GRUB 2.04 source. This updates travis to build GRUB ARM/ARM64 UEFI targets from source, to keep in sync with azure/gitlab. Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
55
.travis.yml
55
.travis.yml
@@ -14,6 +14,7 @@ addons:
|
|||||||
- ubuntu-toolchain-r-test
|
- ubuntu-toolchain-r-test
|
||||||
- llvm-toolchain-bionic-7
|
- llvm-toolchain-bionic-7
|
||||||
packages:
|
packages:
|
||||||
|
- autopoint
|
||||||
- cppcheck
|
- cppcheck
|
||||||
- sloccount
|
- sloccount
|
||||||
- sparse
|
- sparse
|
||||||
@@ -55,10 +56,6 @@ install:
|
|||||||
- cat ~/.buildman
|
- cat ~/.buildman
|
||||||
- grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
- grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
||||||
- grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
- grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
||||||
- mkdir ~/grub2-arm
|
|
||||||
- ( cd ~/grub2-arm; wget -O - http://download.opensuse.org/ports/armv7hl/distribution/leap/42.2/repo/oss/suse/armv7hl/grub2-arm-efi-2.02~beta2-87.1.armv7hl.rpm | rpm2cpio | cpio -di )
|
|
||||||
- mkdir ~/grub2-arm64
|
|
||||||
- ( cd ~/grub2-arm64; wget -O - http://download.opensuse.org/ports/aarch64/distribution/leap/42.2/repo/oss/suse/aarch64/grub2-arm64-efi-2.02~beta2-87.1.aarch64.rpm | rpm2cpio | cpio -di )
|
|
||||||
- wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd64.deb && sudo dpkg -i libmpfr4_3.1.4-1_amd64.deb && rm libmpfr4_3.1.4-1_amd64.deb
|
- wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd64.deb && sudo dpkg -i libmpfr4_3.1.4-1_amd64.deb && rm libmpfr4_3.1.4-1_amd64.deb
|
||||||
|
|
||||||
env:
|
env:
|
||||||
@@ -112,6 +109,48 @@ before_script:
|
|||||||
popd;
|
popd;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Build GRUB UEFI targets
|
||||||
|
- if [[ "${QEMU_TARGET}" == "arm-softmmu" ]]; then
|
||||||
|
git clone git://git.savannah.gnu.org/grub.git /tmp/grub &&
|
||||||
|
pushd /tmp/grub &&
|
||||||
|
git checkout grub-2.04 &&
|
||||||
|
./bootstrap &&
|
||||||
|
./configure --target=arm --with-platform=efi
|
||||||
|
CC=gcc
|
||||||
|
TARGET_CC=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc
|
||||||
|
TARGET_OBJCOPY=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-objcopy
|
||||||
|
TARGET_STRIP=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-strip
|
||||||
|
TARGET_NM=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-nm
|
||||||
|
TARGET_RANLIB=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-ranlib &&
|
||||||
|
make -j4 &&
|
||||||
|
./grub-mkimage -O arm-efi -o ~/grub_arm.efi --prefix= -d
|
||||||
|
grub-core cat chain configfile echo efinet ext2 fat halt help linux
|
||||||
|
lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot
|
||||||
|
search search_fs_file search_fs_uuid search_label serial sleep test
|
||||||
|
true &&
|
||||||
|
popd;
|
||||||
|
fi
|
||||||
|
- if [[ "${QEMU_TARGET}" == "aarch64-softmmu" ]]; then
|
||||||
|
git clone git://git.savannah.gnu.org/grub.git /tmp/grub &&
|
||||||
|
pushd /tmp/grub &&
|
||||||
|
git checkout grub-2.04 &&
|
||||||
|
./bootstrap &&
|
||||||
|
./configure --target=aarch64 --with-platform=efi
|
||||||
|
CC=gcc
|
||||||
|
TARGET_CC=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc
|
||||||
|
TARGET_OBJCOPY=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-objcopy
|
||||||
|
TARGET_STRIP=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-strip
|
||||||
|
TARGET_NM=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-nm
|
||||||
|
TARGET_RANLIB=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-ranlib &&
|
||||||
|
make -j4 &&
|
||||||
|
./grub-mkimage -O arm64-efi -o ~/grub_arm64.efi --prefix= -d
|
||||||
|
grub-core cat chain configfile echo efinet ext2 fat halt help linux
|
||||||
|
lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot
|
||||||
|
search search_fs_file search_fs_uuid search_label serial sleep test
|
||||||
|
true &&
|
||||||
|
popd;
|
||||||
|
fi
|
||||||
|
|
||||||
script:
|
script:
|
||||||
# Comments must be outside the command strings below, or the Travis parser
|
# Comments must be outside the command strings below, or the Travis parser
|
||||||
# will get confused.
|
# will get confused.
|
||||||
@@ -133,8 +172,12 @@ script:
|
|||||||
- export UBOOT_TRAVIS_BUILD_DIR=`cd .. && pwd`/.bm-work/${TEST_PY_BD};
|
- export UBOOT_TRAVIS_BUILD_DIR=`cd .. && pwd`/.bm-work/${TEST_PY_BD};
|
||||||
cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/;
|
cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/;
|
||||||
cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/;
|
cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/;
|
||||||
cp ~/grub2-arm/usr/lib/grub2/arm-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi;
|
if [[ -e ~/grub_arm.efi ]]; then
|
||||||
cp ~/grub2-arm64/usr/lib/grub2/arm64-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi;
|
cp ~/grub_arm.efi $UBOOT_TRAVIS_BUILD_DIR/;
|
||||||
|
fi;
|
||||||
|
if [[ -e ~/grub_arm64.efi ]]; then
|
||||||
|
cp ~/grub_arm64.efi $UBOOT_TRAVIS_BUILD_DIR/;
|
||||||
|
fi;
|
||||||
if [[ "${TEST_PY_BD}" != "" ]]; then
|
if [[ "${TEST_PY_BD}" != "" ]]; then
|
||||||
virtualenv -p /usr/bin/python3 /tmp/venv;
|
virtualenv -p /usr/bin/python3 /tmp/venv;
|
||||||
. /tmp/venv/bin/activate;
|
. /tmp/venv/bin/activate;
|
||||||
|
Reference in New Issue
Block a user