aboutsummaryrefslogtreecommitdiff
path: root/depends
AgeCommit message (Collapse)Author
2024-09-06depends: Update libmultiprocess library for CustomMessage function and ↵Ryan Ofsky
ThreadContext bugfix The CustomMessage functions allow simplifying custom IPC type code, and the bugfix is needed to prevent in a crash in a new test which creates and destroys connections in a loop. Upstream PRs are: https://github.com/chaincodelabs/libmultiprocess/pull/105 types: Add Custom{Build,Read,Pass}Message hooks https://github.com/chaincodelabs/libmultiprocess/pull/106 Bugfix: Clean up ThreadContext pointers when Connection is destroyed
2024-09-03depends: build libevent with -D_GNU_SOURCEfanquake
Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following: ```bash /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_': /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function) 456 | if (sig < 0 || sig >= NSIG) ``` From what I can tell the `_GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, and it's not clear what a nice fix is. For now, always use `_GNU_SOURCE` when building libevent in depends.
2024-08-30build: Remove Autotools-based build systemHennadii Stepanov
2024-08-28depends: Fix CMake-generated `libzmq.pc` fileHennadii Stepanov
See https://github.com/zeromq/libzmq/pull/4706.
2024-08-16doc: Update for CMake-based build systemHennadii Stepanov
Co-authored-by: Lőrinc <pap.lorinc@gmail.com> Co-authored-by: pablomartin4btc <pablomartin4btc@gmail.com>
2024-08-16cmake: Add cross-compiling supportHennadii Stepanov
To configure CMake for cross-compiling, use `--toolchain depends/${HOST}/toolchain.cmake` command-line option.
2024-08-16build: Generate `toolchain.cmake` in dependsHennadii Stepanov
2024-08-16depends: Add host-specific `cmake_system_version` variablesHennadii Stepanov
2024-08-16depends: Rename `cmake_system` -> `cmake_system_name`Hennadii Stepanov
2024-08-16Revert "build, qt: Do not install *.prl files"Hennadii Stepanov
This reverts commit 1155978d8f3fcc1cebf357302b933b834f9c9465.
2024-08-16depends: Amend handling flags environment variablesHennadii Stepanov
If any of {C,CXX,CPP,LD}FLAGS is specified it should be assigned to a non-type-specific variable.
2024-08-07Revert "depends: Fetch miniupnpc sources from an alternative website"sunerok
This reverts commit 21b8a14d37c19ce292d5529597e0d52338db48a9.
2024-08-05depends: fix ZMQ CMake getcachesize checkfanquake
Fixes #30587.
2024-07-31depends: Fix `zeromq` build on OpenBSDHennadii Stepanov
2024-07-25depends: remove ENV unsetting for darwinfanquake
Now that we use the native compiler, and have fixed Qt, and these vars are unset it Guix, we can remove the unsetting from our compiler command here. Fixes #21552.
2024-07-25depends: patch explicit -lm usage out of Qt toolsfanquake
2024-07-25depends: cleanup after qrencode buildfanquake
2024-07-25depends: cleanup after miniupnpc buildfanquake
2024-07-25depends: Cleanup postprocess commands after switching to CMakeHennadii Stepanov
2024-07-24Merge bitcoin/bitcoin#30513: depends: Bump `libmultiprocess` for CMake fixesmerge-script
ec0e805d11d6a73c542032fc49a58a1d05b62d24 depends: Bump `libmultiprocess` for CMake fixes (Hennadii Stepanov) Pull request description: This PR amends https://github.com/bitcoin/bitcoin/pull/30490 and bumps the upstream branch, which now includes a required CMake [fix](https://github.com/chaincodelabs/libmultiprocess/pull/103). Addresses https://github.com/bitcoin/bitcoin/pull/30490#issuecomment-2241153244. The CI logs are available in https://github.com/bitcoin/bitcoin/pull/29790 where the recent [push](https://github.com/hebasto/bitcoin/tree/pr29790-0723.2.mp) uses this PR implementation. ACKs for top commit: ryanofsky: Code review ACK ec0e805d11d6a73c542032fc49a58a1d05b62d24 theuni: utACK ec0e805d11d6a73c542032fc49a58a1d05b62d24. Tree-SHA512: e300a27bcab80a63a518719e9af8e10a938294fc07289cadbf4a7744627c10b0e9541a36971d08b65152f3f7d0eb434e427274d9c9d9f0bdd216afd914027a0f
2024-07-23depends: Bump `libmultiprocess` for CMake fixesHennadii Stepanov
2024-07-23depends: switch to building expat with CMakefanquake
Add a patch to set the minimum CMake to 3.16.
2024-07-22Merge bitcoin/bitcoin#30488: depends: Fix CMake-generated `libevent*.pc` filesmerge-script
8c935e625ea75d180144f0526d6a0d5fd58c1f29 depends: Fix CMake-generated `libevent*.pc` files (Hennadii Stepanov) Pull request description: Broken out of #30454. This is a backport of the merged upstream PR: https://github.com/libevent/libevent/pull/1622. Note that after #29835 we might end up dropping pkg-config and using the installed CMake files directly, but that depends on whether or not enough distros actually ship those files. Either way, having fixed up .pc files won't hurt. ACKs for top commit: hebasto: ACK 8c935e625ea75d180144f0526d6a0d5fd58c1f29. fanquake: ACK 8c935e625ea75d180144f0526d6a0d5fd58c1f29 Tree-SHA512: 259c2ad78fb9e90370a7205dc71c40acda1a872f6509435133bc1c4c2c3de57366e80679aa083e13ed85e7966883dc470c0147ee171a2ed0171a18cd5ffc99b3
2024-07-22Merge bitcoin/bitcoin#29723: depends: build zeromq with CMakemerge-script
0388ad0d65b6c9ee802ca641eb01d69fcdd5605d depends: switch zmq to CMake (Cory Fields) fefb3bbe5b538f8faa59de191914ad0c22c3ade6 depends: add zeromq no librt patch (fanquake) a522ef15424110f76172b3c0603fa08f7291c9fc depends: add zeromq cmake minimum patch (fanquake) cbbc229adf4c12ad4bd7edde71425b8ef217edfc depends: add zeromq windows usage patch (fanquake) 2de68d6d388b9a33c57234d3161f6ffc4c2a0246 depends: add zeromq builtin sha1 patch (fanquake) 0c8605253ae887dac316264cb969b752027d277a depends: add zeromq mktemp macos patch (fanquake) Pull request description: This picks up a change, which is a switch to building zeromq with CMake. It includes a number of patches, some which have already been upstreamed (see each patch for details). ACKs for top commit: hebasto: ACK 0388ad0d65b6c9ee802ca641eb01d69fcdd5605d. Tree-SHA512: 5567e432b4e4e0446c41d502bd61810a80b329dea2399b5d9d9f6e79acc450d1c6ba861c8238ba895de98338cfc5dc44ad2bf86ee8c222ecb3fbf47d6eb60da4
2024-07-19depends: bump libmultiprocess for CMake fixesCory Fields
2024-07-19depends: Fix CMake-generated `libevent*.pc` filesHennadii Stepanov
See https://github.com/libevent/libevent/pull/1622.
2024-07-19depends: switch zmq to CMakeCory Fields
The CMake WIN32_WINNT autodetection is broken, and must be set manually. We may want to set is explicitly in any case, but the brokenness should also be fixed upstream. Also patch out depends paths, that would cause non-determinism. Co-authored-by: fanquake <fanquake@gmail.com>
2024-07-19depends: add zeromq no librt patchfanquake
2024-07-19depends: add zeromq cmake minimum patchfanquake
2024-07-19depends: add zeromq windows usage patchfanquake
2024-07-19depends: add zeromq builtin sha1 patchfanquake
2024-07-19depends: add zeromq mktemp macos patchfanquake
2024-07-18depends: use CMake to build FreeTypefanquake
2024-07-12Merge bitcoin/bitcoin#30336: depends: update doc in Qt pwd patchmerge-script
f170fe04ca03fe4021cbff7c5450ce3cc7fda17f depends: update doc in Qt pwd patch (fanquake) Pull request description: Now that upstream has gotten around to fixing this. We don't need any more of the patch, and it likely wont apply to our version of Qt in any case. See: https://github.com/qt/qtbase/commit/3388de698bfb9bbc456c08f03e83bf3e749df35c. ACKs for top commit: theuni: ACK f170fe04ca03fe4021cbff7c5450ce3cc7fda17f Tree-SHA512: f6db8ccad591b1bf144ce71f873f42a115d394c432a95b6b855e3e32751e6331145e0d9676657599b25fd369af8c72c1bd34e192a7a1062c15f152421422a9ed
2024-06-25depends: update doc in Qt pwd patchfanquake
Now that upstream has gotten around to fixing this. We don't need any more of the patch, and it likely wont apply to our version of Qt in any case. See: https://github.com/qt/qtbase/commit/3388de698bfb9bbc456c08f03e83bf3e749df35c.
2024-06-25depends: switch libevent to CMakeCory Fields
2024-06-14depends: swap mmacosx-version-min for mmacos-version-minfanquake
Whilst these remain aliases for each other, the later is preferred, and I assume the former will be removed at some point in the future; see: https://github.com/llvm/llvm-project/pull/95374.
2024-06-10refactor: rename (macho) ld64 to lldfanquake
Change some references to the macho ld64 to lld, which is now what is used.
2024-06-10depends: update install docs for macOS cross compilationfanquake
2024-06-10depends: remove no-longer used llvm_* vars from macOS buildfanquake
2024-06-10depends: no-longer pass -B to clang in macOS cross-compilefanquake
2024-06-10depends: remove native LLVM packagefanquake
2024-06-10depends: remove FORCE_USE_SYSTEM_CLANGfanquake
2024-06-03depends: Update Boost download linkHennadii Stepanov
See: https://github.com/boostorg/boost-tasks/pull/3
2024-05-31Merge bitcoin/bitcoin#30204: depends: consolidate dependency docsmerge-script
a27e1ceb9f9c9239af9b0a151c84a57573ea646a depends: consolidate dependency docs (fanquake) Pull request description: Adds missing `g++` for macOS. This is needed by Qt: ```bash Configuring qt... Creating qmake... gmake[1]: Entering directory '/bitcoin/depends/work/build/arm64-apple-darwin/qt/5.15.14-4bca24c8f89/qtbase/qmake' gmake[1]: g++: No such file or directory gmake[1]: *** [Makefile:250: main.o] Error 127 ``` `xz-utils` was also missing (but generally already installed), and is needed for the `.tar.xz` tarballs. Remove `bsdmainutils`, as this is only needed by the main build system (for tests), and isn't needed to complete a depends build. ACKs for top commit: maflcko: ACK a27e1ceb9f9c9239af9b0a151c84a57573ea646a Tree-SHA512: 720c31d4d4c9b86fda4aace405d528193714dd3e526f38d5b8a83e4b676a433b9c891f01d86d673be9ac848458eda8a89b0981003a42eaa6d97bacc2e914396a
2024-05-31depends: consolidate dependency docsfanquake
Adds missing `g++` for macOS. This is needed by Qt: ```bash Configuring qt... Creating qmake... gmake[1]: Entering directory '/bitcoin/depends/work/build/arm64-apple-darwin/qt/5.15.14-4bca24c8f89/qtbase/qmake' gmake[1]: g++: No such file or directory gmake[1]: *** [Makefile:250: main.o] Error 127 ``` `xz-utils` was also missing (but generally already installed), and is needed for the `.tar.xz` tarballs. Remove bsdmainutils, as this is only needed by the main build system (for tests), and isn't needed to complete a depends build.
2024-05-30depends: fix Qt macOS build with Clang 18fanquake
Patch Qts internal libpng to resolve the failure. I would like to have this patched, so we can continue working on the removal of `FORCE_USE_SYSTEM_CLANG`. Otherwise builds will be broken using the default clang (18) on the current Ubuntu LTS (24.04).
2024-05-30depends: qt 5.15.14fanquake
2024-05-30Merge bitcoin/bitcoin#30049: build, test, doc: Temporarily remove ↵merge-script
Android-related stuff 5deb0b024e14c7c63d405c651d1ca323560a1c21 build, test, doc: Temporarily remove Android-related stuff (Hennadii Stepanov) Pull request description: Previously, our Android builds were geared towards generating APKs, which relied on Qt. However, after migrating to C++20, compiling for Android became unfeasible due to Qt 5.15's compatibility limitations with NDK only up to r25, which includes an outdated embedded libc++ (see https://github.com/bitcoin/bitcoin/issues/29360). All removed stuff will be reinstated after migrating the build system to CMake and upgrading Qt to version 6.x. This PR makes possible a clean migration to the CMake-based build system as it removes code, which is not used at this moment. ACKs for top commit: vasild: ACK 5deb0b024e14c7c63d405c651d1ca323560a1c21 fanquake: ACK 5deb0b024e14c7c63d405c651d1ca323560a1c21 - given none of this is currently tested/wont compile. Can be revisted in future. Tree-SHA512: 3bc2ccfe881e11cc1d78c27acd6f1d86cfba86821ef3bb5eca2e80d978fdfa13659ec82284dcaadc507e2394524dea91d4b8f81d0030c1cef9708df8be76bf07
2024-05-29Merge bitcoin/bitcoin#21778: build: LLD based macOS toolchainmerge-script
e8c25e8a35e333e90514945c592557615641553f guix: drop binutils from macOS env (fanquake) 555fddf646265f7e57a416dc64b171f2c9460e20 guix: use GUIX_LD_WRAPPER_DISABLE_RPATH for all HOSTS (fanquake) 9ec238d0f3c7b97aec83dbeb4c7a6950c8f5125e guix: remove ZERO_AR_DATE export (fanquake) f836f7e9b3e091eb27cdefb624e2a6f2a921fa55 depends: remove cctools & libtapi (fanquake) 4a0536c5d96688729f8c885060c83cb12d72a8c5 build: switch to using lld for macOS builds (fanquake) c6a6b2d6fd4e3a01b095dc98645f819ebabf1931 build: add lld into macOS build environment(s) (fanquake) 437e908ebd1bf9473ef924de5aec57bdc26de6dd depends: swap cctools-x for llvm-x (fanquake) bab287d1bab2c02b5fab3285f2678c15316d31c2 depends: don't use -no_warning_for_no_symbols in macOS qt build (fanquake) Pull request description: This switches us to using a [LLD](https://lld.llvm.org/) based toolchain for macOS builds. ### Benefits * Less complicated macOS toolchain. * No longer beholden to Apple releasing it's [source](https://opensource.apple.com/source/) for [cctools](https://opensource.apple.com/source/cctools/), [ld64](https://opensource.apple.com/source/ld64/) & [libtapi](https://opensource.apple.com/source/tapi/). * No more reliance on third parties to modify those sources for us. i.e [apple-libtapi](https://github.com/tpoechtrager/apple-libtapi), [cctools-port](https://github.com/tpoechtrager/cctools-port) (cctools + ld64). ACKs for top commit: theuni: Tentative ACK e8c25e8a35e333e90514945c592557615641553f. Tree-SHA512: ec73304e8a2cd4c71041f7863d7d2e4e0408787299fb4fa3745076853156e8f64e4742e16f30d65e3a27f1e9c0d19cdf802248366b72a4fcb4ea821f92bb7a00