[
https://issues.apache.org/jira/browse/KUDU-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18096948#comment-18096948
]
ASF subversion and git services commented on KUDU-3788:
-------------------------------------------------------
Commit a8d43ad68f23dc4886543f2c3380abcb1ed27257 in kudu's branch
refs/heads/master from Alexey Serbin
[ https://gitbox.apache.org/repos/asf?p=kudu.git;h=a8d43ad68 ]
[thirdparty] update boost up 1.91.0
This is one of the preliminary updates for KUDU-3788. The motivation
behind this changelist is to use cmake for building the Boost library
instead of the built-in b2 tool. With cmake-based build it's now
possible to stage the pre-built binaries into a custom DESTDIR while
still keeping pre-defined PREFIX which doesn't depend on the location
of the staging directory in local Kudu workspace.
The new version comes with many improvements and updates since 1.84.0.
In Boost 1.91.0, the BOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX macro no
longer exists: platform-specific entropy providers were removed and
random generators were switched to std::random_device as of 1.86.0 [1].
Also, comparing with b2-based builds, there is no need of explicitly
setting the compiler via the --with-toolset flag since cmake is able
to derive the necessary toolset information from CC/CXX variables.
The new code in include/boost/uuid/detail/chacha20.hpp, added in 1.86.0,
triggers a UBSAN warning because the code implicitly assumes unsigned
integer overflow of the "wrapping around" style. To address it,
another Boost-related item was added into ubsan-blacklist.txt.
NOTE: the original source tarball for 1.91.0 published on GitHub [2]
was repackaged to change the directory prefix from boost-1.91.0-1
to boost-1.91.0 to comply with the established convention for the
'thirdparty' directory layout, and then uploaded to the
corresponding S3 bucket as boost-1.91.0-cmake.tar.gz
[1]
https://www.boost.org/doc/libs/latest/libs/uuid/doc/html/uuid.html#changes_changes_in_boost_1_86_0_major_update
[2]
https://github.com/boostorg/boost/releases/download/boost-1.91.0-1/boost-1.91.0-1-cmake.tar.gz
Change-Id: I4c9c2e9260b892c721ec2ba887c61b8aeef35888
Reviewed-on: http://gerrit.cloudera.org:8080/24581
Tested-by: Alexey Serbin <[email protected]>
Reviewed-by: Abhishek Chennaka <[email protected]>
Reviewed-by: Ashwani Raina <[email protected]>
> Allow fethcing and using pre-built 3rd-party components when building Kudu
> --------------------------------------------------------------------------
>
> Key: KUDU-3788
> URL: https://issues.apache.org/jira/browse/KUDU-3788
> Project: Kudu
> Issue Type: Improvement
> Reporter: Alexey Serbin
> Assignee: Alexey Serbin
> Priority: Major
>
> It would be nice to allow to fetch and use pre-built 3rd-party components
> when building Kudu. Each of the 3rd-party components should be checked
> against a presence of pre-built version that matches the machine architecture
> and OS, and the matching rule should compare at least the following
> attributes:
> * Component name (e.g., gflags)
> * Component version (minor, major, patch, or just source hash if no semantic
> versioning is available)
> * The machine's CPU architecture that binaries/libraries are built for (e.g.,
> x86_64, arm64)
> * OS name or flavor/distro name if applicable (e.g., macOS, Ubuntu, Debian,
> RHEL, etc.)
> * OS version: major, minor (e.g., 9.1 for RHEL, 24.04 for Ubuntu, 15.7 for
> macOS, etc.)
> * The toolchain that the bits are built with: compiler name, major and minor
> versions, and the standard C++ library flavor where applicable (e.g.,
> gcc-10.5-libstdc++, clang-15.0)
> * Sanitizer option: TSAN if built with tread sanitizer support, or none if a
> regular build
--
This message was sent by Atlassian Jira
(v8.20.10#820010)