Imported Upstream version 1.5.3
[platform/upstream/libjpeg-turbo.git] / .travis.yml
1 language: c
2
3 matrix:
4   include:
5     - os: linux
6       env: BUILD_OFFICIAL=1
7       sudo: required
8       services:
9         - docker
10     - os: osx
11       env: BUILD_OFFICIAL=1
12       osx_image: xcode7.3
13     - os: linux
14       compiler: clang
15       env:
16         CFLAGS="-O1 -g -fsanitize=address -fno-omit-frame-pointer"
17         CONFIGURE_FLAGS="--disable-shared"
18         ASAN_OPTIONS="detect_leaks=1 symbolize=1"
19       addons:
20         apt:
21           packages:
22             - nasm
23     - os: linux
24       compiler: gcc
25       env: CONFIGURE_FLAGS="--with-12bit"
26     - os: linux
27       compiler: gcc
28       env: CONFIGURE_FLAGS="--with-jpeg7"
29       addons:
30         apt:
31           packages:
32             - nasm
33     - os: linux
34       compiler: gcc
35       env: CONFIGURE_FLAGS="--with-jpeg8"
36       addons:
37         apt:
38           packages:
39             - nasm
40     - os: linux
41       compiler: gcc
42       env: CONFIGURE_FLAGS="--without-simd"
43
44 before_install:
45   - if [ "$TRAVIS_OS_NAME" = "osx" ]; then
46       brew update &&
47       brew install nasm homebrew/versions/gcc5 md5sha1sum Caskroom/versions/java6 &&
48       ln -fs /usr/local/bin/gpg1 /usr/local/bin/gpg &&
49       git clone --depth=1 https://github.com/libjpeg-turbo/gas-preprocessor.git ~/src/gas-preprocessor &&
50       ln -fs /Applications/Xcode.app /Applications/Xcode72.app;
51     fi
52   - if [ "${BUILD_OFFICIAL:-}" != "" ]; then
53       if [ "$TRAVIS_OS_NAME" = "linux" ]; then
54         docker pull dcommander/buildljt;
55       fi &&
56       git clone --depth=1 https://github.com/libjpeg-turbo/buildscripts.git -b $TRAVIS_BRANCH ~/src/buildscripts &&
57       openssl aes-256-cbc -K $encrypted_f92e8533f6f1_key -iv $encrypted_f92e8533f6f1_iv -in ci/keys.enc -out ci/keys -d &&
58       tar xf ci/keys &&
59       rm ci/keys &&
60       mv ci/gpgsign ~/src/buildscripts &&
61       gpg --import ci/sign_ljt &&
62       rm ci/sign_ljt;
63     fi
64
65 script:
66   - if [ "${BUILD_OFFICIAL:-}" != "" ]; then
67       mkdir -p ~/src/ljt.nightly &&
68       if [ -f .git/shallow ]; then
69         mv .git/shallow .git/shallow.bak;
70       fi &&
71       if [ "$TRAVIS_OS_NAME" = "linux" ]; then
72         docker run -v $HOME/src/ljt.nightly:/root/src/ljt.nightly -v $HOME/src/buildscripts:/root/src/buildscripts -v $TRAVIS_BUILD_DIR:/root/src/libjpeg-turbo -v $HOME/.gnupg:/root/.gnupg -t dcommander/buildljt:latest bash -c "rpm --import http://pgp.mit.edu/pks/lookup?op=get\&search=0x0575F26BD5B3FDB1 && ~/src/buildscripts/buildljt -r file:///root/src/libjpeg-turbo $TRAVIS_BRANCH -v" &&
73         sudo chown -R travis:travis ~/src/ljt.nightly &&
74         mv ~/src/ljt.nightly/latest/log-$TRAVIS_OS_NAME.txt ~/src/ljt.nightly/latest/files/;
75       else
76         PATH=$PATH:~/src/gas-preprocessor ~/src/buildscripts/buildljt -r file://$TRAVIS_BUILD_DIR $TRAVIS_BRANCH -v &&
77         mv ~/src/ljt.nightly/latest/log-$TRAVIS_OS_NAME.txt ~/src/ljt.nightly/latest/files/;
78       fi &&
79       if [ -f .git/shallow.bak ]; then
80         mv .git/shallow.bak .git/shallow;
81       fi
82     fi
83   - if [ "${BUILD_OFFICIAL:-}" == "" ]; then
84       autoreconf -fiv &&
85       mkdir build &&
86       pushd build &&
87       ../configure ${CONFIGURE_FLAGS} &&
88       export NUMCPUS=`grep -c '^processor' /proc/cpuinfo` &&
89       make -j$NUMCPUS --load-average=$NUMCPUS &&
90       if [[ "${CONFIGURE_FLAGS}" =~ "with-12bit" ||
91             "${CONFIGURE_FLAGS}" =~ "without-simd" ]]; then
92         make test FLOATTEST=32bit;
93       else
94         make test FLOATTEST=sse &&
95         JSIMD_FORCENONE=1 make test FLOATTEST=32bit;
96       fi &&
97       popd;
98     fi
99
100 after_failure:
101   - if [ "${BUILD_OFFICIAL:-}" == "" ]; then
102       if [ -f $TRAVIS_BUILD_DIR/build/config.log ]; then
103         cat $TRAVIS_BUILD_DIR/build/config.log;
104       fi
105     fi
106
107 deploy:
108   - provider: s3
109     bucket: libjpeg-turbo-pr
110     access_key_id:
111       secure: bmFEt4H90/oR/LiN9XI+G26Pd6hiyrTw3+Vg3lS4ynwAYk33weApaVM8CyzQTgIhGSPzFStqVm9fTrb3RmrYP/PnNS+/surOeWLkH2DMRxvc0qmetBuNx1+vAN7FUkY8MO/u5uE9WXHAdp4e64pXcLXEbKmh+wgDm72b35WmMxErtHsGbpqy+j47rQkY4BJGi7XQzjjafaamfm4PzitsjkYYsgX8KLI16jyJEIirvyDHCPTn9wKR/jSjelDl+xTlgZGuCqmLCBW8f6JgycIspWjcYfO4WpWvkbnnI2sl3rCMPvOYc4wHe8SwzG0l4tM1PblZZDRcU7vjE15PmNf1Xfq9Vx3RpgBJv+UBNL/Vn0rKdpUCeEcfC12hxrske8DWpV6waBiDivjQJreE+YRXqa5YBhV/EdkoKYCqafnJvRASlOko9evje8F9KXTNsIGTT1HPmU9QM9WoJwLs/Xa3t09EmA2IjhcuAvvUmwCTuBBQVAlDjExiTT3Zhc9IYZDD92JgpAYLgridtzR87ElOxKhTkR4PowdI6UiLYArPjMFTjoz5Rivb9qNpbLaQC8HCYgLWxpWtUTzlW/9rM8izHpF8ySFHjO6E2aA9OJFc0tcbEGwAs2jLGD01OduU+DbBfsIkW0EgfXCPbD3FVgHsn3tkuzgO/bg20SM7uuCEYKQ=
112     secret_access_key:
113       secure: mrkOpEtqd2dEmi/qNJyX9vkME+6xgVBnXaRETKF7jT+flcQCQ0ayQkRkMV7lzGqq44XFg+n6Cpfn6oW0gH9RNdcC8YQvFP+kgzPx6nw6V/M31Vz6ySapJf59HBzVevf0NJkr0/1JoWsp1iq4IoN10WPzsCXZB55Io3Cf7DgpR+yiyBlWOctDfNdjJ97Juw3ENE80MHDf0fVqdUOIknQka1p68yAGkjar9kc2Oe7o94RzzmoqEn8tuFumiBQjIcuVRALsKqz+eIxBNgkL3BF9shVyRjOWLAeBhMPVFxZs5Dgd4ECbvU0i33gfmje3d6qqcw78N2lZaLefoVvWol3pOzVO133ewOSY9/lmpqEiRUU2ohEe8T4aSoS7posBW42itUTO4Y5w+eVOnHsm4sRQaI+/AXWTe7GPel+P8Qbe8Ya10A5gnpoag7o3raRDcHx+/qaZw1Af/u4XiAOYz3be3U90Qc+YMc/kS5i8BH0GXBbSfaWQ00CwRFlZQ3n1xUqmjC2CmjZTki3W/p7mEt0DjhcH9ZIXscK603sCC+mF6pEd9019k5fG/8fr2Y4Ptai9kd3BxZJCX9/jSoMfWOBbgkA5bRgHU0xrAj+p49qD6Ej9Xr8GE3+uebz3sEuhSFRnCKwKoOHOemfgevfO2y/jQXP677WPf3xQX7bVDfTFSHU=
114     acl: public_read
115     local-dir: $HOME/src/ljt.nightly/latest/files
116     upload-dir: $TRAVIS_BRANCH/$TRAVIS_OS_NAME
117     on:
118       branch: master
119       condition: -n "$BUILD_OFFICIAL"
120   - provider: s3
121     bucket: libjpeg-turbo-pr
122     access_key_id:
123       secure: bmFEt4H90/oR/LiN9XI+G26Pd6hiyrTw3+Vg3lS4ynwAYk33weApaVM8CyzQTgIhGSPzFStqVm9fTrb3RmrYP/PnNS+/surOeWLkH2DMRxvc0qmetBuNx1+vAN7FUkY8MO/u5uE9WXHAdp4e64pXcLXEbKmh+wgDm72b35WmMxErtHsGbpqy+j47rQkY4BJGi7XQzjjafaamfm4PzitsjkYYsgX8KLI16jyJEIirvyDHCPTn9wKR/jSjelDl+xTlgZGuCqmLCBW8f6JgycIspWjcYfO4WpWvkbnnI2sl3rCMPvOYc4wHe8SwzG0l4tM1PblZZDRcU7vjE15PmNf1Xfq9Vx3RpgBJv+UBNL/Vn0rKdpUCeEcfC12hxrske8DWpV6waBiDivjQJreE+YRXqa5YBhV/EdkoKYCqafnJvRASlOko9evje8F9KXTNsIGTT1HPmU9QM9WoJwLs/Xa3t09EmA2IjhcuAvvUmwCTuBBQVAlDjExiTT3Zhc9IYZDD92JgpAYLgridtzR87ElOxKhTkR4PowdI6UiLYArPjMFTjoz5Rivb9qNpbLaQC8HCYgLWxpWtUTzlW/9rM8izHpF8ySFHjO6E2aA9OJFc0tcbEGwAs2jLGD01OduU+DbBfsIkW0EgfXCPbD3FVgHsn3tkuzgO/bg20SM7uuCEYKQ=
124     secret_access_key:
125       secure: mrkOpEtqd2dEmi/qNJyX9vkME+6xgVBnXaRETKF7jT+flcQCQ0ayQkRkMV7lzGqq44XFg+n6Cpfn6oW0gH9RNdcC8YQvFP+kgzPx6nw6V/M31Vz6ySapJf59HBzVevf0NJkr0/1JoWsp1iq4IoN10WPzsCXZB55Io3Cf7DgpR+yiyBlWOctDfNdjJ97Juw3ENE80MHDf0fVqdUOIknQka1p68yAGkjar9kc2Oe7o94RzzmoqEn8tuFumiBQjIcuVRALsKqz+eIxBNgkL3BF9shVyRjOWLAeBhMPVFxZs5Dgd4ECbvU0i33gfmje3d6qqcw78N2lZaLefoVvWol3pOzVO133ewOSY9/lmpqEiRUU2ohEe8T4aSoS7posBW42itUTO4Y5w+eVOnHsm4sRQaI+/AXWTe7GPel+P8Qbe8Ya10A5gnpoag7o3raRDcHx+/qaZw1Af/u4XiAOYz3be3U90Qc+YMc/kS5i8BH0GXBbSfaWQ00CwRFlZQ3n1xUqmjC2CmjZTki3W/p7mEt0DjhcH9ZIXscK603sCC+mF6pEd9019k5fG/8fr2Y4Ptai9kd3BxZJCX9/jSoMfWOBbgkA5bRgHU0xrAj+p49qD6Ej9Xr8GE3+uebz3sEuhSFRnCKwKoOHOemfgevfO2y/jQXP677WPf3xQX7bVDfTFSHU=
126     acl: public_read
127     local-dir: $HOME/src/ljt.nightly/latest/files
128     upload-dir: $TRAVIS_BRANCH/$TRAVIS_OS_NAME
129     on:
130       branch: dev
131       condition: -n "$BUILD_OFFICIAL"