-
Notifications
You must be signed in to change notification settings - Fork 159
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Overlay triplets test #961
Conversation
b706964
to
5704e75
Compare
Codecov Report
@@ Coverage Diff @@
## master #961 +/- ##
=========================================
Coverage ? 45.18%
=========================================
Files ? 148
Lines ? 62138
Branches ? 0
=========================================
Hits ? 28077
Misses ? 34061
Partials ? 0 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
5704e75
to
af495c3
Compare
Initial findings are quite positive: the Windows build of vcpkg deps speeds up considerably. In my test run here the "Build vcpkg deps" step took 27 minutes, while in recent runs it has taken ~40-55 minutes. However, the Windows vcpkg build of Tectonic itself failed because of a problem with graphite2:
Hopefully this is something that can be deal with easily. The logs from building graphite2 here are:
Nothing obviously messed up here; it's the same as the standard build, minus debug variants! Also note that |
This is basically a tactic to speed up the Windows builds. By default, vcpkg builds both debug and release versions of requested libraries. There's probably some good reason for that, but for us it just makes the builds a lot slower than they need to be. We can avoid that by providing a custom "triplet" file that disables the debug builds. In order to do this cleanly, we use new support from cargo-vcpkg that adds support for an "overlay triplets" directory. Builds also need to set the $VCPKGRS_TRIPLET environment variable so that vcpkg-rs can find the packages it needs. We add some docs and a diagnostic warning if that may be what's going on when a vcpkg fails to be found.
415bfde
to
b3c02e7
Compare
OK, I think this is working! The Windows vcpkg build completes about twice as quickly as it used to, now. The only thing blocking merger is a new release of cargo-vcpkg that incorporates the |
OK, well, no cargo-vcpkg release yet, but I think it will be fine to use the Git version until that happens. |
Try using my customized vcpkg with
--overlay-triplets
and a Windows/static/release build to see if our builds speed up!