summaryrefslogtreecommitdiff
blob: a31a6e8614d19748acab3a33cda1a00fd8fad181 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

LUA_COMPAT=( luajit )
# Documentation says this might be needed but since the unmigrated ebuilds
# did not enforce it, nor does this one.
#LUA_REQ_USE="-lua52compat"

inherit bash-completion-r1 cmake lua-single

DESCRIPTION="A system exploration and troubleshooting tool"
HOMEPAGE="https://sysdig.com/"
SRC_URI="https://github.com/draios/sysdig/archive/${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+modules test"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RESTRICT="!test? ( test )"

RDEPEND="${LUA_DEPS}
	app-misc/jq:0=
	dev-cpp/tbb:0=
	>=dev-libs/jsoncpp-0.6_pre:0=
	dev-libs/libb64:0=
	dev-libs/protobuf:0=
	net-dns/c-ares:0=
	net-libs/grpc:0=
	sys-libs/ncurses:0=
	sys-libs/zlib:0=
	dev-libs/openssl:0=
	net-misc/curl:0="
DEPEND="${RDEPEND}
	virtual/os-headers
	test? ( dev-cpp/gtest )"
PDEPEND="
	modules? ( >=dev-util/sysdig-kmod-${PV} )"

PATCHES=(
	"${FILESDIR}"/${PN}-0.27.1-grpc-absl-sync.patch
	"${FILESDIR}"/${PN}-0.27.1-luajit-2.1.patch
)

src_prepare() {
	sed -i -e 's:-ggdb::' CMakeLists.txt || die

	cmake_src_prepare
}

src_configure() {
	local mycmakeargs=(
		-DCREATE_TEST_TARGETS=$(usex test)

		# done in dev-util/sysdig-kmod
		-DBUILD_DRIVER=OFF
		# libscap examples are not installed or really useful
		-DBUILD_LIBSCAP_EXAMPLES=OFF

		# unbundle the deps
		-DUSE_BUNDLED_DEPS=OFF

		# explicitly set version
		-DSYSDIG_VERSION=${PV}
	)

	cmake_src_configure
}

src_install() {
	cmake_src_install

	# remove sources
	rm -r "${ED}"/usr/src || die

	# move bashcomp to the proper location
	dobashcomp "${ED}"/usr/etc/bash_completion.d/sysdig || die
	rm -r "${ED}"/usr/etc || die
}