diff --git a/.travis.yml b/.travis.yml index a82a62975a..6324157da1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,6 +3,7 @@ language: c cache: apt env: + - NPROC_MAX=8 BUILDTEST_MCU_GROUP=static-tests - NPROC_MAX=8 BUILDTEST_MCU_GROUP=avr8 - NPROC_MAX=8 BUILDTEST_MCU_GROUP=msp430 - NPROC_MAX=8 BUILDTEST_MCU_GROUP=x86 diff --git a/dist/tools/travis-scripts/build_and_test.sh b/dist/tools/travis-scripts/build_and_test.sh index 0f9763dad1..608015404d 100755 --- a/dist/tools/travis-scripts/build_and_test.sh +++ b/dist/tools/travis-scripts/build_and_test.sh @@ -1,27 +1,39 @@ #!/bin/bash +# +# Copyright (C) 2015 Philipp Rosenkranz +# +# This file is subject to the terms and conditions of the GNU Lesser +# General Public License v2.1. See the file LICENSE in the top level +# directory for more details. +# + set -e -make -s -C ./examples/default info-concurrency -git rebase riot/master || git rebase --abort - -./dist/tools/whitespacecheck/check.sh master || exit - -./dist/tools/licenses/check.sh master --diff-filter=MR --error-exitcode=0 || exit -./dist/tools/licenses/check.sh master --diff-filter=AC || exit - -./dist/tools/doccheck/check.sh master || exit - -./dist/tools/externc/check.sh master || exit - -# TODO: -# Remove all but `master` parameters to cppcheck (and remove second -# invocation) once all warnings of cppcheck have been taken care of -# in master. -./dist/tools/cppcheck/check.sh master --diff-filter=MR --error-exitcode=0 || exit -./dist/tools/cppcheck/check.sh master --diff-filter=AC || exit - if [[ $BUILDTEST_MCU_GROUP ]] then + if [ "$BUILDTEST_MCU_GROUP" == "static-tests" ] + then + make -s -C ./examples/default info-concurrency + git rebase riot/master || git rebase --abort + + ./dist/tools/whitespacecheck/check.sh master || exit + + ./dist/tools/licenses/check.sh master --diff-filter=MR --error-exitcode=0 || exit + ./dist/tools/licenses/check.sh master --diff-filter=AC || exit + + ./dist/tools/doccheck/check.sh master || exit + + ./dist/tools/externc/check.sh master || exit + + # TODO: + # Remove all but `master` parameters to cppcheck (and remove second + # invocation) once all warnings of cppcheck have been taken care of + # in master. + ./dist/tools/cppcheck/check.sh master --diff-filter=MR --error-exitcode=0 || exit + ./dist/tools/cppcheck/check.sh master --diff-filter=AC || exit + ./dist/tools/pr_check/pr_check.sh riot/master + exit 0 + fi if [ "$BUILDTEST_MCU_GROUP" == "x86" ] then @@ -32,5 +44,4 @@ then # - make -C ./tests/unittests all test BOARD=qemu-i386 || exit fi ./dist/tools/compile_test/compile_test.py - ./dist/tools/pr_check/pr_check.sh riot/master fi diff --git a/dist/tools/travis-scripts/get-pkg-list.py b/dist/tools/travis-scripts/get-pkg-list.py index 3f990a96d6..16eb20847d 100755 --- a/dist/tools/travis-scripts/get-pkg-list.py +++ b/dist/tools/travis-scripts/get-pkg-list.py @@ -1,4 +1,22 @@ #!/usr/bin/env python +# -*- coding: utf-8 -*- + +# Copyright (C) 2015 Philipp Rosenkranz +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301 USA import os @@ -6,31 +24,37 @@ arm_mcu_groups = ["arm7", "cortex_m0", "cortex_m3", "cortex_m3_2", "cortex_m4"] msp_mcu_groups = ["msp430"] x86_mcu_groups = ["x86"] avr8_mcu_groups = ["avr8"] -known_mcu_groups = arm_mcu_groups + msp_mcu_groups + x86_mcu_groups + avr8_mcu_groups +static_tests_groups = ["static-tests"] +known_mcu_groups = arm_mcu_groups + msp_mcu_groups + x86_mcu_groups + \ + avr8_mcu_groups + static_tests_groups -common_pkgs = ["pcregrep", "libpcre3", "python3", "cppcheck", "doxygen"] -arm_pkgs = ["gcc-arm-none-eabi"] -msp_pkgs = ["gcc-msp430"] -x86_pkgs = ["qemu-system-x86", "g++-multilib", "gcc-multilib", \ - "build-essential"] -avr8_pkgs = ["gcc-avr", "binutils-avr", "avr-libc"] -all_mcu_pkgs = arm_pkgs + msp_pkgs + x86_pkgs + avr8_pkgs +common_pkgs = ["pcregrep", "libpcre3", "python3"] +arm_pkgs = ["gcc-arm-none-eabi"] +msp_pkgs = ["gcc-msp430"] +x86_pkgs = ["qemu-system-x86", "g++-multilib", "gcc-multilib", + "build-essential"] +avr8_pkgs = ["gcc-avr", "binutils-avr", "avr-libc"] +static_tests_pkgs = ["doxygen", "cppcheck"] +all_mcu_pkgs = arm_pkgs + msp_pkgs + \ + x86_pkgs + avr8_pkgs + static_tests_pkgs pkgs_to_install = common_pkgs if "BUILDTEST_MCU_GROUP" in os.environ: - mcu_group = os.environ["BUILDTEST_MCU_GROUP"] - if mcu_group not in known_mcu_groups: - pkgs_to_install += all_mcu_pkgs - elif mcu_group in arm_mcu_groups: - pkgs_to_install += arm_pkgs - elif mcu_group in msp_mcu_groups: - pkgs_to_install += msp_pkgs - elif mcu_group in x86_mcu_groups: - pkgs_to_install += x86_pkgs - elif mcu_group in avr8_mcu_groups: - pkgs_to_install += avr8_pkgs + mcu_group = os.environ["BUILDTEST_MCU_GROUP"] + if mcu_group not in known_mcu_groups: + pkgs_to_install += all_mcu_pkgs + elif mcu_group in arm_mcu_groups: + pkgs_to_install += arm_pkgs + elif mcu_group in msp_mcu_groups: + pkgs_to_install += msp_pkgs + elif mcu_group in x86_mcu_groups: + pkgs_to_install += x86_pkgs + elif mcu_group in avr8_mcu_groups: + pkgs_to_install += avr8_pkgs + elif mcu_group in static_tests_groups: + pkgs_to_install += static_tests_pkgs else: - pkgs_to_install += all_mcu_pkgs + pkgs_to_install += all_mcu_pkgs print " ".join(pkgs_to_install)