Update linux-arm64-full

Update buildroot to 2025.05 (from 2021.09.20)
Improve build speed (remove unused apps and libs)
Update scripts
Update tests

Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
This commit is contained in:
2025-06-22 21:03:19 +02:00
parent 3deaae3929
commit 76dedb50da
10 changed files with 1177 additions and 641 deletions

View File

@ -1,7 +1,7 @@
name: 'Close stale issues and PRs' name: 'Close stale issues and PRs'
on: on:
schedule: schedule:
- cron: '0 */8 * * *' - cron: '0 0 */2 * *'
jobs: jobs:
stale: stale:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -12,11 +12,11 @@ jobs:
exempt-issue-milestones: 'future,alpha,beta,release,bugfix,improvement,enhancement,help wanted' exempt-issue-milestones: 'future,alpha,beta,release,bugfix,improvement,enhancement,help wanted'
exempt-pr-milestones: 'bugfix,improvement,enhancement,help wanted' exempt-pr-milestones: 'bugfix,improvement,enhancement,help wanted'
exempt-all-pr-assignees: true exempt-all-pr-assignees: true
stale-issue-message: 'This issue is stale because it has been open 120 days with no activity. Remove stale label or comment or this will be closed in 30 days.' stale-issue-message: 'This issue is stale because it has been open 240 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
stale-pr-message: 'This PR is stale because it has been open 120 days with no activity. Remove stale label or comment or this will be closed in 30 days.' stale-pr-message: 'This PR is stale because it has been open 240 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
close-issue-message: 'This issue was closed because it has been stalled for 30 days with no activity.' close-issue-message: 'This issue was closed because it has been stalled for 30 days with no activity.'
close-pr-message: 'This PR was closed because it has been stalled for 30 days with no activity.' close-pr-message: 'This PR was closed because it has been stalled for 30 days with no activity.'
days-before-issue-stale: 120 days-before-issue-stale: 240
days-before-pr-stale: 120 days-before-pr-stale: 240
days-before-issue-close: 30 days-before-issue-close: 60
days-before-pr-close: 30 days-before-pr-close: 60

View File

@ -1397,13 +1397,13 @@ jobs:
cd .. cd ..
rm -rf C rm -rf C
# Updated on 12/09/2022 No longer maintained # Updated on 22/06/2025
- name: C-Plus-Plus build test - name: C-Plus-Plus build test
if: ${{ matrix.arch_name.C-Plus-Plus == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }} if: ${{ matrix.arch_name.C-Plus-Plus == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
run: | run: |
git clone https://github.com/TheAlgorithms/C-Plus-Plus.git git clone https://github.com/TheAlgorithms/C-Plus-Plus.git
cd C-Plus-Plus cd C-Plus-Plus
git checkout 0594923efa8e6b006a5d754c5e7976850290577c git checkout 93a700c7e947c8704df387564ea4780e6c031967
./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.C-Plus-Plus_arg }} ./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.C-Plus-Plus_arg }}
cd .. cd ..
rm -rf C-Plus-Plus rm -rf C-Plus-Plus

View File

