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