| 1 | language: c |
| 2 | cache: ccache |
| 3 | |
| 4 | os: |
| 5 | - linux |
| 6 | |
| 7 | compiler: |
| 8 | - gcc |
| 9 | |
| 10 | install: |
| 11 | - git fetch --unshallow --tags # t/porting/cmp_version.t |
| 12 | # install & enable ccache on osx |
| 13 | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update && brew install ccache; fi |
| 14 | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export PATH="/usr/local/opt/ccache/libexec:$PATH"; fi |
| 15 | |
| 16 | env: |
| 17 | global: |
| 18 | - JOBS=4 |
| 19 | matrix: |
| 20 | # exercise a variety of build options |
| 21 | # threads often cause build issues |
| 22 | - CONFIGURE_ARGS='-Uusethreads' |
| 23 | - CONFIGURE_ARGS='-Dusethreads' |
| 24 | # test scripts can be sensitive to PERL_UNICODE, and check long doubles |
| 25 | - CONFIGURE_ARGS='-Duseshrplib -Dusesitecustomize -Duselongdouble' PERL_UNICODE='' LANG='en_US.UTF-8' |
| 26 | # we've rarely had a problem with non-Englush locales, and exercise quadmath |
| 27 | - CONFIGURE_ARGS='-Duseshrplib -Dusequadmath -Dusecbacktrace -Dusethreads' PERL_UNICODE='' LANG='de_DE.UTF-8' |
| 28 | |
| 29 | matrix: |
| 30 | fast_finish: true |
| 31 | |
| 32 | script: |
| 33 | - ./Configure -des -Dusedevel -Uversiononly -Dcc="ccache $CC" $CONFIGURE_ARGS -Dprefix=$HOME/perl-blead -DDEBUGGING |
| 34 | # all script commands are always run |
| 35 | # rather than using one very long oneliner using '&&', just always check the build status |
| 36 | - if [ "x$TRAVIS_TEST_RESULT" = "x0" ]; then TEST_JOBS=$JOBS make -j$JOBS test_harness_notty; fi |
| 37 | - if [ "x$TRAVIS_TEST_RESULT" = "x0" ]; then make -j$JOBS install; fi |
| 38 | - if [ "x$TRAVIS_TEST_RESULT" = "x0" ]; then $HOME/perl-blead/bin/perlivp; fi |
| 39 | |
| 40 | addons: |
| 41 | apt: |
| 42 | packages: |
| 43 | - file |
| 44 | - cpio |
| 45 | - libdb-dev |
| 46 | - libgdbm-dev |
| 47 | - zlib1g-dev |
| 48 | - libbz2-dev |
| 49 | |
| 50 | notifications: |
| 51 | ## use dedicated email for smoking ? |
| 52 | # email: |
| 53 | # recipients: |
| 54 | # - perl5-porters@perl.org |
| 55 | # on_success: never # default: change |
| 56 | # on_failure: always # default: always |
| 57 | irc: |
| 58 | nick: travisci |
| 59 | channels: |
| 60 | - "irc.perl.org#p5p-qa" |
| 61 | # - "irc.perl.org#bot-test" |
| 62 | template: |
| 63 | - "Report for %{repository} (%{commit}) from %{author} (%{elapsed_time})" |
| 64 | - "Status: %{message}" |
| 65 | - "Build URL: %{build_url}" |
| 66 | - "GitHub URL: https://github.com/%{repository_slug}/commit/%{commit}" |
| 67 | on_success: change # default: always |
| 68 | on_failure: always # default: always |
| 69 | # use_notice: true |