@ -35,6 +35,8 @@ HOST_ARCH := $(or $(HOST_ARCH), $(shell uname -m | sed -e 's/x86_64/amd64/' -e '
# Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux2014-x64) # Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux2014-x64)
BIN = ./bin BIN = ./bin
RM = --rm
# These images are built using the "build implicit rule" # These images are built using the "build implicit rule"
STANDARD_IMAGES := android-arm android-arm64 android-x86 android-x86_64 \ STANDARD_IMAGES := android-arm android-arm64 android-x86 android-x86_64 \
linux-i686 linux-x86 linux-x64 linux-x64-clang linux-arm64-musl linux-arm64-full \ linux-i686 linux-x86 linux-x64 linux-x64-clang linux-arm64-musl linux-arm64-full \
@ -93,13 +95,6 @@ windows-armv7.test_ARGS = --exe-suffix ".exe"
windows-arm64.test_ARGS = --exe-suffix ".exe" windows-arm64.test_ARGS = --exe-suffix ".exe"
bare-armv7emhf-nano_newlib.test_ARGS = --linker-flags="--specs=nosys.specs" bare-armv7emhf-nano_newlib.test_ARGS = --linker-flags="--specs=nosys.specs"
# On CircleCI, do not attempt to delete container
# See https://circleci.com/docs/docker-btrfs-error/
RM = --rm
ifeq ("$(CIRCLECI)", "true")
RM =
endif
# Tag images with date and Git short hash in addition to revision # Tag images with date and Git short hash in addition to revision
TAG := $(shell date '+%Y%m%d')-$(shell git rev-parse --short HEAD) TAG := $(shell date '+%Y%m%d')-$(shell git rev-parse --short HEAD)
@ -124,20 +119,7 @@ test: base.test $(addsuffix .test,$(IMAGES))
# #
$(GEN_IMAGE_DOCKERFILES) Dockerfile: %Dockerfile: %Dockerfile.in $(DOCKER_COMPOSITE_PATH) $(GEN_IMAGE_DOCKERFILES) Dockerfile: %Dockerfile: %Dockerfile.in $(DOCKER_COMPOSITE_PATH)
sed \ sed $(foreach f,$(DOCKER_COMPOSITE_SOURCES),-e '/$(f)/ r $(DOCKER_COMPOSITE_FOLDER_PATH)$(f)') $< > $@
-e '/common.docker/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.docker' \
-e '/common.debian/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.debian' \
-e '/common.manylinux_2_28/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.manylinux_2_28' \
-e '/common.manylinux_2_34/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.manylinux_2_34' \
-e '/common.manylinux2014/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.manylinux2014' \
-e '/common.crosstool/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.crosstool' \
-e '/common.buildroot/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.buildroot' \
-e '/common-manylinux.crosstool/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common-manylinux.crosstool' \
-e '/common.webassembly/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.webassembly' \
-e '/common.windows/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.windows' \
-e '/common.dockcross/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.dockcross' \
-e '/common.label-and-env/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.label-and-env' \
$< > $@
# #
# web-wasm # web-wasm

View File

@ -19,12 +19,8 @@ COPY \
/dockcross/ /dockcross/
# Build and install the toolchain, cleaning up artifacts afterwards. # Build and install the toolchain, cleaning up artifacts afterwards.
RUN mkdir /dockcross/buildroot \ RUN mkdir /dockcross/buildroot && cd /dockcross/buildroot && \
&& cd /dockcross/buildroot \ /dockcross/install-buildroot-toolchain.sh -c "/dockcross/buildroot.config" -v "${BR_VERSION}"
&& /dockcross/install-buildroot-toolchain.sh \
-c "/dockcross/buildroot.config" \
-v "${BR_VERSION}" \
&& rm -rf /dockcross/buildroot /dockcross/install-buildroot-toolchain.sh
# Restore our default workdir (from "dockcross/base"). # Restore our default workdir (from "dockcross/base").
WORKDIR /work WORKDIR /work

View File

@ -42,5 +42,8 @@ RUN \
python-is-python3 \ python-is-python3 \
&& apt-get clean autoclean --yes \ && apt-get clean autoclean --yes \
&& apt-get autoremove --yes \ && apt-get autoremove --yes \
&& rm -rf /var/lib/{apt,dpkg,cache,log}/ \ && rm -rf /var/lib/apt/ \
&& rm -rf /var/lib/dpkg/ \
&& rm -rf /var/cache/ \
&& rm -rf /var/log/ \
&& rm /etc/ssh/*key* && rm /etc/ssh/*key*

View File

@ -22,7 +22,9 @@ autoreconf
./configure --with-ssl-dir=/usr/local/ssl --prefix=/usr/local --with-libs=-lpthread ./configure --with-ssl-dir=/usr/local/ssl --prefix=/usr/local --with-libs=-lpthread
make -j1 install
make -j"$(nproc)"
make install
cd /usr/src cd /usr/src
rm -rf ${OPENSSH_SRC_DIR} rm -rf ${OPENSSH_SRC_DIR}

View File

@ -10,7 +10,7 @@ usage() { echo "Usage: $0 -c <config-path> -v <version>" 1>&2; exit 1; }
REPO_URL="https://github.com/buildroot/buildroot.git" REPO_URL="https://github.com/buildroot/buildroot.git"
CONFIG_PATH="" CONFIG_PATH=""
REV="2021.08-rc1" REV="2025.05"
while getopts "c:v:" o; do while getopts "c:v:" o; do
case "${o}" in case "${o}" in
c) c)
@ -35,9 +35,9 @@ if [ -z ${REV} ]; then
echo "WARNING: No version selected, use default version: $REV (-v)." echo "WARNING: No version selected, use default version: $REV (-v)."
fi fi
git clone "$REPO_URL" --recurse-submodules --shallow-submodules --depth 1 --branch "$REV" buildroot
git clone "$REPO_URL" --recurse-submodules --remote-submodules #--branch="$REV" # Only to generate the project files, config will be overwritten later
cd buildroot make -C buildroot O=/aarch64_efi aarch64_efi_defconfig
git checkout "$REV" cp "$CONFIG_PATH" /aarch64_efi/.config
cp "$CONFIG_PATH" .config FORCE_UNSAFE_CONFIGURE=1 make -C /aarch64_efi sdk
make rm -rf buildroot /aarch64_efi/build /aarch64_efi/images /aarch64_efi/staging /aarch64_efi/target/

View File

@ -6,8 +6,8 @@ LABEL maintainer="Matt McCormick matt@mmmccormick.com"
# This is for 64-bit ARM Linux machine # This is for 64-bit ARM Linux machine
# Buildroot version # Buildroot version
# buildroot master 2021-09-20 # buildroot master 2025-06-22
ENV BR_VERSION=d4877e6f88d5eea54dc74b855556ffc0dd3f399f ENV BR_VERSION=2025.05
#include "common.buildroot" #include "common.buildroot"
@ -20,7 +20,7 @@ RUN apt-get update \
# The CROSS_TRIPLE is a configured alias of the "aarch64-buildroot-linux-gnu" target. # The CROSS_TRIPLE is a configured alias of the "aarch64-buildroot-linux-gnu" target.
ENV CROSS_TRIPLE=aarch64-buildroot-linux-gnu ENV CROSS_TRIPLE=aarch64-buildroot-linux-gnu
ENV CROSS_ROOT=/buildroot ENV CROSS_ROOT=/aarch64_efi/host
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \ AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \ CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \

File diff suppressed because it is too large Load Diff

View File

@ -21,9 +21,6 @@ if (( $# >= 1 )); then
cmake_arg=$* cmake_arg=$*
echo "cmake arg: $cmake_arg" echo "cmake arg: $cmake_arg"
# echo "Pulling dockcross/$image"
# docker pull "dockcross/$image:$tag"
echo "Make script dockcross-$image" echo "Make script dockcross-$image"
docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image" docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image"
chmod +x ./dockcross-"$image" chmod +x ./dockcross-"$image"