~aleteoryx/muditaos

00fff9ac9656049f6093529973853d5bfc45d299 — Radoslaw Wicik 4 years ago 366b03a
[EGD-5830] Update gcc to v10

New compile is faster and produces smaller code
4 files changed, 24 insertions(+), 16 deletions(-)

M config/bootstrap.sh
M config/bootstrap_config
M docker/Dockerfile.runner.in
M in_docker.sh
M config/bootstrap.sh => config/bootstrap.sh +5 -4
@@ 70,9 70,10 @@ function add_ignore_revs_for_blame() {
function setup_gcc_alternatives() {
    echo -e "\e[32m${FUNCNAME[0]}\e[0m"
    cat <<-MSGEND
		# set gcc-9 as default alternative (instead of default current in ubuntu)
		sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 900 --slave /usr/bin/g++ g++ /usr/bin/g++-9
		# set gcc-10 as default alternative (instead of default current in ubuntu)
		sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 1000 --slave /usr/bin/g++ g++ /usr/bin/g++-10
		MSGEND
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 1000 --slave /usr/bin/g++ g++ /usr/bin/g++-10
}

function install_pip_packages() {


@@ 158,8 159,8 @@ BUILD_STEPS=(
        setup_arm_toolchain
        setup_cmake
        setup_gcc_alternatives
        "add_to_path ${ARM_GCC_PATH_VAR} ${HOME}/${ARM_GCC}/bin"
        "add_to_path ${CMAKE_PATH_VAR} ${HOME}/${CMAKE_NAME}/bin"
        "add_to_path ARM_GCC ${HOME}/${ARM_GCC}/bin"
        "add_to_path CMAKE ${HOME}/${CMAKE_NAME}/bin"
        install_docker
        add_to_docker_group
        )

M config/bootstrap_config => config/bootstrap_config +7 -7
@@ 1,13 1,13 @@

# configuration variables used by bootstrap and dockerbuilder
# ARM_GCC="gcc-arm-none-eabi-9-2020-q2-update"
ARM_GCC="gcc-arm-none-eabi-9-2019-q4-major"
ARM_GCC="gcc-arm-none-eabi-10-2020-q4-major"
ARM_GCC_PKG="${ARM_GCC}-x86_64-linux.tar.bz2"
ARM_GCC_SOURCE_LINK="https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2?revision=108bd959-44bd-4619-9c19-26187abf5225&la=en&hash=E788CE92E5DFD64B2A8C246BBA91A249CB8E2D2D"
ARM_GCC_SOURCE_LINK="https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2?revision=ca0cbf9c-9de2-491c-ac48-898b5bbc0443&la=en&hash=68760A8AE66026BCF99F05AC017A6A50C6FD832A"
ARM_GCC_PATH_VAR="${ARM_GCC//-/_}"
ARM_GCC_MD5="fe0029de4f4ec43cf7008944e34ff8cc"
ARM_GCC_MD5="8312c4c91799885f222f663fc81f9a31"

CMAKE_VERSION="3.17.5"
CMAKE_VERSION="3.19.5"
CMAKE_NAME="cmake-${CMAKE_VERSION}-Linux-x86_64"
CMAKE_SOURCE_LINK="https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/${CMAKE_NAME}.tar.gz"
CMAKE_PKG="${CMAKE_SOURCE_LINK##*/}"


@@ 16,7 16,7 @@ CMAKE_SHA_LINK="https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERS
CMAKE_SHA_FILE="${CMAKE_SHA_LINK##*/}"


GH_RUNNER_VERSION="2.273.5"
GH_RUNNER_VERSION="2.277.1"
GH_RUNNER_NAME="actions-runner-linux-x64-${GH_RUNNER_VERSION}"
GH_RUNNER_LINK="https://github.com/actions/runner/releases/download/v${GH_RUNNER_VERSION}/${GH_RUNNER_NAME}.tar.gz"
GH_RUNNER_PKG="${GH_RUNNER_LINK##*/}"


@@ 33,8 33,8 @@ INSTALL_PACKAGES="
        clang-tidy \
        curl \
        doxygen \
        g++-9 \
        gcc-9 \
        g++-10 \
        gcc-10 \
        git \
        gnupg2 \
        graphviz \

M docker/Dockerfile.runner.in => docker/Dockerfile.runner.in +5 -3
@@ 5,9 5,9 @@ MAINTAINER radoslaw.wicik@mudiata.com

RUN ln -fs /usr/share/zoneinfo/@DOCKER_TIMEZONE@ /etc/localtime
RUN export DEBIAN_FRONTEND=noninteractive 
RUN apt-get update && \
    apt-get full-upgrade -y && \
    apt-get install -y \
RUN apt-get update 
RUN apt-get full-upgrade -y 
RUN apt-get install -y \
        @INSTALL_PACKAGES@ 
RUN ln -fs /usr/bin/python3 /usr/bin/python
RUN locale-gen pl_PL.UTF-8 \


@@ 17,6 17,8 @@ RUN locale-gen pl_PL.UTF-8 \
    dpkg-reconfigure --frontend noninteractive tzdata
RUN mkdir -p /home/runner/app/settings

RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 1000 --slave /usr/bin/g++ g++ /usr/bin/g++-10

#add python packages
ADD assets/requirements.txt /home/docker/requirements.txt
RUN pip3 install -r /home/docker/requirements.txt

M in_docker.sh => in_docker.sh +7 -2
@@ 3,7 3,7 @@
# For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

CONTAINER_NAME="wearemudita/mudita_os_builder"
CONTAINER_TAG="1.8"
CONTAINER_TAG="1.9"
CONTAINER=${CONTAINER_NAME}:${CONTAINER_TAG}
PURE_HOME=`pwd`
STANDARD_OPTIONS="-v `pwd`:${PURE_HOME} --user \"$(id -u):$(id -g)\" --env HOME=${PURE_HOME} -t"


@@ 29,7 29,7 @@ function help() {
		                                              <target> and <build_type> are required
		                                              OPTIONS are passed to cmake as is
		                                              run '${0} config' without params to see details
		    make <build_directory> [OPTIONS]        - run 'make' in container. You have to pass directory
		    make|ninja <build_directory> [OPTIONS]        - run 'make' in container. You have to pass directory
		                                              creted by '${0} config' command.
		                                              you can pass additional arguments for make linke '-j' or 'VERBOSE=1'
		MSGEND


@@ 51,6 51,11 @@ case ${TARGET} in
        JOBS=$(nproc)
        CMD="docker run ${STANDARD_OPTIONS} -w ${PURE_HOME}/${BUILD_DIR} --entrypoint make ${CONTAINER} -j ${JOBS} $@"
        ;;
    "ninja")
        BUILD_DIR=$1
        shift
        CMD="docker run ${STANDARD_OPTIONS} -w ${PURE_HOME}/${BUILD_DIR} --entrypoint ninja ${CONTAINER} $@"
        ;;
    *)
        help
        ;;