dev-libs/caf - 0.18.5 (vklimovs)

Search

Install

Install this version:

emerge -a =dev-libs/caf-0.18.5

If this version is masked, you can unmask it using the autounmask tool or standard emerge options:

autounmask =dev-libs/caf-0.18.5

Or alternatively:

emerge --autounmask-write -a =dev-libs/caf-0.18.5

Package Information

Description:
The C++ Actor Framework (CAF)
Homepage:
https://www.actor-framework.org/
License:
BSD

Ebuild Details

Version EAPI Keywords Slot
0.18.5 8 ~amd64 ~x86 0/0.18.5
View Raw Ebuild
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit cmake-multilib

DESCRIPTION="The C++ Actor Framework (CAF)"
HOMEPAGE="https://www.actor-framework.org/"
SRC_URI="https://github.com/actor-framework/actor-framework/archive/${PV}.tar.gz
	-> ${P}.tar.gz"
S="${WORKDIR}/actor-framework-${PV}"

LICENSE="BSD"
SLOT="0/0.18.5"
KEYWORDS="~amd64 ~x86"
IUSE="debug doc examples +openssl static-libs test"
RESTRICT="!test? ( test )"

RDEPEND="
	openssl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP},static-libs?] )
	examples? (
		net-misc/curl:=
		dev-libs/protobuf:= )"

DEPEND="${RDEPEND}"

BDEPEND="doc? (
	app-text/doxygen[dot]
	dev-python/sphinx
	dev-python/sphinx-rtd-theme )"

PATCHES=(
	"${FILESDIR}"/${P}-use-stable-version.patch
	"${FILESDIR}"/${P}-cstdint.patch
)

DOCS=( CHANGELOG.md README.md )

multilib_src_configure() {
	local mycmakeargs=(
		-DBUILD_SHARED_LIBS=$(usex static-libs no yes)
		-DCAF_ENABLE_ACTOR_PROFILER=$(usex debug)
		-DCAF_ENABLE_OPENSSL_MODULE=$(usex openssl)
		-DCAF_ENABLE_RUNTIME_CHECKS=$(usex debug)
		-DCAF_ENABLE_UTILITY_TARGETS=$(usex debug)
		-DCAF_LOG_LEVEL=$(usex debug DEBUG QUIET)
		-DLIBRARY_OUTPUT_PATH="$(get_libdir)"
	)

	if multilib_is_native_abi; then
		mycmakeargs+=(
			-DCAF_ENABLE_CURL_EXAMPLES=$(usex examples)
			-DCAF_ENABLE_EXAMPLES=$(usex examples)
			-DCAF_ENABLE_PROTOBUF_EXAMPLES=$(usex examples)
			-DCAF_ENABLE_TESTING=$(usex test)
		)
	else
		mycmakeargs+=(
			-DCAF_ENABLE_CURL_EXAMPLES=no
			-DCAF_ENABLE_EXAMPLES=no
			-DCAF_ENABLE_PROTOBUF_EXAMPLES=no
			-DCAF_ENABLE_TESTING=no
		)
	fi

	cmake_src_configure
}

multilib_src_compile() {
	cmake_src_compile

	if multilib_is_native_abi && use doc; then
		doxygen "${S}"/Doxyfile || die "doxygen failed"
		sphinx-build "${S}"/manual "${S}"/manual/html || die "sphinx failed"
	fi
}

multilib_src_test() {
	multilib_is_native_abi && cmake_src_test
}

multilib_src_install() {
	cmake_src_install

	if multilib_is_native_abi && use doc; then
		docinto api
		dodoc -r html/*
		docinto manual
		dodoc -r "${S}"/manual/html/*
	fi
}

USE Flags

Manage flags for this package: euse -i <flag> -p dev-libs/caf | euse -E <flag> -p dev-libs/caf | euse -D <flag> -p dev-libs/caf

Global/Standard Flags

doc
openssl
Default: Enabled (+)

Inherited Eclasses

Dependencies

DEPEND

	openssl? ( dev-libs/openssl:0=[,static-libs?] )
	examples? (
		net-misc/curl:=
		dev-libs/protobuf:= )

RDEPEND

	openssl? ( dev-libs/openssl:0=[,static-libs?] )
	examples? (
		net-misc/curl:=
		dev-libs/protobuf:= )

BDEPEND

doc? (
	app-text/doxygen[dot]
	dev-python/sphinx
	dev-python/sphinx-rtd-theme )

Manifest for 0.18.5

Type File Size Source URLs
DIST caf-0.18.5.tar.gz 2827181 bytes https://github.com/actor-framework/actor-framework/archive/0.18.5.tar.gz