blob: 7ae262345b3350c883709ac0e615984928287502 [file] [log] [blame]
Patrick Williamsb48b7b42016-08-17 15:04:38 -05001SUMMARY = "Library for interacting with ID3 tags"
2SECTION = "libs/multimedia"
Andrew Geissler9aee5002022-03-30 16:27:02 +00003LICENSE = "LGPL-2.0-or-later"
Patrick Williamsb48b7b42016-08-17 15:04:38 -05004LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
5DEPENDS = "zlib"
6
Patrick Williamsb48b7b42016-08-17 15:04:38 -05007
8SRC_URI = "${SOURCEFORGE_MIRROR}/id3lib/id3lib-${PV}.tar.gz;name=archive \
Brad Bishope42b3e32020-01-15 22:08:42 -05009 ${DEBIAN_MIRROR}/main/i/id3lib3.8.3/id3lib3.8.3_3.8.3-16.2.debian.tar.xz;name=patch;subdir=${BP} \
Patrick Williamsb48b7b42016-08-17 15:04:38 -050010 file://acdefine.patch \
11"
12SRC_URI[archive.md5sum] = "19f27ddd2dda4b2d26a559a4f0f402a7"
13SRC_URI[archive.sha256sum] = "2749cc3c0cd7280b299518b1ddf5a5bcfe2d1100614519b68702230e26c7d079"
Brad Bishope42b3e32020-01-15 22:08:42 -050014SRC_URI[patch.md5sum] = "997c764d3be11c9a51779d93facf1118"
15SRC_URI[patch.sha256sum] = "ac2ee23ec89ba2af51d2c6dd5b1b6bf9f8a9f813de251bc182941439a4053176"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050016
Patrick Williams96e4b4e2025-02-03 15:49:15 -050017CVE_STATUS[CVE-2007-4460] = "patched: fix is included in debian patch"
18
Patrick Williamsb48b7b42016-08-17 15:04:38 -050019inherit autotools
Brad Bishope42b3e32020-01-15 22:08:42 -050020
21# Unlike other Debian packages, id3lib*.diff.gz contains another series of
22# patches maintained by quilt. So manually apply them before applying other local
23# patches. Also remove all temp files before leaving, because do_patch() will pop
24# up all previously applied patches in the start
Andrew Geissler82c905d2020-04-13 13:39:40 -050025do_patch[depends] += "quilt-native:do_populate_sysroot"
Brad Bishope42b3e32020-01-15 22:08:42 -050026id3lib_do_patch() {
27 cd ${S}
28 # it's important that we only pop the existing patches when they've
29 # been applied, otherwise quilt will climb the directory tree
30 # and reverse out some completely different set of patches
31 if [ -d ${S}/patches ]; then
32 # whilst this is the default directory, doing it like this
33 # defeats the directory climbing that quilt will otherwise
34 # do; note the directory must exist to defeat this, hence
35 # the test inside which we operate
36 QUILT_PATCHES=${S}/patches quilt pop -a
37 fi
Andrew Geissler82c905d2020-04-13 13:39:40 -050038 if [ -d ${S}/.pc-${BPN} ]; then
Brad Bishope42b3e32020-01-15 22:08:42 -050039 rm -rf ${S}/.pc
Andrew Geissler82c905d2020-04-13 13:39:40 -050040 mv ${S}/.pc-${BPN} ${S}/.pc
Brad Bishope42b3e32020-01-15 22:08:42 -050041 QUILT_PATCHES=${S}/debian/patches quilt pop -a
42 rm -rf ${S}/.pc ${S}/debian
43 fi
44 QUILT_PATCHES=${S}/debian/patches quilt push -a
Andrew Geissler82c905d2020-04-13 13:39:40 -050045 mv ${S}/.pc ${S}/.pc-${BPN}
Brad Bishope42b3e32020-01-15 22:08:42 -050046}
47
48do_unpack[cleandirs] += "${S}"
49
50# We invoke base do_patch at end, to incorporate any local patch
51python do_patch() {
52 bb.build.exec_func('id3lib_do_patch', d)
53 bb.build.exec_func('patch_do_patch', d)
54}