Changeset 2013ea9 in mainline


Ignore:
Timestamp:
2018-01-24T12:52:01Z (6 years ago)
Author:
Vojtech Horky <vojtech.horky@…>
Parents:
8348846
git-author:
Vojtech Horky <vojtech.horky@…> (2018-01-16 15:01:10)
git-committer:
Vojtech Horky <vojtech.horky@…> (2018-01-24 12:52:01)
Message:

Travis CI improvements

Due to complexity of the building process (especially when ported
software is compiled) a separate script is used with Travis CI to
control the build.

See comments in .travis.yml for details how to customize what is being
built.

Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • .travis.yml

    r8348846 r2013ea9  
     1#
     2# Travis CI configuration notes
     3# -----------------------------
     4#
     5# * HelenOS is always built for all architectures
     6#   * that is done using matrix environmental variables
     7#   * the list of architectures has to be kept manually in sync with
     8#     HelenOS.config
     9#   * the actual architecture is specified via H_ARCH variable
     10#
     11# * ported software is built when H_HARBOURS is set to true for given
     12#   configuration
     13#   * building ported software takes a lot of time, it is thus impossible
     14#     to build for all architectures
     15#   * some ports are known to fail for certain architectures: because that
     16#     would make the whole build failing, we currently build only for ia32
     17#     that seems to be in the best condition with respect to ported software
     18#   * list of harbours is also maintained manually, look for a variable
     19#     H_DEFAULT_HARBOURS_LIST to allow overriding from within this file
     20#
     21# * since the setup is rather complicated we use a dedicated shell script to
     22#   run the actual build process and installation of the cross-compiler
     23#   toolchain
     24#
     25# * if you have enabled Travis in your feature branch you may want to change
     26#   some of the settings to better suite your needs
     27#   * reduce number of built architectures (probably not needed)
     28#   * built ported software for a different architecture
     29#     * specify H_HARBOURS=true
     30#     * optionally specify H_HARBOUR_LIST="..." to a list of harbours to be
     31#       built
     32#     * optionally specify H_HARBOURS_REPOSITORY="..." to point to your repo
     33#       with HARBOUR files
     34#
     35
    136language: c
    2 
     37sudo: required
    338env:
    439  global:
    540    - CROSS_PREFIX=/usr/local/cross-static/
    641  matrix:
    7     - HELENOS_ARCH=amd64 HELENOS_TARGET=amd64-unknown-elf HELENOS_OUTPUT=image.iso
    8     - HELENOS_ARCH=arm32/beagleboardxm HELENOS_TARGET=arm-linux-gnueabi HELENOS_OUTPUT=uImage.bin
    9     - HELENOS_ARCH=arm32/beaglebone HELENOS_TARGET=arm-linux-gnueabi HELENOS_OUTPUT=uImage.bin
    10     - HELENOS_ARCH=arm32/gta02 HELENOS_TARGET=arm-linux-gnueabi HELENOS_OUTPUT=uImage.bin
    11     - HELENOS_ARCH=arm32/integratorcp HELENOS_TARGET=arm-linux-gnueabi HELENOS_OUTPUT=image.boot
    12     - HELENOS_ARCH=arm32/raspberrypi HELENOS_TARGET=arm-linux-gnueabi HELENOS_OUTPUT=uImage.bin
    13     - HELENOS_ARCH=ia32 HELENOS_TARGET=i686-pc-linux-gnu HELENOS_OUTPUT=image.iso
    14     - HELENOS_ARCH=ia64/i460GX HELENOS_TARGET=ia64-pc-linux-gnu HELENOS_OUTPUT=image.boot
    15     - HELENOS_ARCH=ia64/ski HELENOS_TARGET=ia64-pc-linux-gnu HELENOS_OUTPUT=image.boot
    16     - HELENOS_ARCH=mips32/malta-be HELENOS_TARGET=mips-linux-gnu HELENOS_OUTPUT=image.boot
    17     - HELENOS_ARCH=mips32/malta-le HELENOS_TARGET=mipsel-linux-gnu HELENOS_OUTPUT=image.boot
    18     - HELENOS_ARCH=mips32/msim HELENOS_TARGET=mipsel-linux-gnu HELENOS_OUTPUT=image.boot
    19     - HELENOS_ARCH=ppc32 HELENOS_TARGET=ppc-linux-gnu HELENOS_OUTPUT=image.iso
    20     - HELENOS_ARCH=sparc64/niagara HELENOS_TARGET=sparc64-linux-gnu HELENOS_OUTPUT=image.iso
    21     - HELENOS_ARCH=sparc64/ultra HELENOS_TARGET=sparc64-linux-gnu HELENOS_OUTPUT=image.iso
    22 
     42    - H_ARCH=amd64
     43    - H_ARCH=arm32/beagleboardxm
     44    - H_ARCH=arm32/beaglebone
     45    - H_ARCH=arm32/gta02
     46    - H_ARCH=arm32/integratorcp
     47    - H_ARCH=arm32/raspberrypi
     48    - H_ARCH=ia32 H_HARBOURS=true
     49    - H_ARCH=ia64/i460GX
     50    - H_ARCH=ia64/ski
     51    - H_ARCH=mips32/malta-be
     52    - H_ARCH=mips32/malta-le
     53    - H_ARCH=mips32/msim
     54    - H_ARCH=ppc32
     55    - H_ARCH=sparc64/niagara
     56    - H_ARCH=sparc64/ultra
    2357before_install:
    24  - sudo apt-get -qq update
    25  - sudo apt-get install -y genisoimage
    26  - wget http://ci.helenos.org/download/helenos-cross-$HELENOS_TARGET.static.tar.xz -O /tmp/cross-$HELENOS_TARGET.static.tar.xz
    27  - sudo mkdir -p /usr/local/cross-static/
    28  - sudo tar -xJ -C /usr/local/cross-static/ -f /tmp/cross-$HELENOS_TARGET.static.tar.xz
    29 
     58 - ./tools/travis.sh install
    3059script:
    31  - make PROFILE=$HELENOS_ARCH HANDS_OFF=y
    32  - test -s $HELENOS_OUTPUT
    33 
     60 - ./tools/travis.sh run
    3461os:
    35 - linux
     62 - linux
Note: See TracChangeset for help on using the changeset viewer.