gentoo-ebuilds/dev-debug/cgdb/cgdb-0.8.0.ebuild
Sam James 36c44443c4
dev-debug/cgdb: fix modern C issue in configure
No need for a revbump here as it failed to compile if the check failed, not
misdetecting anything.

Closes: https://bugs.gentoo.org/830222
Signed-off-by: Sam James <sam@gentoo.org>
2024-07-17 05:16:30 +01:00

73 lines
1.5 KiB
Bash

# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/cgdb/cgdb.git"
else
SRC_URI="https://github.com/cgdb/cgdb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm ppc ppc64 x86 ~amd64-linux ~x86-linux"
fi
inherit autotools multilib-minimal
DESCRIPTION="A curses front-end for GDB, the GNU debugger"
HOMEPAGE="https://cgdb.github.io/"
LICENSE="GPL-2"
SLOT="0"
IUSE="test"
# Tests are broken, need additional research to figure out the cause
# Bug: https://bugs.gentoo.org/831899
RESTRICT="test"
DEPEND="
sys-libs/ncurses:=
sys-libs/readline:=
"
BDEPEND="
sys-devel/flex
test? (
dev-util/dejagnu
app-misc/dtach
)
"
RDEPEND="
${DEPEND}
dev-debug/gdb
"
DOCS=( AUTHORS ChangeLog FAQ INSTALL NEWS README.md )
PATCHES=(
"${FILESDIR}"/${P}-ar.patch
"${FILESDIR}"/${PN}-0.8.0-configure-c99.patch
)
src_prepare() {
default
AT_M4DIR="config" eautoreconf
}
multilib_src_configure() {
unset LEX
ECONF_SOURCE="${S}" econf
}
multilib_src_test() {
# Tests need an interactive shell, #654986
# real-time output of the log ;-)
touch "${T}/dtach-test.log" || die
tail -f "${T}/dtach-test.log" &
local tail_pid=${!}
nonfatal dtach -N "${T}/dtach.sock" \
bash -c 'emake check &> "${T}"/dtach-test.log; echo ${?} > "${T}"/dtach-test.out'
kill "${tail_pid}"
[[ -f ${T}/dtach-test.out ]] || die "Unable to run tests"
[[ $(<"${T}"/dtach-test.out) == 0 ]] || die "Tests failed"
}