[03cfe2ec] | 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 | #
|
---|
[e5fe873] | 35 |
|
---|
[03cfe2ec] | 36 | language: c
|
---|
[d6b759c] | 37 | dist: xenial
|
---|
[03cfe2ec] | 38 | sudo: required
|
---|
[e5fe873] | 39 | env:
|
---|
| 40 | global:
|
---|
[79b39d0] | 41 | - CROSS_PREFIX=/usr/local/cross
|
---|
[e5fe873] | 42 | matrix:
|
---|
[40b7fd3] | 43 | - H_CCHECK=true
|
---|
[03cfe2ec] | 44 | - H_ARCH=amd64
|
---|
| 45 | - H_ARCH=arm32/beagleboardxm
|
---|
| 46 | - H_ARCH=arm32/beaglebone
|
---|
| 47 | - H_ARCH=arm32/gta02
|
---|
| 48 | - H_ARCH=arm32/integratorcp
|
---|
| 49 | - H_ARCH=arm32/raspberrypi
|
---|
[86021a97] | 50 | - H_ARCH=arm64/virt
|
---|
[e4fe58f] | 51 | - H_ARCH=ia32 H_HARBOURS=true H_HARBOUR_LIST="fdlibm zlib binutils"
|
---|
[03cfe2ec] | 52 | - H_ARCH=ia64/i460GX
|
---|
| 53 | - H_ARCH=ia64/ski
|
---|
| 54 | - H_ARCH=mips32/malta-be
|
---|
| 55 | - H_ARCH=mips32/malta-le
|
---|
| 56 | - H_ARCH=mips32/msim
|
---|
| 57 | - H_ARCH=ppc32
|
---|
| 58 | - H_ARCH=sparc64/niagara
|
---|
| 59 | - H_ARCH=sparc64/ultra
|
---|
[e5fe873] | 60 | before_install:
|
---|
[79b39d0] | 61 | - sudo apt-get update -qq
|
---|
| 62 | - sudo apt-get install -qq genisoimage
|
---|
[65bac9b] | 63 | - sudo apt-get install -qq python3-pip
|
---|
[7c6ae0e] | 64 | - sudo apt-get install -qq python3-setuptools
|
---|
[0cefcdc] | 65 | - pip3 install ninja
|
---|
[d308f4b5] | 66 | - pip3 install --force-reinstall meson==0.50.1
|
---|
[fb7806a7] | 67 | - ./tools/travis.sh install
|
---|
[e5fe873] | 68 | script:
|
---|
[fb7806a7] | 69 | - ./tools/travis.sh run
|
---|
[e5fe873] | 70 | os:
|
---|
[fb7806a7] | 71 | - linux
|
---|
[963c932] | 72 | notifications:
|
---|
| 73 | irc:
|
---|
| 74 | channels:
|
---|
| 75 | - "chat.freenode.net#helenos"
|
---|
[79b39d0] | 76 | use_notice: false
|
---|
[963c932] | 77 | skip_join: true
|
---|
| 78 | template:
|
---|
| 79 | - "%{repository_name} (%{commit_message}): %{message}"
|
---|
| 80 | - "Build details : %{build_url}"
|
---|