Commit 3d4cb509 authored by Jason Madden's avatar Jason Madden

Enable configure caching to try to speed up builds, especially of cares.

[appveyor skip]
parent 9610e1a1
......@@ -45,6 +45,7 @@ docs/__pycache__
# Artifacts of configuring in place
deps/c-ares/config.log
deps/c-ares/config.status
deps/c-ares/config.cache
deps/c-ares/stamp-h1
deps/c-ares/stamp-h2
deps/c-ares/ares_build.h.orig
......@@ -73,6 +74,7 @@ deps/libev/Makefile
deps/libev/config.log
deps/libev/config.h
deps/libev/config.status
deps/libev/config.cache
deps/libev/configure-output.txt
deps/libev/libtool
deps/libev/stamp-h1
......@@ -86,6 +88,7 @@ deps/libuv/Makefile
deps/libuv/config.log
deps/libuv/config.h
deps/libuv/config.status
deps/libev/config.cache
deps/libduv/libtool
deps/libuv/stamp-h1
deps/libuv/.libs
......
......@@ -51,6 +51,10 @@ matrix:
before_install:
- export PATH=$BUILD_RUNTIMES/snakepit/$TRAVIS_PYTHON_VERSION.d/bin:$PATH
- export G_SITE=$BUILD_RUNTIMES/snakepit/$TRAVIS_PYTHON_VERSION.d/lib/*/site-packages/
# Restore the configure caches
- if [-f $BUILD_LIBS/config.cache.ares ]; then cp $BUILD_LIBS/config.cache.ares deps/c-ares/ ; fi
- if [-f $BUILD_LIBS/config.cache.libev ]; then cp $BUILD_LIBS/config.cache.ares deps/libev/ ; fi
- if [-f $BUILD_LIBS/config.cache.libuv ]; then cp $BUILD_LIBS/config.cache.ares deps/libuv/ ; fi
before_script:
# Show some details of interest
......@@ -62,6 +66,25 @@ before_script:
- >
python -c "import gevent.ares; print(gevent.ares)"
cache:
pip: true
directories:
- $HOME/.venv
- $HOME/.runtimes
- $HOME/.wheelhouse
- $HOME/.ccache
- $HOME/.libs
before_cache:
- rm -f $HOME/.cache/pip/log/debug.log
# Store the configure caches. Having a cache can speed up c-ares
# configure from 2-3 minutes to 20 seconds.
- mkdir -p $BUILD_LIBS
- cp deps/c-ares/config.cache $BUILD_LIBS/config.cache.ares
- cp deps/libev/config.cache $BUILD_LIBS/config.cache.libev
- cp deps/libuv/config.cache $BUILD_LIBS/config.cache.libuv
# Installing is taken care of by the first stage.
install:
- ls -l $BUILD_RUNTIMES/snakepit/
......@@ -139,7 +162,7 @@ jobs:
# well as we would hope.
- pushd deps/libev && ./configure --prefix=$BUILD_LIBS && make install && popd
- pushd deps/c-ares && ./configure --prefix=$BUILD_LIBS && make -j4 install && popd
- pushd deps/libuv && ./autogen.sh && ./configure --disable-static --prefix=$BUILD_LIBS && make -j4 install && popd
- pushd deps/libuv && ./autogen.sh && ./configure -C --disable-static --prefix=$BUILD_LIBS && make -j4 install && popd
# libev builds a manpage each time, and it includes today's date, so it frequently changes.
# delete to avoid repacking the archive
- rm -rf $BUILD_LIBS/share/man/
......@@ -279,16 +302,3 @@ jobs:
notifications:
email: false
cache:
pip: true
directories:
- $HOME/.venv
- $HOME/.runtimes
- $HOME/.wheelhouse
- $HOME/.ccache
- $HOME/.libs
before_cache:
- rm -f $HOME/.cache/pip/log/debug.log
......@@ -43,7 +43,7 @@ else:
ares_configure_command = ' '.join([
"(cd ", quoted_dep_abspath('c-ares'),
" && if [ -r ares_build.h ]; then cp ares_build.h ares_build.h.orig; fi ",
" && sh ./configure --disable-dependency-tracking " + _m32 + "CONFIG_COMMANDS= ",
" && sh ./configure --disable-dependency-tracking -C " + _m32 + "CONFIG_COMMANDS= ",
" && cp ares_config.h ares_build.h \"$OLDPWD\" ",
" && cat ares_build.h ",
" && if [ -r ares_build.h.orig ]; then mv ares_build.h.orig ares_build.h; fi)",
......
......@@ -30,7 +30,7 @@ LIBEV_EMBED = should_embed('libev')
# Configure libev in place
libev_configure_command = ' '.join([
"(cd ", quoted_dep_abspath('libev'),
" && sh ./configure > configure-output.txt",
" && sh ./configure -C > configure-output.txt",
")",
])
......
......@@ -391,6 +391,7 @@ class GeventClean(clean):
'config.h',
'config.log',
'config.status',
'config.cache',
'configure-output.txt',
'.libs'
):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment