summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: edadf8518402825c77ed81c19fa57bedf0df02d4 (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
sudo: required

language: generic

cache:
  directories:
    - ledger-master
    - ledger-next

os:
    - linux
    # - osx # Travis is saturated; see https://www.traviscistatus.com/

env:
  matrix:
    - EMACS_VERSION=emacs24 LEDGER_BRANCH=master
    # - EMACS_VERSION=emacs24 LEDGER_BRANCH=apt-get # apt-get's ledger is too old
    - EMACS_VERSION=emacs-snapshot LEDGER_BRANCH=next

matrix:
  allow_failures:
    - env: EMACS_VERSION=emacs-snapshot LEDGER_BRANCH=next

before_install:
  - ./tools/travis-install-ledger.sh $LEDGER_BRANCH
  - if [ "$TRAVIS_OS_NAME" = "linux" ]; then
        export PATH=$TRAVIS_BUILD_DIR/ledger-$LEDGER_BRANCH:$PATH;
    fi

install:
  - if [ "$TRAVIS_OS_NAME-$EMACS_VERSION" = "linux-emacs24" ]; then
        sudo add-apt-repository -y ppa:cassou/emacs &&
        sudo apt-get -qq update &&
        sudo apt-get -qq install emacs24 emacs24-el &&
        export EMACS=/usr/bin/emacs;
    fi
  - if [ "$TRAVIS_OS_NAME-$EMACS_VERSION" = "linux-emacs-snapshot" ]; then
        sudo add-apt-repository -y ppa:ubuntu-elisp/ppa &&
        sudo apt-get -qq update &&
        sudo apt-get -qq install emacs-snapshot &&
        export EMACS=/usr/bin/emacs-snapshot;
    fi
  - if [ "$TRAVIS_OS_NAME-$EMACS_VERSION" = "osx-emacs24" ]; then
        wget https://emacsformacosx.com/emacs-builds/Emacs-24.4-universal.dmg &&
        hdiutil attach Emacs-24.4-universal.dmg &&
        export EMACS=/Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs;
    fi
  - if [ "$TRAVIS_OS_NAME-$EMACS_VERSION" = "osx-emacs25" ]; then
        wget https://emacsformacosx.com/emacs-builds/Emacs-25.1-universal.dmg &&
        hdiutil attach Emacs-25.1-universal.dmg &&
        export EMACS=/Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs;
    fi

script:
  - $EMACS --version
  - ledger --version
  - $EMACS --eval "(setq byte-compile-error-on-warn (>= emacs-major-version 25))" -L .  --batch -f batch-byte-compile ledger-*.el
  - cd test && make test-batch EMACS="$EMACS"

after_script:
  - make checkdoc

notifications:
  email: false