diff --git a/app-text/pep/files/pep-2.8-gcc15.patch b/app-text/pep/files/pep-2.8-gcc15.patch new file mode 100644 index 0000000000000..2375b694e97e4 --- /dev/null +++ b/app-text/pep/files/pep-2.8-gcc15.patch @@ -0,0 +1,13 @@ +Fix build with GCC 15 +https://bugs.gentoo.org/944760 + +--- a/plain.src ++++ b/plain.src +@@ -112,7 +112,6 @@ static int NSpace = 0; /* No. of spaces not flushed. */ + + /*---( forward )------------------------------------------------------------*/ + +-char *getenv(); + + + /*---( housekeeping )-------------------------------------------------------*/ diff --git a/app-text/pep/pep-2.8-r3.ebuild b/app-text/pep/pep-2.8-r3.ebuild new file mode 100644 index 0000000000000..5967f1157447b --- /dev/null +++ b/app-text/pep/pep-2.8-r3.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs flag-o-matic + +DESCRIPTION="General purpose filter and file cleaning program" +HOMEPAGE="https://hannemyr.com/enjoy/pep.html" +SRC_URI="https://hannemyr.com/enjoy/${PN}${PV//./}.zip -> ${P}.zip" +S="${WORKDIR}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~mips ~ppc ~x86" + +BDEPEND="app-arch/unzip" + +# pep does not come with autoconf so here's a patch to configure +# Makefile with the correct path +PATCHES=( + "${FILESDIR}"/${P}-gentoo.patch + "${FILESDIR}"/${P}-include.patch + "${FILESDIR}"/${P}-Fix-Wimplicit-int.patch + "${FILESDIR}"/${P}-gcc15.patch +) + +src_prepare() { + default + + # Darwin lacks stricmp and DIRCHAR + if [[ ${CHOST} == *-darwin* ]] ; then + sed -i -e '/^OBJS/s/^\(.*\)$/\1 bdmg.o/' Makefile || die + append-flags "-Dunix" -DSTRICMP + fi +} + +src_compile() { + # make man page too + emake Doc/pep.1 + emake CC="$(tc-getCC)" +} + +src_install() { + dobin pep + doman Doc/pep.1 + + insinto /usr/share/pep + doins Filters/* + + dodoc aareadme.txt file_id.diz +}