-
Notifications
You must be signed in to change notification settings - Fork 714
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
[Depends] Bump boost to 1.71.0 and optimize flow #2331
[Depends] Bump boost to 1.71.0 and optimize flow #2331
Conversation
55adf98
to
c3213d1
Compare
You forgot to update the boost version in the |
Added a commit to document the version bump, no functional change therein. |
Added another commit to update the download URL for the Boost source archive. Ref: boostorg/boost#502 |
bfb68c6
to
ceebb52
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gitian went fine, tested ACK ceebb52
I kept finding myself needing these to debug our build system, since they are innocuous and are very helpful they probably belong in the codebase. Source: John Graham-Cumming https://www.cmcrossroads.com/article/printing-value-makefile-variable
The ancient "darwin-4.9.1" profile has long been used to match against clang, which prior to version 9, reported 4.9.1 as its version when invoking "clang++ -dumpversion". Presumably this was a historical compatibility quirk related to Apple's switch from gcc to clang. This was "fixed" in clang 9.0, so that -dumpversion reports the real version. Unfortunately that had the side-effect of breaking the (brittle) boost compiler detection. Move to the seemingly more-correct "clang-darwin" profile, which passes the checks and builds correctly. Also switch to using ar rather than libtool for archiving, as it's what the clang-darwin profile expects to be using. Note that because this is using a different profile, some of the final command-line arguments end up changing. The changes look sane at a glance.
All other mk files use the package variable consistently except for the two instances here, which have always been here, since depends was introduced in 0.10.
For example, doing: make CC=clang CXX=clang++ Should now propagate these settings down to depends packages
b2 will pickup our user-config.jam just fine, however, bootstrap.sh has its own toolset autodetect mechanism, which doesn't GAF about our user-config.jam
Previously, we specified the target-os in the toolset (and sometimes used the wrong command line flags), now we have a clear separation, which is favored by ./bootstrap.sh and ./b2. This means that all supported OSes will specify the correct target-os= and toolset= on the command line.
We want to supply well-known vars to ./configure scripts to do with as they please. However, we do _not_ want to override these well-known vars at make-time as certain build systems expect a self-mangled version of these well-known vars. For example, freetype and bdb will prepend `libtool --mode=compile' to CC and CXX, which, if we override CC on the command line at make-time, will break the build.
We already have $(package)_ar, so just use that instead
bintray.com is closing and all official Boost source downloads have moved to jfrog.io instead
ceebb52
to
de7766c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK de7766c
24ff00bb4341557f80c7c4fb929b1212e58f3ae31d096e3e5b01703f9697c007 pivx-5.1.99-aarch64-linux-gnu-debug.tar.gz
a52fa92702d9f45ea151ac39bef65be34ddfa6606b6252c4d79c9075b4c776bf pivx-5.1.99-aarch64-linux-gnu.tar.gz
88931149bb76db8f6fb3e95f094ec04ea7f7358f4ba3cce0b3bfd4c04fadf327 pivx-5.1.99-arm-linux-gnueabihf-debug.tar.gz
d053496f767915e9e854c87ed22d5e3548875f4be9d70c6b30dd629cdd829c0c pivx-5.1.99-arm-linux-gnueabihf.tar.gz
267bb28fb6f2dd6cfafb283351c234a01a776dd8557fe94c90cfb7bfe4ba5ddb pivx-5.1.99-i686-pc-linux-gnu-debug.tar.gz
88cf39ae9c945095ccb08b4944287b72c1319a1eb3d3b2273aa846fe45f55e3e pivx-5.1.99-i686-pc-linux-gnu.tar.gz
bf71cacca3e4c983e361e422ad8ee1468aa3bf71900e047653a2d426b7545c93 pivx-5.1.99-x86_64-linux-gnu-debug.tar.gz
7cfc731a2c2c0d2f2a89693cd7fdc50e0b27a5638561ef233b5304083a9701dc pivx-5.1.99-x86_64-linux-gnu.tar.gz
84b52bef628d874d4c05da87d675a7d2a276478652be8eeca55e12596db9a600 src/pivx-5.1.99.tar.gz
950c577126aa2bdb649b4c40b36de2a144548f895223bc8950d802986b23d39d pivx-linux-5.1-res.yml
fb94db0486576f37a3772776a216cf2ba6dd5f3e70bf636a35975c9299ce44d8 pivx-5.1.99-win-unsigned.tar.gz
a24975f70321dbbe49f415f5e58b08e1ec7ef0067fe76d399d31358984de53fc pivx-5.1.99-win64-debug.zip
ca68363f065dd35541e4e254ca472b4e829821f5b35f95cc356138acd0ed18f7 pivx-5.1.99-win64-setup-unsigned.exe
34e75f8a354694837895c0b9f1982ed4de049a2887052466dfa12091fbcdce6a pivx-5.1.99-win64.zip
84b52bef628d874d4c05da87d675a7d2a276478652be8eeca55e12596db9a600 src/pivx-5.1.99.tar.gz
8bc6b71ab30b10b9fa3f3c0e1e685352b74bc279474e2bab37080361625c99c9 pivx-win-5.1-res.yml
5996b3527bdcbc768f2680bb397d7b762f8fac200bc2ac05b9f491d0877e0d78 pivx-5.1.99-osx-unsigned.dmg
f0b2512ceacfbc8b7ece07a85d4bbbed7851f558347b19274d7469d91c3f89b9 pivx-5.1.99-osx-unsigned.tar.gz
194b365e9ab442439919e9208f526eb90638c8f359a318c0aecfbc0453c7821c pivx-5.1.99-osx64.tar.gz
84b52bef628d874d4c05da87d675a7d2a276478652be8eeca55e12596db9a600 src/pivx-5.1.99.tar.gz
1e6808a22a24dae008975428d11a52c8f7559c51dee7f8100a701e0a36738b16 pivx-osx-5.1-res.yml
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no code changes after rebase, utACK de7766c and merging..
Backports the following upstream PRs to clean up and update the Boost dependency