@@ -20,32 +20,58 @@ function bdist_wheel_cmd {
20
20
21
21
if [ -n " $IS_OSX " ]; then
22
22
echo " > OSX environment "
23
+ export MAKEFLAGS=" -j$( sysctl -n hw.ncpu) "
23
24
else
24
25
echo " > Linux environment "
26
+ export MAKEFLAGS=" -j$( grep -E ' ^processor[[:space:]]*:' /proc/cpuinfo | wc -l) "
27
+ fi
28
+
29
+ if [ -n " $IS_OSX " ]; then
30
+
31
+ source travis_osx_brew_cache.sh
32
+
33
+ BREW_SLOW_BUILIDING_PACKAGES=$( printf ' %s\n' \
34
+ " x265 20" \
35
+ " cmake 15" \
36
+ " ffmpeg 10" \
37
+ )
38
+
39
+ # Contrib adds significantly to project's build time
40
+ if [ " $ENABLE_CONTRIB " -eq 1 ]; then
41
+ BREW_TIME_LIMIT=$(( BREW_TIME_LIMIT - 10 * 60 ))
42
+ fi
43
+
25
44
fi
26
45
27
46
function pre_build {
28
47
echo " Starting pre-build"
29
- set -e
48
+ set -e -o pipefail
30
49
31
50
if [ -n " $IS_OSX " ]; then
32
51
echo " Running for OSX"
52
+
53
+ brew update --merge
54
+ brew_add_local_bottles
55
+
56
+ # Don't query analytical info online on `brew info`,
57
+ # this takes several seconds and we don't need it
58
+ # see https://docs.brew.sh/Manpage , "info formula" section
59
+ export HOMEBREW_NO_GITHUB_API=1
33
60
34
- brew update
61
+ # https://docs.travis-ci.com/user/caching/#ccache-cache
62
+ # No need to allow rc 1 -- if this triggers a timeout,
63
+ # something is clearly wrong
64
+ brew_install_and_cache_within_time_limit ccache
65
+ export PATH=" /usr/local/opt/ccache/libexec:$PATH "
35
66
36
67
echo ' Installing QT4'
37
- brew tap | grep -qxF cartr/qt4 || brew tap -v cartr/qt4
38
- brew tap --list-pinned | grep -qxF cartr/qt4 || brew tap-pin -v cartr/qt4
39
- brew list --versions qt@4 || brew install -v qt@4
40
- echo ' -----------------'
41
- echo ' -----------------'
68
+ brew tap | grep -qxF cartr/qt4 || brew tap cartr/qt4
69
+ brew tap --list-pinned | grep -qxF cartr/qt4 || brew tap-pin cartr/qt4
70
+ brew_install_and_cache_within_time_limit qt@4 || { [ $? -gt 1 ] && return 2 || return 0; }
71
+
42
72
echo ' Installing FFmpeg'
43
- # brew install does produce output regularly on a regular MacOS,
44
- # but Travis doesn't see it for some reason
45
- brew list --versions ffmpeg || \
46
- travis_wait brew install -v ffmpeg --without-x264 --without-xvid --without-gpl
47
- brew info ffmpeg
48
- echo ' -----------------'
73
+
74
+ brew_install_and_cache_within_time_limit ffmpeg || { [ $? -gt 1 ] && return 2 || return 0; }
49
75
50
76
else
51
77
echo " Running for linux"
0 commit comments