After discussion with @theuni, we can possibly just remove ccache from depends entirely.
Related to #12606
Looks like configure picked up the ccache: checking if ccache should be used... yes
utACK ec7602b
What we still need to check is whether travis caches the ccache result, even though ~/.ccache
is no longer in the list. I’m not sure how, is it possible to inspect the travis cache?
Edit: I tried through the GUI, as well as the travis command line tool, but with neither I was able to locate the cache for this PR. This might either mean it doesn’t exist, or I couldn’t get at it for another reason (e.g. some upper limit to the number of shown caches).
Seems the former. At the end of the travis logs it says:
0store build cache
1nothing changed, not updating cache
It’s not writing the cache at all because it detects no changes?!
2@@ -3,10 +3,10 @@ dist: trusty
3 os: linux
4 language: minimal
5 cache:
6+ ccache: true
7 directories:
8 - depends/built
9 - depends/sdk-sources
10- - $HOME/.ccache
Just in case it’s helpful, I successfully complied this on NetBSD 7.0 (64-bit). These are the commands I used:
git clone https://www.github.com/fanquake/bitcoin/
cd bitcoin
git checkout ccache-removal
./autogen.sh
./configure CPPFLAGS="-I/usr/pkg/include" LDFLAGS="-L/usr/pkg/lib" BOOST_CPPFLAGS="-I/usr/pkg/include" BOOST_LDFLAGS="-L/usr/pkg/lib"
gmake
If you’d like me to try building with different parameters, or check for the presence of certain files/directories, please let me know.
re-utACK cc879675e16c310f3ce3f2387b7aa966e64e4352
Caching works on arm and osx cross-builds at least
The travis builds on all my PR’s seem to be failing with errors like:
0$ if [ -z "$NO_DEPENDS" ]; then depends/$HOST/native/bin/ccache --max-size=$CCACHE_SIZE; fi
1/home/travis/.travis/job_stages: line 57: depends/x86_64-unknown-linux-gnu/native/bin/ccache: No such file or directory
An example is https://travis-ci.org/bitcoin/bitcoin/jobs/350509177#L1055
@ryanofsky This is a travis bug. The command you mention above was removed from the travis yaml, it shouldn’t be executed at all.
You can either ignore the failure or rebase your pull request on master. (Just changing the commit id via EDITOR=true git commit --ammend
might be enough, but I haven’t checked)
Edit: Just checked that rebase is not needed. You can just change the commit id