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 |
|
---|
36 | language: c
|
---|
37 | dist: xenial
|
---|
38 | sudo: required
|
---|
39 | env:
|
---|
40 | global:
|
---|
41 | - CROSS_PREFIX=/usr/local/cross
|
---|
42 | matrix:
|
---|
43 | - H_CCHECK=true
|
---|
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
|
---|
50 | - H_ARCH=arm64/virt
|
---|
51 | - H_ARCH=ia32 H_HARBOURS=true H_HARBOUR_LIST="fdlibm zlib binutils"
|
---|
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
|
---|
60 | before_install:
|
---|
61 | - sudo apt-get update -qq
|
---|
62 | - sudo apt-get install -qq genisoimage
|
---|
63 | - sudo apt-get install -qq python3-pip
|
---|
64 | - sudo apt-get install -qq python3-setuptools
|
---|
65 | - pip3 install ninja
|
---|
66 | - pip3 install --force-reinstall meson==0.50.1
|
---|
67 | - ./tools/travis.sh install
|
---|
68 | script:
|
---|
69 | - ./tools/travis.sh run
|
---|
70 | os:
|
---|
71 | - linux
|
---|
72 | notifications:
|
---|
73 | irc:
|
---|
74 | channels:
|
---|
75 | - "chat.freenode.net#helenos"
|
---|
76 | use_notice: false
|
---|
77 | skip_join: true
|
---|
78 | template:
|
---|
79 | - "%{repository_name} (%{commit_message}): %{message}"
|
---|
80 | - "Build details : %{build_url}"
|
---|