diff options
author | Sam James <sam@gentoo.org> | 2023-04-14 03:17:17 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-04-14 04:22:56 +0100 |
commit | 58df6a8affdddcd725c184b7e9387ae1dd58a8f4 (patch) | |
tree | c3650b704ed117bfcd117992b767e7bccf4db88d /dev-cpp/folly/folly-2023.04.10.00.ebuild | |
parent | app-admin/awscli: Bump to 1.27.113 (diff) | |
download | gentoo-58df6a8affdddcd725c184b7e9387ae1dd58a8f4.tar.gz gentoo-58df6a8affdddcd725c184b7e9387ae1dd58a8f4.tar.bz2 gentoo-58df6a8affdddcd725c184b7e9387ae1dd58a8f4.zip |
dev-cpp/folly: add 2023.04.10.00
Closes: https://bugs.gentoo.org/886469
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-cpp/folly/folly-2023.04.10.00.ebuild')
-rw-r--r-- | dev-cpp/folly/folly-2023.04.10.00.ebuild | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/dev-cpp/folly/folly-2023.04.10.00.ebuild b/dev-cpp/folly/folly-2023.04.10.00.ebuild new file mode 100644 index 000000000000..77a442688377 --- /dev/null +++ b/dev-cpp/folly/folly-2023.04.10.00.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# These must be bumped together: +# dev-cpp/edencommon +# dev-cpp/folly +# dev-util/watchman + +inherit cmake toolchain-funcs + +DESCRIPTION="An open-source C++ library developed and used at Facebook" +HOMEPAGE="https://github.com/facebook/folly" +SRC_URI="https://github.com/facebook/folly/releases/download/v${PV}/${PN}-v${PV}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~ppc64" +IUSE="llvm-libunwind test" +RESTRICT="!test? ( test )" + +RDEPEND="app-arch/bzip2 + app-arch/lz4:= + app-arch/snappy:= + app-arch/xz-utils + app-arch/zstd:= + dev-cpp/gflags:= + dev-cpp/glog:=[gflags] + dev-libs/boost:=[context] + dev-libs/double-conversion:= + dev-libs/libaio + dev-libs/libevent:= + dev-libs/libfmt:= + dev-libs/libsodium:= + dev-libs/openssl:= + >=sys-libs/liburing-2.3:= + sys-libs/zlib + llvm-libunwind? ( sys-libs/llvm-libunwind:= ) + !llvm-libunwind? ( sys-libs/libunwind:= )" +# libiberty is linked statically +DEPEND="${RDEPEND} + sys-libs/binutils-libs + test? ( dev-cpp/gtest )" +BDEPEND="test? ( sys-devel/clang )" + +PATCHES=( + "${FILESDIR}"/${PN}-2022.07.04.00-musl-fix.patch +) + +pkg_setup() { + [[ ${BUILD_TYPE} == binary ]] && return + + if use test && ! tc-is-clang ; then + # Always build w/ Clang for now to avoid gcc ICE + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106230 + #if [[ $(gcc-major-version) -eq 12 ]] ; then + # return + #fi + + ## Only older GCC 11 is broken + #if [[ $(gcc-major-version) -eq 11 && $(gcc-minor-version) -ge 3 && $(gcc-micro-version) -ge 1 ]] ; then + # return + #fi + + ewarn "Forcing build with Clang due to GCC bug (because tests are enabled)" + #ewarn "(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104008)" + + #export CC=${CHOST}-clang + #export CXX=${CHOST}-clang++ + fi +} + +src_unpack() { + # Workaround for bug #889420 + mkdir -p "${S}" || die + cd "${S}" || die + default +} + +src_configure() { + # TODO: liburing could in theory be optional but fails to link + local mycmakeargs=( + -DLIB_INSTALL_DIR="$(get_libdir)" + + -DBUILD_TESTS=$(usex test) + + # https://github.com/gentoo/gentoo/pull/29393 + -DCMAKE_LIBRARY_ARCHITECTURE=$(usex amd64 x86_64 ${ARCH}) + ) + + cmake_src_configure +} + +src_test() { + local myctestargs=( + # - timeseries_histogram_test.TimeseriesHistogram.Percentile|HHWheelTimerTest + # Long-standing known test failure + # TODO: report upstream + # - HHWheelTimerTest.HHWheelTimerTest.CancelTimeout + # Timeouts are fragile + # - concurrent_hash_map_test.* + # TODO: All SIGSEGV, report upstream! + # - ssl_errors_test.SSLErrorsTest.TestMessage + # Network...? + -E "(timeseries_histogram_test.TimeseriesHistogram.Percentile|HHWheelTimerTest.HHWheelTimerTest.CancelTimeout|concurrent_hash_map_test.*|ssl_errors_test.SSLErrorsTest.TestMessage)" + ) + + cmake_src_test +} |