aboutsummaryrefslogtreecommitdiff
path: root/contrib
AgeCommit message (Collapse)Author
2023-11-22Merge bitcoin/bitcoin#28461: build: Windows SSP roundupfanquake
f95af98128f17002bf137a48441167020f3ef9bb guix: default ssp for Windows GCC (fanquake) 95d55b96c2cfd2a0d5a246d4a9eff9d0744ba223 guix: remove ssp workaround from Windows GCC (fanquake) 8f43302a0a1bb79129933e4cc174bf8d8d59ec15 build: remove explicit libssp linking from Windows build (fanquake) Pull request description: I was expecting this to fail to compile somewhere, maybe in the CI, but that doesn't seem to be the case? Seems workable given the SSP related changes in the newer mingw-w64 headers (which are in Guix): > Implement some of the stack protector functions/variables so -lssp is now optional when _FORTIFY_SOURCE or -fstack-protector-strong is used. However I think this would still be broken in some older environments, so we might have to wait for a compiler bump, or similar. The optional -lssp also seems to work when using older headers, which doesn't make sense. Would fix #28104. ACKs for top commit: hebasto: ACK f95af98128f17002bf137a48441167020f3ef9bb, I've verified binaries from `bitcoin-f95af98128f1-win64.zip` on Windows 11 Pro 23H2. TheCharlatan: ACK f95af98128f17002bf137a48441167020f3ef9bb Tree-SHA512: 71169ec513cfe692dfa7741d2bf37b45da05627c0af1cbd50cf8c3c04cc21c4bf88f3284532bddc1e3e648391ec78dbaca5170987a13c21ac204a7bcaf27f349
2023-11-17Merge bitcoin/bitcoin#28902: doc: Simplify guix install doc, after 1.4 releasefanquake
fa552e8a4e4fc61b01eb36387bdf86b27c6893c3 doc: Simplify guix install doc, after 1.4 release (MarcoFalke) Pull request description: Now that 1.4 is out (for a while), remove the recommendation to build a random commit. ACKs for top commit: fanquake: ACK fa552e8a4e4fc61b01eb36387bdf86b27c6893c3 hebasto: ACK fa552e8a4e4fc61b01eb36387bdf86b27c6893c3. Tree-SHA512: f5642df201ff0e2af8a7ae9660a66920ddbb5f522b3e921f6f4aa7c411ced23afa91bdfe43b943ac012228eebbaad3396df505d00aa8f721a4358f03fda9d8e3
2023-11-17doc: Simplify guix install doc, after 1.4 releaseMarcoFalke
2023-11-17Merge bitcoin/bitcoin#28725: test: refactor: use built-in collection types ↵fanquake
for type hints (Python 3.9 / PEP 585) a478c817b2f62b7334b36e331a2e37fe8380c754 test: replace `Callable`/`Iterable` with their `collections.abc` alternative (PEP 585) (stickies-v) 4b9afb18e6b9e16d7b299820f3a1382986a451d4 scripted-diff: use PEP 585 built-in collection types for verify-binary script (Sebastian Falbesoner) d516cf83ed2da86dfefb395cd46f8a894907b88e test: use built-in collection types for type hints (Python 3.9 / PEP 585) (Sebastian Falbesoner) Pull request description: With Python 3.9 / [PEP 585](https://peps.python.org/pep-0585/), [type hinting has become a little less awkward](https://docs.python.org/3.9/whatsnew/3.9.html#type-hinting-generics-in-standard-collections), as for collection types one doesn't need to import the corresponding capitalized types (`Dict`, `List`, `Set`, `Tuple`, ...) anymore, but can use the built-in types directly (see https://peps.python.org/pep-0585/#implementation for the full list). This PR applies the replacement for all Python scripts (i.e. in the contrib and test folders) for the basic types, i.e.: - typing.Dict -> dict - typing.List -> list - typing.Set -> set - typing.Tuple -> tuple For an additional check, I ran mypy 1.6.1 on both master and the PR branch via ``` $ mypy --ignore-missing-imports --explicit-package-bases $(git ls-files "*.py") ``` and verified that the output is identical -- (from the 22 identified problems, most look like false-positives, it's probably worth it to go deeper here and address them in a follow-up though). ACKs for top commit: stickies-v: ACK a478c817b2f62b7334b36e331a2e37fe8380c754 fanquake: ACK a478c817b2f62b7334b36e331a2e37fe8380c754 Tree-SHA512: 6948c905f6abd644d84f09fcb3661d7edb2742e8f2b28560008697d251d77a61a1146ab4b070e65b0d27acede7a5256703da7bf6eb1c7c3a897755478c76c6e8
2023-11-16test: replace `Callable`/`Iterable` with their `collections.abc` alternative ↵stickies-v
(PEP 585)
2023-11-15contrib: use a raw string for a regular expression literal that contains ↵muxator
backslashes in signet/miner Running the miner under python >= 3.12 causes a SyntaxWarning. The problem was already present in previous versions, but it only triggered a DeprecationWarning, which was not shown by default. The change is useful for future-proofing the code base, since future python versions will start to exit with a runtime exception (see the reference given later). Command to see the warning at runtime under python3.11 (DeprecationWarning, needs "-Walways"): $ python3.11 -Walways ./contrib/signet/miner <BASE>/contrib/signet/miner:33: DeprecationWarning: invalid escape sequence '\d' RE_MULTIMINER = re.compile("^(\d+)(-(\d+))?/(\d+)$") 2023-11-15 16:02:49 ERROR Must specify command Command to see the warning at runtime under python3.12 (SyntaxWarning, no modifiers needed): $ python3.12 ./contrib/signet/miner <BASE>/contrib/signet/miner:33: SyntaxWarning: invalid escape sequence '\d' RE_MULTIMINER = re.compile("^(\d+)(-(\d+))?/(\d+)$") 2023-11-15 16:03:00 ERROR Must specify command Reference ( https://docs.python.org/3.8/library/re.html ): Regular expressions use the backslash character ('\') [...]. This collides with Python’s usage of the same character for the same purpose in string literals; [...] Also, please note that any invalid escape sequences in Python’s usage of the backslash in string literals now generate a DeprecationWarning and in the future this will become a SyntaxError. The solution is to use Python’s raw string notation for regular expression patterns;
2023-11-15Merge bitcoin/bitcoin#28859: guix: update signapple (drop macho & altgraph)fanquake
f718a74b124c723548f5d1961ef4e3aa15c33847 guix: remove python-macholib (fanquake) d3cbff16c2734f310ccc532a4ad8eaf8a21b010d guix: update signapple (fanquake) Pull request description: Update to the latest signapple, which includes https://github.com/achow101/signapple/pull/13. Drop python-macholib and python-altgraph. ACKs for top commit: Sjors: ACK f718a74b124c723548f5d1961ef4e3aa15c33847 Tree-SHA512: 199b2108f2f063b6b0fb5354ac79a30b46e848c923ebe7d02f7d7d3f08749817a1f6b4c14d21658fd2f2d68f8be1698e1999edf7e2366b1cae3bf2709a665e30
2023-11-14Merge bitcoin/bitcoin#28783: build: remove `-bind_at_load` usagefanquake
3c61c60b90db1b6a77b3804784430fcd57b447b6 build: Add an old hack to remove bind_at_load from libtool. (Cory Fields) 45257601da4cf38f081d9af2c18cd0be7174bcef build: remove -bind_at_load usage (fanquake) Pull request description: This is deprecated on macOS: ```bash ld: warning: -bind_at_load is deprecated on macOS ``` and likely redundant anyways, given the behaviour of dyld3. Unfortunately libtool is still injecting a `-bind_at_load`, because it's version check is broken: ```bash # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). if test CXX = "$tagname"; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) func_append compile_command " $wl-bind_at_load" func_append finalize_command " $wl-bind_at_load" ;; esac fi ``` so this adds another change to strip them out at the end of configure. Note that anywhere the ld64 warnings are being emitted, we are already not adding this flag to our hardened ldflags, because of `-Wl,-fatal_warnings`. ACKs for top commit: theuni: utACK 3c61c60b90db1b6a77b3804784430fcd57b447b6. hebasto: ACK 3c61c60b90db1b6a77b3804784430fcd57b447b6, tested on macOS Sonoma 14.1.1 (23B81, Apple M1) and Ubuntu 23.10 (cross-compiling for macOS). Also I've verified the actual diff in the `libtool` script. Tree-SHA512: 98e6a095dc2d2409f8ec3b9d462e0db3643d7873d7903a12f8acd664829e7e84e797638556fa42ca8ebc1003f13a38fe9bb8a2a50cecfa991155da818574bf08
2023-11-13script: Enhance validations in utxo_snapshot.shpablomartin4btc
- Ensure that the snapshot height is higher than the pruned block height when the node is pruned. - Validate the correctness of the file path and check if the file already exists. - Make network activity disablement optional for the user. - Ensure the reconsiderblock command is triggered on exit, even in the case of user interruption (Ctrl-C). Co-authored-by: Chris Heyes <22148308+hazeycode@users.noreply.github.com> Co-authored-by: Sjors Provoost <sjors@sprovoost.nl>
2023-11-13guix: default ssp for Windows GCCfanquake
2023-11-13guix: remove ssp workaround from Windows GCCfanquake
2023-11-13guix: remove python-macholibfanquake
2023-11-13guix: update signapplefanquake
Which includes https://github.com/achow101/signapple/pull/13. We can drop macholib (and altgraph) as deps.
2023-11-13guix: update time-machine to 77386bdbfe6b0c649c05ab37f08051d1ab3e5074fanquake
python-altgraph (0.17.4) has been upstreamed. See: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=0c6198319a61d85cd8925af418466dcdccf3daff Also includes: GCC 10.4.0 -> 10.5.0: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=2fbb5398a39bf18e41235891a0740fa0bc4d7a4d. Linux Kernel Headers 6.1.46 -> 6.1.61 LLVM 16 & 17 become available.
2023-11-09build: remove -bind_at_load usagefanquake
This is deprecated on macOS: ```bash ld: warning: -bind_at_load is deprecated on macOS ``` and likely redundant anyways, given the behaviour of dyld3. Unfortunately libtool is still injecting a `-bind_at_load`: ```bash # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). if test CXX = "$tagname"; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) func_append compile_command " $wl-bind_at_load" func_append finalize_command " $wl-bind_at_load" ;; esac fi ``` so this doesn't remove all the warnings, but removes us as a potential source of them. Note that anywhere the ld64 warnings are being emitted, we are already not adding this flag to our hardened ldflags, because of `-Wl,-fatal_warnings`.
2023-11-03guix: switch to 6.1 kernel headers over 5.15fanquake
6.1 is the current longterm release: https://kernel.org/. Note that using an older version of the kernel headers inside Guix, is not a "hack" for compatibility, and is explicitly recommended against by glibc: https://sourceware.org/glibc/wiki/FAQ#What_version_of_the_Linux_kernel_headers_should_be_used.3F. so using the latest version of the longterm headers seems appropriate. The last time we changed this was when we consolidated all builds to 5.15, in #25006.
2023-10-31Merge bitcoin/bitcoin#28759: guix: update signapple to latest masterfanquake
79539fbfbf4d09a8b4861ddcba5b194297bc1b65 guix: update signapple (fanquake) Pull request description: Fixes #28449, and removes the need to boostrap Rust, by avoiding the `python-requests` dependency. Comparing a `--no-substitutes` build of this PR, to master, signapple requires ~1350 _less_ packages to boostrap: Master derivation - https://gist.github.com/fanquake/dbf69a62c9a78b7ae8c183a160e6d58d PR derivation - https://gist.github.com/fanquake/0aa2d8eddaba861ba489ed3d936f727d ACKs for top commit: achow101: ACK 79539fbfbf4d09a8b4861ddcba5b194297bc1b65 Tree-SHA512: 341ddcae27e53c31d114465cb5173573dcc9e1c0874ee160715630f686da6f69255f6080ec0181ffeffc26efbdb545599d667784b1cd17dfa7e3da0998ec9bd6
2023-10-31guix: Zip needs to include all files with time as SOURCE_DATE_EPOCHAndrew Chow
The zip for codesigned MacOS distribution needs to have all files have the same timestamp. These files also need to be included in the zip as zip is not automatically recursive. We use the same pattern for zip as is done for the other zip files produced by guix.
2023-10-31guix: update signapplefanquake
Fixes #28449
2023-10-25scripted-diff: use PEP 585 built-in collection types for verify-binary scriptSebastian Falbesoner
-BEGIN VERIFY SCRIPT- sed -i 's|t\.Dict|dict|g' ./contrib/verify-binaries/verify.py sed -i 's|t\.List|list|g' ./contrib/verify-binaries/verify.py sed -i 's|t\.Tuple|tuple|g' ./contrib/verify-binaries/verify.py -END VERIFY SCRIPT-
2023-10-25test: use built-in collection types for type hints (Python 3.9 / PEP 585)Sebastian Falbesoner
Since Python 3.9, type hinting has become a little less awkward, as for collection types one doesn't need to import the corresponding capitalized types (`Dict`, `List`, `Set`, `Tuple`, ...) anymore, but can use the built-in types directly. [1] [2] This commit applies the replacement for all Python scripts (i.e. in the contrib and test folders) for the basic types: - typing.Dict -> dict - typing.List -> list - typing.Set -> set - typing.Tuple -> tuple [1] https://docs.python.org/3.9/whatsnew/3.9.html#type-hinting-generics-in-standard-collections [2] https://peps.python.org/pep-0585/#implementation for a list of type
2023-10-20scripted-diff: Rename hash_serialized_2 to hash_serialized_3Fabian Jahr
-BEGIN VERIFY SCRIPT- sed -i 's/hash_serialized_2/hash_serialized_3/g' $( git grep -l 'hash_serialized_2' ./src ./contrib ./test ) -END VERIFY SCRIPT-
2023-10-17Merge bitcoin/bitcoin#28628: lint: Include test_utxo_snapshots in ↵fanquake
lint_shell, fix linter errors 348e79f7c6030c9bcbec6bd25e246a779081152a lint: Include test_utxo_snapshots in lint_shell (Fabian Jahr) Pull request description: jamesob excluded `test_utxo_snapshots.sh` from the shell linter with this explanation: "Add the script to the shellcheck exception list since the quoted variables rule needs to be violated in order to get bitcoind to pick up on $EARLY_IBD_FLAGS." However, macrofake pointed out that single lines can be excluded from linting. This fixes one fixable rule violation, excludes the rest of the offending lines from the linter and then removes the exclusion of the `test_utxo_snapshots.sh` file. Also adds documentation. ACKs for top commit: Empact: ACK 348e79f7c6030c9bcbec6bd25e246a779081152a maflcko: lgtm ACK 348e79f7c6030c9bcbec6bd25e246a779081152a pablomartin4btc: tACK 348e79f7c6030c9bcbec6bd25e246a779081152a Tree-SHA512: a904cc1cc3c94488dfbd39ea69a3ef17259f991708a797009001669448fef81eed086ecbce1ec433988d88baef293849698e2e0eb86a969b949cc7ef93af7b4b
2023-10-16Merge bitcoin/bitcoin#28630: depends: update `LD64_VERSION` to 711Andrew Chow
092daa2f9524e371ee6b505519d9b722a2c6361a contrib: add test for macOS linker version to symbol-check (fanquake) cefbf0bc20dfe932240877b3096300c8c241ad61 depends: update LD64_VERSION to 711 (fanquake) Pull request description: I forgot to do this in https://github.com/bitcoin/bitcoin/commit/7d5815293ed8a3dea68b61a78944e410f02b147f. Add a test so it's impossible to forget. ACKs for top commit: TheCharlatan: utACK 092daa2f9524e371ee6b505519d9b722a2c6361a achow101: ACK 092daa2f9524e371ee6b505519d9b722a2c6361a jarolrod: ACK 092daa2f9524e371ee6b505519d9b722a2c6361a hebasto: ACK 092daa2f9524e371ee6b505519d9b722a2c6361a. laanwj: ACK 092daa2f9524e371ee6b505519d9b722a2c6361a Tree-SHA512: 37f0bdfd6607a7760eabe5efe279532ba0c59c0915161e08d5e3b9a0b7705839d62537d6e17406062f6a0a1db5407575da7cd671e9cb916e422e77f5649c6e2b
2023-10-13lint: Include test_utxo_snapshots in lint_shellFabian Jahr
2023-10-13Merge bitcoin/bitcoin#28631: devtools: test_utxo_snapshots.sh sleep cleanup ↵fanquake
and documentation 36a3004a41aea58f50f3348c5de4eb5a23268788 devtools: test_utxo_snapshots.sh sleep cleanup and documentation (Fabian Jahr) Pull request description: There were bare sleep statements in the script where it was unclear why they were needed and I think they could also be replaced by existing helpers. ACKs for top commit: Sjors: utACK 36a3004a41aea58f50f3348c5de4eb5a23268788 pablomartin4btc: utACK https://github.com/bitcoin/bitcoin/commit/36a3004a41aea58f50f3348c5de4eb5a23268788 Tree-SHA512: b6e2fc69cd7babcfa7f413f11304f4d648d6d64b3b526862664ccedb0016ad182b9e886aa4e8c33315e4c18824512e11a4fd6365f9c3c95093967d3ef7687e62
2023-10-10devtools: test_utxo_snapshots.sh sleep cleanup and documentationFabian Jahr
2023-10-10contrib: add test for macOS linker version to symbol-checkfanquake
2023-10-10docs: fix typovuittont60
2023-10-05headerssync: update params for 26.xfanquake
2023-10-05Merge bitcoin/bitcoin#25970: Add headerssync tuning parameters optimization ↵fanquake
script to repo 3d420d8f28f2d351abf8b0afe90848110e15d50c Add instructions for headerssync-params.py to release-process.md (Pieter Wuille) 53d7d35b5899685cd1577156250068e0cab502f4 Update parameters in headerssync.cpp (Pieter Wuille) 7899402cff708319b1c5181242a97557eefe1ae7 Add headerssync-params.py script to the repository (Pieter Wuille) Pull request description: Builds upon #25946, as it incorporates changes based on the selected values there. This adds the headerssync tuning parameters optimization script from https://gist.github.com/sipa/016ae445c132cdf65a2791534dfb7ae1 to the repository, updates the parameters based on its output, and adds release process instructions for doing this update in the future. A few considerations: * It would be a bit cleaner to have these parameters be part of `CChainParams`, but due to the nature of the approach, it really only applies to chains with unforgeable proof-of-work, which we really can only reasonably expect from mainnet, so I think it's fine to keep them local to `headerssync.cpp`. Keeping them as compile-time evaluatable constants also has a (likely negligible) performance impact (avoiding runtime modulo operations). * If we want to make sure the chainparams and headerssync params don't go out of date, it could be possible to run the script in CI, and and possibly even have the parameters be generated automatically at build time. I think that's overkill for how unfrequently these need to change, and running the script has non-trivial cost (~minutes in the normal python interpreter). * A viable alternative is just leaving this out-of-repo entirely, and just do ad-hoc updating from time to time. Having it in the repo and release notes does make sure it's not forgotten, though adds a cost to contributors/maintainers who follow the process. ACKs for top commit: ajtowns: reACK 3d420d8f28f2d351abf8b0afe90848110e15d50c Tree-SHA512: 03188301c20423c72c1cbd008ccce89b93e2898edcbeecc561b2928a0d64e9a829ab0744dc3b017c23de8b02f3c107ae31e694302d3931f4dc3540e184de1963
2023-10-03Merge bitcoin/bitcoin#28507: contrib/bash-completions: use package naming ↵fanquake
conventions 360b917674e63c1e95119040463b3f50976bf331 contrib/bash-completions: use package naming conventions (Erik Arvstedt) Pull request description: #### Copy of commit msg This naming scheme supports auto-detection and on-demand loading of completions. See https://github.com/scop/bash-completion/blob/ba109693ee2284f6a82f8f0e1563baf071252df9/README.md#faq, section "Where should I put it to be sure that interactive bash shells will find it and source it", keyword `foo.bash`. Previously, distro package maintainers had to rename these files manually. ACKs for top commit: willcl-ark: ACK 360b917674e63c1e95119040463b3f50976bf331 Tree-SHA512: 6dd1f62309e877402fac2f7aec785d3053a1fd3fdeae38abc961c3f61269eb664a2489b6fa8294bd706d8ac387c7af3ac66cd7a852810f69371fa8ae991afacb
2023-09-30contrib: add script to demo/test assumeutxoJames O'Beirne
Add the script to the shellcheck exception list since the quoted variables rule needs to be violated in order to get bitcoind to pick up on $CHAIN_HACK_FLAGS.
2023-09-28Add headerssync-params.py script to the repositoryPieter Wuille
2023-09-19contrib/bash-completions: use package naming conventionsErik Arvstedt
This naming scheme supports auto-detection and on-demand loading of completions. See https://github.com/scop/bash-completion/blob/ba109693ee2284f6a82f8f0e1563baf071252df9/README.md#faq, section "Where should I put it to be sure that interactive bash shells will find it and source it". Previously, distro package maintainers had to rename these files manually.
2023-09-15build: remove dmg dependenciesfanquake
2023-09-15macdeploy: remove DMG generation from deploy scriptfanquake
2023-09-15build: produce a .zip for macOS distributionHennadii Stepanov
Instead of a .dmg. Co-authored-by: fanquake <fanquake@gmail.com>
2023-09-15build: add -zip option to macdeployqtplusfanquake
This zips the app bundle in /dist.
2023-09-07doc: s/--no-substitute/--no-substitutes in guix/INSTALLfanquake
2023-08-30guix: remove GCC 10 workaround from NSISfanquake
Fixed upstream in 3.06, see https://github.com/kichik/nsis/commit/229b6136c41ba5caba25936f4927476d20aa283f. https://sourceforge.net/p/nsis/bugs/1248/
2023-08-27guix: use clang-toolchain-15 for macOS compilationfanquake
2023-08-24security: restrict abis in bitcoind.serviceCharlie
It's recommended to restrict the possible application binary interfaces that can be used when setting `MemoryDenyWriteExecute=true` to ensure it cannot be circumvented.
2023-08-24guix: drop Windows broken-longjmp.patchfanquake
This is no-longer required, now that we are building using GCC 10.4.0.
2023-08-24guix: drop NSIS patch now that we use 3.09fanquake
See https://sourceforge.net/p/nsis/bugs/1283/.
2023-08-24guix: use cross-* keyword argumentsfanquake
Using the new time-machine results in warnings about consistently using keyword arguments: ```bash guix environment: warning: 'cross-kernel-headers' must be used with keyword arguments guix environment: warning: 'cross-libc' must be used with keyword arguments ```
2023-08-24guix: update time-machine to 160f78a4d92205df986ed9efcce7d3aac188cb24fanquake
In our time-machine environment this changes the following: GCC 10.3.0 -> 10.4.0 Binutils 2.37 -> 2.38 Linux Libre Headers 5.15.37 -> 5.15.127 git 2.36.0 -> 2.41.0 mingw-w64 8.0.0 -> 11.0.1 NSIS 3.05 -> 3.09 xorriso 1.5.2 -> 1.5.6.pl02 Python 3.9 -> 3.10.7 Python-asn1crypto 1.4.0 -> 1.5.1 GCC 12.3.0 becomes available. LLVM 15.0.7 becomes available.
2023-08-24guix: update python-oscrypto to 1.3.0fanquake
This is required for bumping the time-machine, for compatibility with OpenSSL: oscrypto: openssl backend, 1.2.1, /tmp/guix-build-python-oscrypto-1.2.1.drv-0/source/oscrypto Traceback (most recent call last): File "/tmp/guix-build-python-oscrypto-1.2.1.drv-0/source/oscrypto/_openssl/_libcrypto_ctypes.py", line 304, in <module> libcrypto.EVP_PKEY_size.argtypes = [ File "/gnu/store/9dkl9fnidcdpw19ncw5pk0p7dljx7ijb-python-3.10.7/lib/python3.10/ctypes/__init__.py", line 387, in __getattr__ func = self.__getitem__(name) File "/gnu/store/9dkl9fnidcdpw19ncw5pk0p7dljx7ijb-python-3.10.7/lib/python3.10/ctypes/__init__.py", line 392, in __getitem__ func = self._FuncPtr((name_or_ordinal, self)) AttributeError: /gnu/store/2hr7w64zhr6jjznidyc2xi40d5ynhj9c-openssl-3.0.8/lib/libcrypto.so.3: undefined symbol: EVP_PKEY_size. Did you mean: 'EVP_PKEY_free'?
2023-08-24guix: backport glibc patch to fix powerpc buildfanquake
Do this prior to bumping the time-machine, to avoid the following build failure: ```bash /tmp/guix-build-glibc-cross-powerpc64le-linux-gnu-2.27.drv-0/build/string/memset-power8.o.dt -MT /tmp/guix-build-glibc-cross-powerpc64le-linux-gnu-2.27.drv-0/build/string/memset-power8.o ../sysdeps/powerpc/powerpc64/power4/memcmp.S: Assembler messages: ../sysdeps/powerpc/powerpc64/power4/memcmp.S:87: Error: unrecognized opcode: `ldbrx' ../sysdeps/powerpc/powerpc64/power4/memcmp.S:88: Error: unrecognized opcode: `ldbrx' ../sysdeps/powerpc/powerpc64/power4/memcmp.S:112: Error: unrecognized opcode: `ldbrx' ``` See: https://sourceware.org/git/?p=glibc.git;a=commit;h=9250e6610fdb0f3a6f238d2813e319a41fb7a810. https://github.com/gcc-mirror/gcc/commit/e154242724b084380e3221df7c08fcdbd8460674.
2023-08-22guix: consolidate Linux GCC packagefanquake
Refactor our Linux GCC to be a single 'package', and avoid the use of `package-with-extra-configure-variable`.