-
Notifications
You must be signed in to change notification settings - Fork 37.8k
build: depends move macOS C(XX) FLAGS out of C & CXX #29233
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
Conversation
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. Code CoverageFor detailed information about the code coverage, see the test coverage report. ReviewsSee the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
Hmm. I was curious to see if the compiler forwards $ clang -mmacosx-version-min=11.2 test.c -c -o test.o
$ clang -mmacosx-version-min=11.2 test.o -o testing -v
Apple clang version 14.0.3 (clang-1403.0.22.14.1)
Target: arm64-apple-darwin22.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 11.2.0 13.3 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -o testing -L/usr/local/lib test.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3/lib/darwin/libclang_rt.osx.a
$ clang test.o -o testing -v
Apple clang version 14.0.3 (clang-1403.0.22.14.1)
Target: arm64-apple-darwin22.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 13.0.0 13.3 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -o testing -L/usr/local/lib test.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3/lib/darwin/libclang_rt.osx.a Note that with no From the ld manpages:
So.. I'm not sure this is entirely safe? Or are we adding it to the linker elsewhere? |
We are passing the min version as part of |
This doesn't need to exist in C & CXX.
a81130d
to
cbc9bf1
Compare
Heh, right. The next line. Not sure how I missed that :) utACK cbc9bf1 |
Guix Build (aarch64): 94d2fe95101baf9ba74e5c1be6a93708bd55b3700567c768e72ceb4af4951bb9 guix-build-cbc9bf11fe84/output/aarch64-linux-gnu/SHA256SUMS.part
3cacc8c3d726e78b1db8ea07c25186e589f32c991cd7fd45d4390135adf199f2 guix-build-cbc9bf11fe84/output/aarch64-linux-gnu/bitcoin-cbc9bf11fe84-aarch64-linux-gnu-debug.tar.gz
39f42920ea452ea67f0f8df3199c50d73660009368fccfab900204d27b8e50cc guix-build-cbc9bf11fe84/output/aarch64-linux-gnu/bitcoin-cbc9bf11fe84-aarch64-linux-gnu.tar.gz
dc1a2bc4b5c9a54cbd2b70836365529c901253c7987878d4a1e95d095ecdfbad guix-build-cbc9bf11fe84/output/arm-linux-gnueabihf/SHA256SUMS.part
65206a473336b9fdee2e5dd5ed291dddb5869c47e4f458cafbd40fd87024de72 guix-build-cbc9bf11fe84/output/arm-linux-gnueabihf/bitcoin-cbc9bf11fe84-arm-linux-gnueabihf-debug.tar.gz
491f4df80157485debbf0107caa50755c0b0451688c397e9b1d731513ad1929e guix-build-cbc9bf11fe84/output/arm-linux-gnueabihf/bitcoin-cbc9bf11fe84-arm-linux-gnueabihf.tar.gz
1189f8c413004703babcdf51831a893e74e708203b462b7194ccc56aa4985dd0 guix-build-cbc9bf11fe84/output/arm64-apple-darwin/SHA256SUMS.part
d14487ff08f942f869a3532721667b1b458a0279c9969fa5639ce89443b220e5 guix-build-cbc9bf11fe84/output/arm64-apple-darwin/bitcoin-cbc9bf11fe84-arm64-apple-darwin-unsigned.tar.gz
fb3023def5c552f9a769ee9208d1903dc0755d29c9f9ee9c9b3b5e5622ef40e9 guix-build-cbc9bf11fe84/output/arm64-apple-darwin/bitcoin-cbc9bf11fe84-arm64-apple-darwin-unsigned.zip
0d7d6b26a4fd053e41b86c7460ef015caffc4e04b4cbe4d548e082653b833a3d guix-build-cbc9bf11fe84/output/arm64-apple-darwin/bitcoin-cbc9bf11fe84-arm64-apple-darwin.tar.gz
d7d421956a2213dcd8e5bd8e94a0e451a5f8e2a899c410ef94922e8701cec0f9 guix-build-cbc9bf11fe84/output/dist-archive/bitcoin-cbc9bf11fe84.tar.gz
9eacfb262b0d25c06ddedb048a173803beacf7157a5cf87a7374739d1c6123d5 guix-build-cbc9bf11fe84/output/powerpc64-linux-gnu/SHA256SUMS.part
d923f9393ea2b10444890d507f59078f4c7eb38199215af971a6fa073134f714 guix-build-cbc9bf11fe84/output/powerpc64-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64-linux-gnu-debug.tar.gz
d211faceed9854890094c1fb4bb9f3ec657b70b5442be389252c21c54805293b guix-build-cbc9bf11fe84/output/powerpc64-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64-linux-gnu.tar.gz
383b0b4da7af35f279d388e81277f89c9d900f90969a28392e79c0b7d277fea2 guix-build-cbc9bf11fe84/output/powerpc64le-linux-gnu/SHA256SUMS.part
4e393df801dc39f1ce1005af77687c41e43783a28b46db11e15ab31215839d1f guix-build-cbc9bf11fe84/output/powerpc64le-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64le-linux-gnu-debug.tar.gz
d7ae36bb21dee8ee3942d44e7cab944cd98aa942494035763af8bea7bbc4e2c3 guix-build-cbc9bf11fe84/output/powerpc64le-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64le-linux-gnu.tar.gz
01e9f624972cbe2543bebbf52c2238695ef7130250985e06ac8f0e1cdea5f619 guix-build-cbc9bf11fe84/output/riscv64-linux-gnu/SHA256SUMS.part
aafa8bc8aa94088365eb8e47d2b8270b8f06f1b26e2a0f12a4f124b0833f49dd guix-build-cbc9bf11fe84/output/riscv64-linux-gnu/bitcoin-cbc9bf11fe84-riscv64-linux-gnu-debug.tar.gz
d58a98be8d1f0251b1c89af245e81f7540d604869495f530bd6b873ed711d13e guix-build-cbc9bf11fe84/output/riscv64-linux-gnu/bitcoin-cbc9bf11fe84-riscv64-linux-gnu.tar.gz
bdd5c37789df686e8d610550112f4b16238c04cf20db6e41e0f195b160ef86eb guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/SHA256SUMS.part
67a7f4843f2b3377a00d43138e1fae0a8deabce0d46622f762c408243fabf07e guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/bitcoin-cbc9bf11fe84-x86_64-apple-darwin-unsigned.tar.gz
d2aa690db261119f4412a3d1e71b4481ff0d73fa6435bba18418fa59b3b91f53 guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/bitcoin-cbc9bf11fe84-x86_64-apple-darwin-unsigned.zip
477dc20648ffc4d93e985ff77df3e94d64ffd887c4c5409b7043ce22749a8839 guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/bitcoin-cbc9bf11fe84-x86_64-apple-darwin.tar.gz
00cc716df089abe08bf48b0886b0a000bb759818e0bbdf0f6be97d06e494a145 guix-build-cbc9bf11fe84/output/x86_64-linux-gnu/SHA256SUMS.part
7e6c6e315dab9bd0e6aa03c88547927917fe0e0649ea22462b96cb38b65c2d29 guix-build-cbc9bf11fe84/output/x86_64-linux-gnu/bitcoin-cbc9bf11fe84-x86_64-linux-gnu-debug.tar.gz
7fae47596751d9b5b6bda5ca6a19e2c5c7a793b71d84160a2d48d541c82e7391 guix-build-cbc9bf11fe84/output/x86_64-linux-gnu/bitcoin-cbc9bf11fe84-x86_64-linux-gnu.tar.gz
9f9720049c14a6356637064b53cb9f4e27d685327d4cd7420c3434cfcd1a21c9 guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/SHA256SUMS.part
f0a1c65709e0679ab67e5654caf12a429533dc3fe8fb8c2ba96e623aafb5ae8f guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64-debug.zip
ac49c70260c34fd38fb137fb5531c0c1fb7fd795080dbf5b7a10325e78dd1063 guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64-setup-unsigned.exe
c8ca30c92534803529bc9381d13ad765a719213fea9375d8311f647032e3a30b guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64-unsigned.tar.gz
6700f36498a31a38cfbe9ca0f9643970e311f2e2d5e2d9589f806646297ba76d guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64.zip |
I was able to make and run a depends build on Intel macOS 14.2.1 for cbc9bf1. I'm also baking a Guix build. |
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 cbc9bf1
Guix build (x86):
94d2fe95101baf9ba74e5c1be6a93708bd55b3700567c768e72ceb4af4951bb9 guix-build-cbc9bf11fe84/output/aarch64-linux-gnu/SHA256SUMS.part
3cacc8c3d726e78b1db8ea07c25186e589f32c991cd7fd45d4390135adf199f2 guix-build-cbc9bf11fe84/output/aarch64-linux-gnu/bitcoin-cbc9bf11fe84-aarch64-linux-gnu-debug.tar.gz
39f42920ea452ea67f0f8df3199c50d73660009368fccfab900204d27b8e50cc guix-build-cbc9bf11fe84/output/aarch64-linux-gnu/bitcoin-cbc9bf11fe84-aarch64-linux-gnu.tar.gz
dc1a2bc4b5c9a54cbd2b70836365529c901253c7987878d4a1e95d095ecdfbad guix-build-cbc9bf11fe84/output/arm-linux-gnueabihf/SHA256SUMS.part
65206a473336b9fdee2e5dd5ed291dddb5869c47e4f458cafbd40fd87024de72 guix-build-cbc9bf11fe84/output/arm-linux-gnueabihf/bitcoin-cbc9bf11fe84-arm-linux-gnueabihf-debug.tar.gz
491f4df80157485debbf0107caa50755c0b0451688c397e9b1d731513ad1929e guix-build-cbc9bf11fe84/output/arm-linux-gnueabihf/bitcoin-cbc9bf11fe84-arm-linux-gnueabihf.tar.gz
1189f8c413004703babcdf51831a893e74e708203b462b7194ccc56aa4985dd0 guix-build-cbc9bf11fe84/output/arm64-apple-darwin/SHA256SUMS.part
d14487ff08f942f869a3532721667b1b458a0279c9969fa5639ce89443b220e5 guix-build-cbc9bf11fe84/output/arm64-apple-darwin/bitcoin-cbc9bf11fe84-arm64-apple-darwin-unsigned.tar.gz
fb3023def5c552f9a769ee9208d1903dc0755d29c9f9ee9c9b3b5e5622ef40e9 guix-build-cbc9bf11fe84/output/arm64-apple-darwin/bitcoin-cbc9bf11fe84-arm64-apple-darwin-unsigned.zip
0d7d6b26a4fd053e41b86c7460ef015caffc4e04b4cbe4d548e082653b833a3d guix-build-cbc9bf11fe84/output/arm64-apple-darwin/bitcoin-cbc9bf11fe84-arm64-apple-darwin.tar.gz
d7d421956a2213dcd8e5bd8e94a0e451a5f8e2a899c410ef94922e8701cec0f9 guix-build-cbc9bf11fe84/output/dist-archive/bitcoin-cbc9bf11fe84.tar.gz
9eacfb262b0d25c06ddedb048a173803beacf7157a5cf87a7374739d1c6123d5 guix-build-cbc9bf11fe84/output/powerpc64-linux-gnu/SHA256SUMS.part
d923f9393ea2b10444890d507f59078f4c7eb38199215af971a6fa073134f714 guix-build-cbc9bf11fe84/output/powerpc64-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64-linux-gnu-debug.tar.gz
d211faceed9854890094c1fb4bb9f3ec657b70b5442be389252c21c54805293b guix-build-cbc9bf11fe84/output/powerpc64-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64-linux-gnu.tar.gz
383b0b4da7af35f279d388e81277f89c9d900f90969a28392e79c0b7d277fea2 guix-build-cbc9bf11fe84/output/powerpc64le-linux-gnu/SHA256SUMS.part
4e393df801dc39f1ce1005af77687c41e43783a28b46db11e15ab31215839d1f guix-build-cbc9bf11fe84/output/powerpc64le-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64le-linux-gnu-debug.tar.gz
d7ae36bb21dee8ee3942d44e7cab944cd98aa942494035763af8bea7bbc4e2c3 guix-build-cbc9bf11fe84/output/powerpc64le-linux-gnu/bitcoin-cbc9bf11fe84-powerpc64le-linux-gnu.tar.gz
01e9f624972cbe2543bebbf52c2238695ef7130250985e06ac8f0e1cdea5f619 guix-build-cbc9bf11fe84/output/riscv64-linux-gnu/SHA256SUMS.part
aafa8bc8aa94088365eb8e47d2b8270b8f06f1b26e2a0f12a4f124b0833f49dd guix-build-cbc9bf11fe84/output/riscv64-linux-gnu/bitcoin-cbc9bf11fe84-riscv64-linux-gnu-debug.tar.gz
d58a98be8d1f0251b1c89af245e81f7540d604869495f530bd6b873ed711d13e guix-build-cbc9bf11fe84/output/riscv64-linux-gnu/bitcoin-cbc9bf11fe84-riscv64-linux-gnu.tar.gz
bdd5c37789df686e8d610550112f4b16238c04cf20db6e41e0f195b160ef86eb guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/SHA256SUMS.part
67a7f4843f2b3377a00d43138e1fae0a8deabce0d46622f762c408243fabf07e guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/bitcoin-cbc9bf11fe84-x86_64-apple-darwin-unsigned.tar.gz
d2aa690db261119f4412a3d1e71b4481ff0d73fa6435bba18418fa59b3b91f53 guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/bitcoin-cbc9bf11fe84-x86_64-apple-darwin-unsigned.zip
477dc20648ffc4d93e985ff77df3e94d64ffd887c4c5409b7043ce22749a8839 guix-build-cbc9bf11fe84/output/x86_64-apple-darwin/bitcoin-cbc9bf11fe84-x86_64-apple-darwin.tar.gz
00cc716df089abe08bf48b0886b0a000bb759818e0bbdf0f6be97d06e494a145 guix-build-cbc9bf11fe84/output/x86_64-linux-gnu/SHA256SUMS.part
7e6c6e315dab9bd0e6aa03c88547927917fe0e0649ea22462b96cb38b65c2d29 guix-build-cbc9bf11fe84/output/x86_64-linux-gnu/bitcoin-cbc9bf11fe84-x86_64-linux-gnu-debug.tar.gz
7fae47596751d9b5b6bda5ca6a19e2c5c7a793b71d84160a2d48d541c82e7391 guix-build-cbc9bf11fe84/output/x86_64-linux-gnu/bitcoin-cbc9bf11fe84-x86_64-linux-gnu.tar.gz
9f9720049c14a6356637064b53cb9f4e27d685327d4cd7420c3434cfcd1a21c9 guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/SHA256SUMS.part
f0a1c65709e0679ab67e5654caf12a429533dc3fe8fb8c2ba96e623aafb5ae8f guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64-debug.zip
ac49c70260c34fd38fb137fb5531c0c1fb7fd795080dbf5b7a10325e78dd1063 guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64-setup-unsigned.exe
c8ca30c92534803529bc9381d13ad765a719213fea9375d8311f647032e3a30b guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64-unsigned.tar.gz
6700f36498a31a38cfbe9ca0f9643970e311f2e2d5e2d9589f806646297ba76d guix-build-cbc9bf11fe84/output/x86_64-w64-mingw32/bitcoin-cbc9bf11fe84-win64.zip
Guix build on Ubuntu AMD:
|
, bitcoin#28622, bitcoin#28880, bitcoin#29185, bitcoin#29170, bitcoin#29233, bitcoin#29298, bitcoin#29598, bitcoin#29732, bitcoin#29890, bitcoin#29739, bitcoin#30074, bitcoin#30198, bitcoin#29072 (toolchain backports: part 2) 1506d9d merge bitcoin#29072: use `-no_exported_symbols` on macOS (Kittywhiskers Van Gogh) 9247960 merge bitcoin#30198: qt 5.15.14 and fix macOS build with Clang 18 (Kittywhiskers Van Gogh) 5585e7a merge bitcoin#30074: use ENV flags in get_arch (Kittywhiskers Van Gogh) decd420 merge bitcoin#29739: swap cctools otool for llvm-objdump (Kittywhiskers Van Gogh) 0f8c420 merge bitcoin#29890: remove some tools when cross-compiling for macOS (Kittywhiskers Van Gogh) 936da1a merge bitcoin#29732: qt 5.15.13 (Kittywhiskers Van Gogh) c294b47 revert: patch qt to make placeholders differ from actual text (Kittywhiskers Van Gogh) af7090c merge bitcoin#29598: don't use -h with touch on OpenBSD (Kittywhiskers Van Gogh) ebf8ff2 merge bitcoin#29298: patch libtool out of libnatpmp/miniupnpc (Kittywhiskers Van Gogh) 070b876 merge bitcoin#29233: depends move macOS C(XX) FLAGS out of C & CXX (Kittywhiskers Van Gogh) d838481 revert dash#2398: Force fvisibility=hidden when compiling on macos (Kittywhiskers Van Gogh) 59a18f9 merge bitcoin#29170: add macho branch protection check (Kittywhiskers Van Gogh) cb024d9 merge bitcoin#29185: remove `--enable-lto` (Kittywhiskers Van Gogh) 6d75a81 merge bitcoin#28880: switch to using LLVM 17.x for macOS builds (Kittywhiskers Van Gogh) 7b0a1f2 merge bitcoin#28622: use macOS 14 SDK (Xcode 15.0) (Kittywhiskers Van Gogh) 02eb735 merge bitcoin#24948: fix typo in permissions (Kittywhiskers Van Gogh) 2739107 merge bitcoin#24534: make gen-sdk deterministic (Kittywhiskers Van Gogh) ab10bf9 merge bitcoin#24241: cleanup doc on need of Developer Account to obtain macOS SDK (Kittywhiskers Van Gogh) Pull request description: ## Additional Information * Dependent on #6384 * Dependency for #6389 * The Qt patch introduced in [dash#5596](#5596), `fix_qt_placeholders.patch`, was a portion of a suggested workaround for QTBUG-92199 ([source](https://bugreports.qt.io/browse/QTBUG-92199?focusedId=669719&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-669719)) but since then, a fix ([here](https://codereview.qt-project.org/c/qt/qtbase/+/434310)) has made its way to 5.15.12 and we are upgrading to 5.15.14 from 5.15.11. So we can safely remove this patch. ## Breaking Changes None expected ## Checklist - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)** - [x] I have added or updated relevant unit/integration/functional/e2e tests - [x] I have made corresponding changes to the documentation **(note: N/A)** - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: utACK 1506d9d PastaPastaPasta: utACK 1506d9d Tree-SHA512: df8e4ea0ce9e7b269d248518698f0566b5eca1a54cdfb53f5b213b90fb5177e5a5df44eaeb6f3fc014cd93351c9245736bb2fd52bc2af4ae274d8fa93e601b07
Summary: ``` Move some C/CXX FLAGS out of C/CXX. The remaining flags are host/SDK related, and will need some more thought. This is more correct in any case, and simplifies future changes. ``` Backport of [[bitcoin/bitcoin#29233 | core#29233]]. Depends on D17249. Test Plan: Run the macos guix build. Reviewers: #bitcoin_abc, PiRK Reviewed By: #bitcoin_abc, PiRK Differential Revision: https://reviews.bitcoinabc.org/D17250
Summary: ``` Move some C/CXX FLAGS out of C/CXX. The remaining flags are host/SDK related, and will need some more thought. This is more correct in any case, and simplifies future changes. ``` Backport of [[bitcoin/bitcoin#29233 | core#29233]]. Depends on D17249. Test Plan: Run the macos guix build. Reviewers: #bitcoin_abc, PiRK Reviewed By: #bitcoin_abc, PiRK Differential Revision: https://reviews.bitcoinabc.org/D17250
Move some C/CXX FLAGS out of C/CXX. The remaining flags are host/SDK related, and will need some more thought.
This is more correct in any case, and simplifies future changes.
Related to #21778.