-
Vaibhav Jain authored
Since commit fd8171fe("target/hexagon: import lexer for idef-parser") the hexagon target uses 'flex', 'bison' to generate idef-parser. However default travis builder image for 'focal' may not have these pre-installed, consequently following error is seen with travis when trying to execute the 'GCC (user)' job that also tries to build hexagon user binary: <snip> export CONFIG="--disable-containers --disable-system" <snip> Program flex found: NO ../target/hexagon/meson.build:179:4: ERROR: Program 'flex' not found or not executable <snip> Fix this by explicitly add 'flex' and 'bison' to the list of addon apt-packages for the 'GCC (user)' job. Signed-off-by:
Vaibhav Jain <vaibhav@linux.ibm.com> Message-Id: <20230417162354.186678-1-vaibhav@linux.ibm.com> Reviewed-by:
Thomas Huth <thuth@redhat.com> Reviewed-by:
Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by:
Thomas Huth <thuth@redhat.com>
Vaibhav Jain authoredSince commit fd8171fe("target/hexagon: import lexer for idef-parser") the hexagon target uses 'flex', 'bison' to generate idef-parser. However default travis builder image for 'focal' may not have these pre-installed, consequently following error is seen with travis when trying to execute the 'GCC (user)' job that also tries to build hexagon user binary: <snip> export CONFIG="--disable-containers --disable-system" <snip> Program flex found: NO ../target/hexagon/meson.build:179:4: ERROR: Program 'flex' not found or not executable <snip> Fix this by explicitly add 'flex' and 'bison' to the list of addon apt-packages for the 'GCC (user)' job. Signed-off-by:
Vaibhav Jain <vaibhav@linux.ibm.com> Message-Id: <20230417162354.186678-1-vaibhav@linux.ibm.com> Reviewed-by:
Thomas Huth <thuth@redhat.com> Reviewed-by:
Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by:
Thomas Huth <thuth@redhat.com>
.travis.yml 7.60 KiB
os: linux
dist: focal
language: c
compiler:
- gcc
cache:
# There is one cache per branch and compiler version.
# characteristics of each job are used to identify the cache:
# - OS name (currently only linux)
# - OS distribution (for Linux, bionic or focal)
# - Names and values of visible environment variables set in .travis.yml or Settings panel
timeout: 1200
ccache: true
pip: true
directories:
- $HOME/avocado/data/cache
# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu
# to prevent IRC notifications from forks. This was created using:
# $ travis encrypt -r "qemu/qemu" "irc.oftc.net#qemu"
notifications:
irc:
channels:
- secure: "F7GDRgjuOo5IUyRLqSkmDL7kvdU4UcH3Lm/W2db2JnDHTGCqgEdaYEYKciyCLZ57vOTsTsOgesN8iUT7hNHBd1KWKjZe9KDTZWppWRYVwAwQMzVeSOsbbU4tRoJ6Pp+3qhH1Z0eGYR9ZgKYAoTumDFgSAYRp4IscKS8jkoedOqM="
on_success: change
on_failure: always
env:
global:
- SRC_DIR=".."
- BUILD_DIR="build"
- BASE_CONFIG="--disable-docs --disable-tools"
- TEST_BUILD_CMD=""
- TEST_CMD="make check V=1"
# This is broadly a list of "mainline" softmmu targets which have support across the major distros
- MAIN_SOFTMMU_TARGETS="aarch64-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
- CCACHE_SLOPPINESS="include_file_ctime,include_file_mtime"
- CCACHE_MAXSIZE=1G
- G_MESSAGES_DEBUG=error
git:
# we want to do this ourselves
submodules: false
# Common first phase for all steps
# We no longer use nproc to calculate jobs:
# https://travis-ci.community/t/nproc-reports-32-cores-on-arm64/5851
before_install:
- if command -v ccache ; then ccache --zero-stats ; fi
- export JOBS=3
- echo "=== Using ${JOBS} simultaneous jobs ==="
# Configure step - may be overridden
before_script:
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log meson-logs/meson-log.txt && exit 1; }
# Main build & test - rarely overridden - controlled by TEST_CMD
script:
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
- |
if [ "$BUILD_RC" -eq 0 ] && [ -n "$TEST_BUILD_CMD" ]; then
${TEST_BUILD_CMD} || BUILD_RC=$?
else
$(exit $BUILD_RC);
fi
- |