]> granicus.if.org Git - strace/blob - travis-install.sh
Include "kernel_types.h" in defs.h and tests/tests.h
[strace] / travis-install.sh
1 #!/bin/sh -ex
2
3 updated=
4 apt_get_install()
5 {
6         [ -n "$updated" ] || {
7                 sudo apt-get -qq update
8                 updated=1
9         }
10         sudo apt-get -qq --no-install-suggests --no-install-recommends \
11                 install -y "$@"
12 }
13
14 case "$CC" in
15         gcc)
16                 apt_get_install gcc-multilib
17                 ;;
18         clang-*)
19                 apt_get_install gcc-multilib "$CC"
20                 ;;
21         musl-gcc)
22                 apt_get_install gcc-multilib
23                 git clone --depth=1 https://github.com/strace/musl
24                 cd musl
25                         CC=gcc
26                         build=
27                         case "${TARGET-}" in
28                                 x32)
29                                         CC="$CC -mx32"
30                                         ;;
31                                 x86)
32                                         CC="$CC -m32"
33                                         build='--build=i686-pc-linux-gnu --target=i686-pc-linux-gnu'
34                                         ;;
35                         esac
36                         ./configure --prefix=/opt/musl --exec-prefix=/usr ${build}
37                         make
38                         sudo make install
39                 cd -
40                 rm -rf musl
41                 sudo ln -s \
42                         /usr/include/linux \
43                         /usr/include/asm \
44                         /usr/include/asm-generic \
45                         /usr/include/mtd \
46                         /opt/musl/include/
47                 ;;
48 esac
49
50 if [ "${COVERAGE-}" = true ]; then
51         apt_get_install lcov
52         pip install --user codecov
53 fi