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__ ...@@ -45,6 +45,7 @@ docs/__pycache__
# Artifacts of configuring in place # Artifacts of configuring in place
deps/c-ares/config.log deps/c-ares/config.log
deps/c-ares/config.status deps/c-ares/config.status
deps/c-ares/config.cache
deps/c-ares/stamp-h1 deps/c-ares/stamp-h1
deps/c-ares/stamp-h2 deps/c-ares/stamp-h2
deps/c-ares/ares_build.h.orig deps/c-ares/ares_build.h.orig
...@@ -73,6 +74,7 @@ deps/libev/Makefile ...@@ -73,6 +74,7 @@ deps/libev/Makefile
deps/libev/config.log deps/libev/config.log
deps/libev/config.h deps/libev/config.h
deps/libev/config.status deps/libev/config.status
deps/libev/config.cache
deps/libev/configure-output.txt deps/libev/configure-output.txt
deps/libev/libtool deps/libev/libtool
deps/libev/stamp-h1 deps/libev/stamp-h1
...@@ -86,6 +88,7 @@ deps/libuv/Makefile ...@@ -86,6 +88,7 @@ deps/libuv/Makefile
deps/libuv/config.log deps/libuv/config.log
deps/libuv/config.h deps/libuv/config.h
deps/libuv/config.status deps/libuv/config.status
deps/libev/config.cache
deps/libduv/libtool deps/libduv/libtool
deps/libuv/stamp-h1 deps/libuv/stamp-h1
deps/libuv/.libs deps/libuv/.libs
......
...@@ -51,6 +51,10 @@ matrix: ...@@ -51,6 +51,10 @@ matrix:
before_install: before_install:
- export PATH=$BUILD_RUNTIMES/snakepit/$TRAVIS_PYTHON_VERSION.d/bin:$PATH - export PATH=$BUILD_RUNTIMES/snakepit/$TRAVIS_PYTHON_VERSION.d/bin:$PATH
- export G_SITE=$BUILD_RUNTIMES/snakepit/$TRAVIS_PYTHON_VERSION.d/lib/*/site-packages/ - 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: before_script:
# Show some details of interest # Show some details of interest
...@@ -62,6 +66,25 @@ before_script: ...@@ -62,6 +66,25 @@ before_script:
- > - >
python -c "import gevent.ares; print(gevent.ares)" 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. # Installing is taken care of by the first stage.
install: install:
- ls -l $BUILD_RUNTIMES/snakepit/ - ls -l $BUILD_RUNTIMES/snakepit/
...@@ -139,7 +162,7 @@ jobs: ...@@ -139,7 +162,7 @@ jobs:
# well as we would hope. # well as we would hope.
- pushd deps/libev && ./configure --prefix=$BUILD_LIBS && make install && popd - pushd deps/libev && ./configure --prefix=$BUILD_LIBS && make install && popd
- pushd deps/c-ares && ./configure --prefix=$BUILD_LIBS && make -j4 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. # libev builds a manpage each time, and it includes today's date, so it frequently changes.
# delete to avoid repacking the archive # delete to avoid repacking the archive
- rm -rf $BUILD_LIBS/share/man/ - rm -rf $BUILD_LIBS/share/man/
...@@ -279,16 +302,3 @@ jobs: ...@@ -279,16 +302,3 @@ jobs:
notifications: notifications:
email: false 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: ...@@ -43,7 +43,7 @@ else:
ares_configure_command = ' '.join([ ares_configure_command = ' '.join([
"(cd ", quoted_dep_abspath('c-ares'), "(cd ", quoted_dep_abspath('c-ares'),
" && if [ -r ares_build.h ]; then cp ares_build.h ares_build.h.orig; fi ", " && 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\" ", " && cp ares_config.h ares_build.h \"$OLDPWD\" ",
" && cat ares_build.h ", " && cat ares_build.h ",
" && if [ -r ares_build.h.orig ]; then mv ares_build.h.orig ares_build.h; fi)", " && 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') ...@@ -30,7 +30,7 @@ LIBEV_EMBED = should_embed('libev')
# Configure libev in place # Configure libev in place
libev_configure_command = ' '.join([ libev_configure_command = ' '.join([
"(cd ", quoted_dep_abspath('libev'), "(cd ", quoted_dep_abspath('libev'),
" && sh ./configure > configure-output.txt", " && sh ./configure -C > configure-output.txt",
")", ")",
]) ])
......
...@@ -391,6 +391,7 @@ class GeventClean(clean): ...@@ -391,6 +391,7 @@ class GeventClean(clean):
'config.h', 'config.h',
'config.log', 'config.log',
'config.status', 'config.status',
'config.cache',
'configure-output.txt', 'configure-output.txt',
'.libs' '.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