summaryrefslogtreecommitdiffhomepage
path: root/.travis.yml
blob: 2d9a774f3d88f9b8926ef94a9985266d759ea85e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
language: c
dist: trusty

git:
  depth: 3

# TODO we could use a 32 bit Docker container for running true 32-bit tests
# services: - docker

matrix:
  include:
    - os: linux
      env: ARCH=i386
      sudo: required
    - os: linux
      env: ARCH=amd64
      sudo: required
    - os: linux
      env: ARCH=amd64 GLFW=SYSTEM
      sudo: required
    - os: linux
      env: USE_WAYLAND=ON ARCH=amd64
      sudo: required
      addons:
          apt:
              packages:
                  - libwayland-dev
                  - libxkbcommon-dev
                  - libegl1-mesa-dev
    - os: osx
      env: ARCH=universal

before_script:

before_install:
  - if [ "$TRAVIS_OS_NAME" == "linux" ]; then
      sudo apt-get install -y gcc-multilib
                              libasound2-dev:$ARCH
                              libxcursor-dev:$ARCH libxinerama-dev:$ARCH mesa-common-dev:$ARCH
                              libx11-dev:$ARCH libxrandr-dev:$ARCH libxrandr2:$ARCH libxi-dev:$ARCH
                              libgl1-mesa-dev:$ARCH libglu1-mesa-dev:$ARCH;
      if [ "$ARCH" == "i386" ]; then
        export CMAKE_ARCH_ARGS='-DCMAKE_C_FLAGS=-m32 -DCMAKE_SYSTEM_LIBRARY_PATH=/usr/lib/i386-linux-gnu';
      fi;
      export RAYLIB_PACKAGE_SUFFIX="-Linux-$ARCH";
      if [ "$GLFW" == "SYSTEM" ]; then
        wget 'http://ftp.de.debian.org/debian/pool/main/g/glfw3/libglfw3_3.2.1-1_amd64.deb';
        wget 'http://ftp.de.debian.org/debian/pool/main/g/glfw3/libglfw3-dev_3.2.1-1_amd64.deb';
        sudo dpkg -i libglfw3_3.2.1-1_amd64.deb libglfw3-dev_3.2.1-1_amd64.deb;
      fi;
    fi
  - if [ "$TRAVIS_OS_NAME" == "osx" ]; then
      export RAYLIB_PACKAGE_SUFFIX="-macOS";
      if [ "$GLFW" == "SYSTEM" ]; then brew update; brew install glfw; fi;
    fi
  - "$CC --version"

script:
  - mkdir build
  - cd build
  - if test -n "${USE_WAYLAND}";
      then wget https://mirrors.kernel.org/ubuntu/pool/universe/e/extra-cmake-modules/extra-cmake-modules_5.38.0a-0ubuntu1_amd64.deb;
      sudo dpkg -i extra-cmake-modules_5.38.0a-0ubuntu1_amd64.deb;
      git clone git://anongit.freedesktop.org/wayland/wayland-protocols;
      pushd wayland-protocols;
      git checkout 1.12 && ./autogen.sh --prefix=/usr && make && sudo make install;
      popd;
    fi
  - cmake $CMAKE_ARCH_ARGS -DMACOS_FATLIB=ON -DSTATIC=ON -DSHARED=ON -DBUILD_EXAMPLES=ON -DBUILD_GAMES=ON -DUSE_EXTERNAL_GLFW=IF_POSSIBLE -DUSE_WAYLAND=${USE_WAYLAND} ..
  - make VERBOSE=1
  - if [ "$GLFW" != "SYSTEM" ]; then make package; fi;
  - sudo make install
  - pkg-config --static --libs raylib

deploy:
  provider: releases
  api_key:
    secure: LvqUIAN/3dJul+Ra2iK3tSaNG5IwsNMmGIwVMy0DK5IBCxiQPBc9pWGiE30RTBPt6Z+N4BhMEE8DtUl+vnISlMoHWNIIhF2zwC66hs/F7zY7qEITMRSmfiLcqxQysknFOnJB06CATgXcFqlEo9j+t4abrG/f3qcb92J4O2uNz336Au2myTx93Q5MxbyA7KiUuEutFnb2dWiPCY4d+sGeXEfsiD2R7aj/8MaWOkoGdZVrTkI9juMgvpImkjQBArvqdjUMeT3MsRrwgOIq5v2GFV9dOl8k1WzPeT8B2JHh00ed/o1/wuFq/cLLOxtYo2+Pv3+xatOrlexoX0WkDm7C9/L1W5U4rLexU3CQ9mMBmHPnp6k/WXZ5QXEE4uUF0+LpN3XlIXzFpdZmZiVV8VLxg2WvyncMmivYiu7/MTkyfZxyKkzwl7sZZslzHA9kOGedGaN7b7/2B77OFHoQK8lKfdFml7jJnarh+89nenNZYMab0E8qkOJOyb2bYlDTa0/2nyxGiyymYgq6YHLNrDbhqB/1LzdgzjMliQ8ri5q9Ux2vjfcqOzhfAmcwFwnY/D6yXJWYi0DWpHZdpKl3du6dYDrypW91/yDWbwiJ/YhrE7ZunzrcB6GH/QkbuzWxdCth39rQAHih8DG01co/K3Gvi4yGjvIH5tFUpyEolMnpMiA=
  file_glob: true
  file: raylib-*.tar.gz
  skip_cleanup: true
  on:
    repo: raysan5/raylib
    branch: master
    tags: true