]> git.99rst.org Git - openwrt-packages.git/commit
tvheadend: require GNU libiconv and drop the iconv self-test patch
authorJosef Schlehofer <redacted>
Fri, 21 Aug 2026 06:54:05 +0000 (08:54 +0200)
committerJosef Schlehofer <redacted>
Thu, 10 Sep 2026 06:53:25 +0000 (08:53 +0200)
commitf2c8300e2521b085cafb129d84774049a92510e3
treeecc7748b3545ab106c65dfa0b5792195ecb9e3cd
parent4f1c6984a2dbb4c8c685d751e23b518a74d40011
tvheadend: require GNU libiconv and drop the iconv self-test patch

tvheadend has no transliteration of its own.  It asks iconv for
"<charset>//TRANSLIT//IGNORE", a GNU extension that musl does not
implement.  Converting "ŽluťoučkýKůň" to ASCII on mpc85xx/p2020
(Turris 1.x), musl 1.2.6:

    charset                   musl             GNU libiconv
    ASCII//TRANSLIT//IGNORE   EINVAL           "Zlutouck'yKun"
    ASCII//TRANSLIT           EINVAL           "Zlutouck'yKun"
    ASCII                     "*lu*ou*k*K**"   EILSEQ

050-iconv-test-continue.patch removed the abort() from the startup
self-test that reports this, so the package could be built against
musl's iconv.  That silenced the check without fixing anything:
intlconv_utf8() still returns -EIO, so cleanup_filename() in
src/dvr/dvr_rec.c cannot build a recording file name and
pvr_generate_filename() fails.  The charset cannot be avoided either,
because intlconv_filesystem_charset() returns "ASCII" unless $LANG
names a UTF-8 locale, which OpenWrt does not set by default.

Depend on libiconv-full instead of $(ICONV_DEPENDS), which pulls it in
only when BUILD_NLS is set, and point the compiler at its staging prefix
when nls.mk has not already done so.  The binary then links against
libiconv.so.2, the self-test passes and the patch can be dropped.

Signed-off-by: Josef Schlehofer <redacted>
multimedia/tvheadend/Makefile
multimedia/tvheadend/patches/050-iconv-test-continue.patch [deleted file]
git clone https://git.99rst.org/PROJECT