diff options
Diffstat (limited to 'dev-util/cunit')
-rw-r--r-- | dev-util/cunit/cunit-2.1_p3-r1.ebuild (renamed from dev-util/cunit/cunit-2.1_p3.ebuild) | 25 | ||||
-rw-r--r-- | dev-util/cunit/files/cunit-2.1_p3-ncurses-format-security.patch | 51 |
2 files changed, 70 insertions, 6 deletions
diff --git a/dev-util/cunit/cunit-2.1_p3.ebuild b/dev-util/cunit/cunit-2.1_p3-r1.ebuild index b863c77021aa..3cb045955b26 100644 --- a/dev-util/cunit/cunit-2.1_p3.ebuild +++ b/dev-util/cunit/cunit-2.1_p3-r1.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 inherit autotools flag-o-matic multilib-minimal toolchain-funcs @@ -11,12 +11,13 @@ MY_P="${MY_PN}-${MY_PV}" DESCRIPTION="C Unit Test Framework" HOMEPAGE="http://cunit.sourceforge.net" -SRC_URI="mirror://sourceforge/cunit/${MY_P}.tar.bz2" +SRC_URI="https://downloads.sourceforge.net/cunit/${MY_P}.tar.bz2" LICENSE="LGPL-2" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -IUSE="ncurses static-libs" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="ncurses static-libs test" +RESTRICT="!test? ( test )" RDEPEND="ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )" DEPEND="${RDEPEND}" @@ -24,6 +25,10 @@ BDEPEND="virtual/pkgconfig" S="${WORKDIR}/${MY_P}" +PATCHES=( + "${FILESDIR}"/${PN}-2.1_p3-ncurses-format-security.patch +) + src_prepare() { default @@ -48,7 +53,15 @@ multilib_src_configure() { econf \ $(use_enable static-libs static) \ --disable-debug \ - $(use_enable ncurses curses) + $(use_enable ncurses curses) \ + $(use_enable test) +} + +multilib_src_test() { + default + + cd CUnit/Sources/Test || die + ./test_cunit || die } multilib_src_install_all() { diff --git a/dev-util/cunit/files/cunit-2.1_p3-ncurses-format-security.patch b/dev-util/cunit/files/cunit-2.1_p3-ncurses-format-security.patch new file mode 100644 index 000000000000..5403d9dc7dbb --- /dev/null +++ b/dev-util/cunit/files/cunit-2.1_p3-ncurses-format-security.patch @@ -0,0 +1,51 @@ +https://sources.debian.org/patches/cunit/2.1-3-dfsg-2.4/fix-string-format-errors-with-recent-ncu.patch/ + +From: Sven Joachim <svenjoac@gmx.de> +Date: Wed, 13 Oct 2021 19:23:18 +0200 +X-Dgit-Generated: 2.1-3-dfsg-3 74c029a14c5195c79122d44c3777a169d8cc535f +Subject: Fix string format errors with recent ncurses + + +--- a/CUnit/Sources/Curses/Curses.c ++++ b/CUnit/Sources/Curses/Curses.c +@@ -952,11 +952,11 @@ static void show_suite_level_help(CU_pSu + + snprintf(szTemp, STRING_LENGTH, _("Commands: R - run all tests in suite %s"), + pSuite->pName); +- mvwprintw(details_pad.pPad, 0, 0, szTemp); ++ mvwprintw(details_pad.pPad, 0, 0, "%s", szTemp); + mvwprintw(details_pad.pPad, 1, 0, _(" S - Select and run a test")); + snprintf(szTemp, STRING_LENGTH, _(" L - List all tests registered in suite %s"), + pSuite->pName); +- mvwprintw(details_pad.pPad, 2, 0, szTemp); ++ mvwprintw(details_pad.pPad, 2, 0, "%s", szTemp); + mvwprintw(details_pad.pPad, 3, 0, _(" A - Activate or deactivate a test (toggle)")); + mvwprintw(details_pad.pPad, 4, 0, _(" F - Show failures from last test run")); + mvwprintw(details_pad.pPad, 5, 0, _(" M - Move up to main menu")); +@@ -1068,14 +1068,14 @@ static void list_tests(CU_pSuite pSuite) + } + + snprintf(szTemp, STRING_LENGTH, "%s: %s", _("Suite"), pSuite->pName); +- mvwprintw(details_pad.pPad, 0, 0, szTemp); ++ mvwprintw(details_pad.pPad, 0, 0, "%s", szTemp); + + snprintf(szTemp, STRING_LENGTH, + "%*s %-*s%*s", + width[0], _("#"), + width[1], _("Test Name"), + width[2], _("Active?")); +- mvwprintw(details_pad.pPad, 1, 0, szTemp); ++ mvwprintw(details_pad.pPad, 1, 0, "%s", szTemp); + + for (i = 0, pCurTest = pSuite->pTest ; + NULL != pCurTest ; +@@ -1158,7 +1158,7 @@ static STATUS curses_set_options_run(voi + + snprintf(szTemp, STRING_LENGTH, _(" 1 - Inactive suites/tests treated as runtime failures %s"), + (CU_FALSE != CU_get_fail_on_inactive()) ? _("Yes") : _("No ")); +- mvwprintw(details_pad.pPad, 2, 0, szTemp); ++ mvwprintw(details_pad.pPad, 2, 0, "%s", szTemp); + refresh_details_window(); + read_input_string(_("Enter number of option to change : "), szTemp, STRING_LENGTH); + option_num = atol(szTemp); + |