summaryrefslogtreecommitdiff
path: root/media-libs/libifp
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
commitbfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch)
tree0d7a74b4463ee387f9cf9368ceb1b757f694f72a /media-libs/libifp
parentf716a9fe6455d39eef01e718aae68dae61c19704 (diff)
downloadbaldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'media-libs/libifp')
-rw-r--r--media-libs/libifp/Manifest1
-rw-r--r--media-libs/libifp/files/libifp-1.0.0.2-c23.patch25
-rw-r--r--media-libs/libifp/files/libifp-1.0.0.2-configure.patch50
-rw-r--r--media-libs/libifp/libifp-1.0.0.2-r2.ebuild63
-rw-r--r--media-libs/libifp/metadata.xml11
5 files changed, 150 insertions, 0 deletions
diff --git a/media-libs/libifp/Manifest b/media-libs/libifp/Manifest
new file mode 100644
index 000000000000..9b177581d433
--- /dev/null
+++ b/media-libs/libifp/Manifest
@@ -0,0 +1 @@
+DIST libifp-1.0.0.2.tar.gz 358550 BLAKE2B 3d9e9d82d0147286d3c577bfcc43d2052b643dd3e86c8770fc6dc56047f8c7923e4e04b6463cf895e552be423f887df48d6741173deaf165aa62d2e64ec1332c SHA512 538ddcf0be4bf7427a7f8ebb60ec77f22b69aa26055fc279f884bd82bae4e32267c79ac37f4dcf9970806e520549bc93dbf0aa2501c9c4fc699a6855e757a331
diff --git a/media-libs/libifp/files/libifp-1.0.0.2-c23.patch b/media-libs/libifp/files/libifp-1.0.0.2-c23.patch
new file mode 100644
index 000000000000..c185aa362311
--- /dev/null
+++ b/media-libs/libifp/files/libifp-1.0.0.2-c23.patch
@@ -0,0 +1,25 @@
+Fix incompatible function pointer types
+https://bugs.gentoo.org/880943
+--- a/src/ifp_os_libusb.c 2025-02-13 17:01:02.998513717 +0400
++++ b/src/ifp_os_libusb.c 2025-02-13 17:06:29.903489348 +0400
+@@ -20,8 +20,8 @@
+ char * ob, int max_o, const char * ib, int max_i)
+ {
+ int i=0, e=0;
+- char const * ibb = (char const *)ib;
++ char * ibb = (char *) ib; //strip const qualifier for iconv
+ char * obb = (char *)ob;
+ size_t i_n = max_i;
+ size_t o_n = max_o;
+ iconv_t ICONV;
+--- a/src/userfile.c 2025-02-13 17:01:02.998513717 +0400
++++ b/src/userfile.c 2025-02-13 17:03:31.117230875 +0400
+@@ -947,7 +947,7 @@
+ return i;
+ }
+
+-int file_compare_fts(const FTSENT * const*p1, const FTSENT * const*p2)
++int file_compare_fts(const FTSENT const **p1, const FTSENT const **p2)
+ {
+ if (p1 == NULL) { ifp_err("p1 shouldn't be NULL"); return 0; }
+ if (p2 == NULL) { ifp_err("p2 shouldn't be NULL"); return 0; }
diff --git a/media-libs/libifp/files/libifp-1.0.0.2-configure.patch b/media-libs/libifp/files/libifp-1.0.0.2-configure.patch
new file mode 100644
index 000000000000..76961f4a76f3
--- /dev/null
+++ b/media-libs/libifp/files/libifp-1.0.0.2-configure.patch
@@ -0,0 +1,50 @@
+Fix implicit declaration to autoconf.
+Introduce dependency on pkgconf to deal with hardcoded paths in CFLAGS
+https://bugs.gentoo.org/899824
+--- a/configure.in
++++ b/configure.ac
+@@ -1,9 +1,9 @@
+-AC_INIT(configure.in)
++AC_INIT
++AC_CONFIG_SRCDIR([configure.ac])
+
+ #The automake documentation says this is a no-no, but I don't understand
+ #what the alternative is.
+ #Commented out until I can find out what the portable alternative is.
+-CFLAGS="-g -O2 -Wall -W -Wno-unused-parameter"
+ ##CFLAGS="-g -O2 -Wall -W"
+
+ AM_INIT_AUTOMAKE(libifp, 1.0.0.2)
+@@ -12,6 +12,7 @@
+ AC_PROG_LIBTOOL
+ AC_C_BIGENDIAN
+ AC_SUBST(LIBTOOL_DEPS)
++PKG_PROG_PKG_CONFIG
+
+ dnl AC_DEFINE(IFP_AUTOCONF)
+
+@@ -22,10 +23,14 @@
+ AC_MSG_CHECKING([libusb])
+ AC_ARG_WITH(libusb,
+ AC_HELP_STRING([--with-libusb=PATH],[libusb path (default /usr)]),
+- ac_libusb=$enableval, ac_libusb=no)
++ ac_libusb=$withval, ac_libusb=no)
+ if test "x${ac_libusb}" != "xno" ; then
+ case ${with_libusb} in
+ "" | "yes" | "YES")
++ PKG_CHECK_MODULES([LIBUSB],[libusb],,[AC_MSG_ERROR([Cannot detect libusb])])
++ CFLAGS+=" $LIBUSB_CFLAGS"
++ CPPFLAGS+=" $LIBUSB_CFLAGS"
++ LDFLAGS+=" $LIBUSB_LDFLAGS"
+ ;;
+ "no" | "NO")
+ use_libusb=false
+@@ -93,7 +98,7 @@
+ AC_MSG_CHECKING([kernel source code])
+ AC_ARG_WITH(kmodule,
+ AC_HELP_STRING([--with-kmodule=to/kernel/src], [build as linux kernel module [[default=no]]]),
+- ac_kmodule=$enableval, ac_kmodule=no)
++ ac_kmodule=$withval, ac_kmodule=no)
+ if test "x$ac_kmodule" != "xno" ; then
+ #echo "enableval is $enableval, with_kmodule is $with_kmodule"
+ if test "x$with_kmodule" = "xyes" ; then
diff --git a/media-libs/libifp/libifp-1.0.0.2-r2.ebuild b/media-libs/libifp/libifp-1.0.0.2-r2.ebuild
new file mode 100644
index 000000000000..4ba673acd5ac
--- /dev/null
+++ b/media-libs/libifp/libifp-1.0.0.2-r2.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="General-purpose library for iRiver's iFP portable audio players"
+HOMEPAGE="https://ifp-driver.sourceforge.net/libifp/"
+SRC_URI="https://downloads.sourceforge.net/ifp-driver/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ppc ppc64 x86"
+IUSE="doc examples static-libs"
+
+RDEPEND="virtual/libusb:0"
+DEPEND="${RDEPEND}
+ doc? ( >=app-text/doxygen-1.3.7 )
+ elibc_musl? ( sys-libs/fts-standalone:= )"
+BDEPEND="${DEPEND}
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${P}-configure.patch"
+ "${FILESDIR}/${P}-c23.patch"
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ use doc || export have_doxygen=no
+ use elibc_musl && append-ldflags -lfts # 713650
+ econf \
+ $(use_enable static-libs static) \
+ $(use_enable examples) \
+ --with-libusb \
+ --without-kmodule
+}
+
+src_test() { :; } # hardware dependant wrt #318597
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ find "${D}" -name '*.la' -exec rm -f {} + || die
+
+ # clean /usr/bin after installation
+ # by moving examples to examples dir
+ if use examples; then
+ insinto /usr/share/${PN}/examples
+ doins "${S}"/examples/simple.c "${S}"/examples/ifpline.c
+ mv "${D}"/usr/bin/{simple,ifpline} "${D}"/usr/share/${PN}/examples || die
+ else
+ rm -f "${D}"/usr/bin/{simple,ifpline} || die
+ fi
+
+ use doc && dodoc README ChangeLog TODO
+}
diff --git a/media-libs/libifp/metadata.xml b/media-libs/libifp/metadata.xml
new file mode 100644
index 000000000000..69b76780c201
--- /dev/null
+++ b/media-libs/libifp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sound@gentoo.org</email>
+ <name>Gentoo Sound project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">ifp-driver</remote-id>
+ </upstream>
+</pkgmetadata>