Open
Conversation
[Upstream] build: Use Link Time Optimization for Qt code on Linux
[Upstream] depends: expat 2.4.8 & fix building with -flto
[Upstream] depends: default to using GCC tool wrappers for LTO (with GCC)
also adjust configure options to fix compile
depends: openssl 1.0.2u
depends: Fix file permission for gen_id
- Clearer and more accurate prose
- Pin `guix pull' to commit rather than branch
- Just use `use-module' instead of `define-module'
- Use `bash-minimal' instead of `bash'
- Remove unneeded `tcsh' from manifest
- Explicitly use `python-3.7'
- Add comments about how {native,cross}-toolchains are produced and
why
[Upstream] contrib: Enable building in Guix containers
- store_path() previously only worked for cross compilation packages, we remove this assumption here - Add CROSS_GCC_LIB variable which points to where gcc libs/headers are located - Add gcc libs/headers to our CROSS_*_PATH environment variables - Check that all directories in CROSS_*_PATH are sane
This hack is no longer needed after fixing our cross-compilation search paths.
Wait a minute, doc. Are you telling me you built a time machine... Out of a functional package manager?
[Upstream] guix: Remove ssp spec file hack
[Upstream] guix: Pin Guix using guix time-machine
Previously, Guix would produce a gcc which did not know to use the SSP function from glibc, and required a gcc make flag for it to do so, in my attempt to fix it upstream I realized that this is no longer the case. This can be verified by performing a Guix build and doing readelf -s ... | grep __stack_chk to check that symbols are coming from glibc, and doing readelf -d ... | grep NEEDED | grep ssp to see that libssp.so is not being depended on
[Upstream] build: Skip i686 build by default in guix and gitian
[Upstream] guix: Remove now-unnecessary gcc make flag
- Add "--no-insert-timestamp" LDFLAG for x86_64-w64-mingw32 builds "The option --no-insert-timestamp can be used to insert a zero value for the timestamp, this ensuring that binaries produced from identical sources will compare identically." - ld(1) - Set "SetDateSave off" in NSIS script From https://nsis.sourceforge.io/Docs/Chapter4.html#flags "This command sets the file date/time saving flag which is used by the File command to determine whether or not to save the last write date and time of the file, so that it can be restored on installation. Valid flags are 'on' and 'off'. 'on' is the default." - Add commented out NSIS options for reproducibility debugging in NSIS script - Make ZIPs deterministic by reseting file modification times to SOURCE_DATE_EPOCH using touch(1) (Reference: https://reproducible-builds.org/docs/archives/)
We're using mingw-w64 6.0.0, which is paired with gcc-8 in most distros.
This bump will includes a couple of commits which improve the reproducibility of the mingw-w64 toolchain. Most of which came from debian. They will be upstreamed as upstream Guix release timeline allows.
[Upstream] Trivial: tiny c++11 refactors
This addresses issues like the one in bitcoin/bitcoin#12467, where some of our compiler flags end up being dropped during the subconfigure of Univalue. Specifically, we're still using the compiler-default c++ version rather than forcing c++17. We can drop the need subconfigure completely in favor of a tighter build integration, where the sources are listed separately from the build recipes, so that they may be included directly by upstream projects. This is similar to the way leveldb build integration works in Core. Core benefits of this approach include: - Better caching (for ex. ccache and autoconf) - No need for a slow subconfigure - Faster autoconf - No more missing compile flags - Compile only the objects needed There are no benefits to Univalue itself that I can think of. These changes should be a no-op there, and to downstreams as well until they take advantage of the new sources.mk. This also removes the option to use an external univalue to avoid similar ABI issues with mystery binaries.
Remove all the files we don't use. This should not change behavior, or anything at all, as none of these files are currently used in our build system.
-BEGIN VERIFY SCRIPT- sed -i 's|\<get_int64\>|getInt<int64_t>|g' $(git grep -l get_int ':(exclude)src/univalue') sed -i 's|\<get_int\>|getInt<int>|g' $(git grep -l get_int ':(exclude)src/univalue') -END VERIFY SCRIPT-
-BEGIN VERIFY SCRIPT- git grep -l "push_back(Pair" | xargs sed -i "s/push_back(Pair(\(.*\)));/pushKV(\1);/g" -END VERIFY SCRIPT-
(Set CLIENT_VERSION_IS_RELEASE = false)
This removes a "race" between Interrupt() and Run(), though it should not effect any of our supported platforms.
[Upstream] Improve shutdown process
This removes a "race" between Interrupt() and Run(), though it should not effect any of our supported platforms.
[Upstream] Access WorkQueue::running only within the cs lock
Author
|
Error fetch in Listtransaction |
dfdfc5d to
3b4cfc7
Compare
866d583 to
cc9470c
Compare
This prevents a potential race condition if control flow ends up in `ShutdownHTTPServer` before the thread gets to `queue->Run()`, deleting the work queue while workers are still going to use it. Meant to fix bitcoin/bitcoin#12362.
This function, which waits for all threads to exit, is no longer needed now that threads are joined instead.
The HTTP worker thread counter, as well as the RAII object that was used to maintain it, is unused now, so can be removed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.