commit: 294502452ef39cedc3ba773697fbcf1c54d22ef5 Author: Haelwenn (lanodan) Monnier <contact <AT> hacktivis <DOT> me> AuthorDate: Sat Jul 19 22:28:11 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sat Jul 26 05:05:10 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29450245
app-misc/bb: use pkg-config for libmikmod Avoids the complexity of m4/libmikmod.m4 which had a missing <string.h>, which also silently disables libmikmod and so require a revbump anyway. Sadly aalib does not provides a pkg-config file. Closes: https://bugs.gentoo.org/955778 Signed-off-by: Haelwenn (lanodan) Monnier <contact <AT> hacktivis.me> Part-of: https://github.com/gentoo/gentoo/pull/43076 Signed-off-by: Sam James <sam <AT> gentoo.org> app-misc/bb/bb-1.3.0_rc1-r7.ebuild | 76 ++++++++++++++++++++++ .../files/bb-1.3.0_rc1-libmikmod-pkgconfig.patch | 26 ++++++++ 2 files changed, 102 insertions(+) diff --git a/app-misc/bb/bb-1.3.0_rc1-r7.ebuild b/app-misc/bb/bb-1.3.0_rc1-r7.ebuild new file mode 100644 index 000000000000..66a1437dbbed --- /dev/null +++ b/app-misc/bb/bb-1.3.0_rc1-r7.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +MY_P="${PN}-$(ver_cut 1-2)$(ver_cut 4-5)" + +DESCRIPTION="Lightweight ASCII art demo using media-libs/aalib" +HOMEPAGE="https://aa-project.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/aa-project/${MY_P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE="mikmod" + +DEPEND="media-libs/aalib:= + dev-libs/lzo:= + mikmod? ( media-libs/libmikmod:=[openal] ) +" +# media-libs/libmikmod[openal] is due to bug #516964 +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +S="${WORKDIR}/${PN}-$(ver_cut 1-3)" + +PATCHES=( + "${FILESDIR}"/${P}-noattr.patch + "${FILESDIR}"/${P}-fix-protos.patch + "${FILESDIR}"/${P}-messager-overlap.patch + "${FILESDIR}"/${P}-zbuff-fault.patch + "${FILESDIR}"/${P}-printf-cleanup.patch + "${FILESDIR}"/${P}-libmikmod-pkgconfig.patch + "${FILESDIR}"/${P}-protos.patch + "${FILESDIR}"/${P}-disable-pulse.patch + "${FILESDIR}"/${P}-fix-build-for-clang16.patch + "${FILESDIR}"/${P}-fix-lto-type-mismatch.patch + "${FILESDIR}"/${P}-fix-return-type-and-QA.patch +) + +src_prepare() { + default + + # unbundle lzo, #515286 + rm -v README.LZO minilzo.{c,h} mylzo.h || die + sed -e 's/minilzo.c//' \ + -e 's/minilzo.h//' \ + -e 's/README.LZO//' \ + -i Makefile.am || die + echo 'bb_LDADD = -llzo2' >> Makefile.am || die + # update code + sed -e 's,#include "minilzo.h",#include <lzo/lzo1x.h>,' \ + -e 's,int size = image,lzo_uint size = image,' \ + -i image.c || die + + # rename binary and manpage bb -> bb-aalib + + mv bb.1 bb-aalib.1 || die + sed -e 's/bb/bb-aalib/' \ + -i bb-aalib.1 + sed -e 's/bin_PROGRAMS = bb/bin_PROGRAMS = bb-aalib/' \ + -e 's/man_MANS = bb.1/man_MANS = bb-aalib.1/' \ + -e 's/bb_SOURCES/bb_aalib_SOURCES/' \ + -e 's/bb_LDADD/bb_aalib_LDADD/' \ + -i Makefile.am || die + + mv -v configure.{in,ac} || die + # m4/ dir is added with 'm4-stuff.patch' patch + AT_M4DIR="m4" eautoreconf +} + +pkg_postinst() { + elog "bb binary has been renamed to bb-aalib to avoid a naming conflict with sys-apps/busybox." +} diff --git a/app-misc/bb/files/bb-1.3.0_rc1-libmikmod-pkgconfig.patch b/app-misc/bb/files/bb-1.3.0_rc1-libmikmod-pkgconfig.patch new file mode 100644 index 000000000000..40c2a585ba9d --- /dev/null +++ b/app-misc/bb/files/bb-1.3.0_rc1-libmikmod-pkgconfig.patch @@ -0,0 +1,26 @@ +--- a/configure.in ++++ b/configure.in +@@ -34,14 +34,15 @@ CFLAGS="$CFLAGS $AALIB_CFLAGS" + LIBS="$LIBS $AALIB_LIBS" + + SOUNDFILES="" +-AM_PATH_LIBMIKMOD(3.0.0, +-CFLAGS="$CFLAGS $LIBMIKMOD_CFLAGS" +-LIBS="$LIBS $LIBMIKMOD_LIBS" +-LDADD="$LDADD $LIBMIKMOD_LDADD" +-AC_DEFINE(HAVE_LIBMIKMOD) +-SOUNDFILES="bb.s3m bb2.s3m bb3.s3m" +-dnl AC_DEFINE_UNQUOTED(SOUNDDIR,"$datadir/bb") +-, ++PKG_CHECK_MODULES([LIBMIKMOD], ++[libmikmod >= 3.0.0], ++[ ++ CFLAGS="$CFLAGS $LIBMIKMOD_CFLAGS" ++ LIBS="$LIBS $LIBMIKMOD_LIBS" ++ AC_DEFINE(HAVE_LIBMIKMOD) ++ SOUNDFILES="bb.s3m bb2.s3m bb3.s3m" ++ dnl AC_DEFINE_UNQUOTED(SOUNDDIR,"$datadir/bb") ++], + AC_MSG_RESULT([Libmikmod is missing - sound support will be disabled]) + ) +
