added my Recipes

This commit is contained in:
2024-07-11 14:16:35 +02:00
parent 38bc4f53ac
commit 09b621d929
7118 changed files with 525762 additions and 3 deletions

View File

@@ -0,0 +1,29 @@
DESCRIPTION = "The Audio File Library provides a uniform and elegant \
API for accessing a variety of audio file formats, such as AIFF/AIFF-C, \
WAVE, NeXT/Sun .snd/.au, Berkeley/IRCAM/CARL Sound File, Audio Visual \
Research, Amiga IFF/8SVX, and NIST SPHERE."
HOMEPAGE = "http://www.68k.org/~michael/audiofile/"
SECTION = "libs"
LICENSE = "LGPL-2.0-only & GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = " \
${GNOME_MIRROR}/audiofile/0.3/${BP}.tar.xz \
file://0001-fix-negative-shift-constants.patch \
file://0002-fix-build-on-gcc6.patch \
file://0003-fix-CVE-2015-7747.patch \
"
SRC_URI[md5sum] = "235dde14742317328f0109e9866a8008"
SRC_URI[sha256sum] = "ea2449ad3f201ec590d811db9da6d02ffc5e87a677d06b92ab15363d8cb59782"
inherit autotools lib_package pkgconfig
CXXFLAGS += "-std=c++14"
DEPENDS = " \
asciidoc-native \
alsa-lib \
libogg \
flac \
"

View File

@@ -0,0 +1,77 @@
From 99127676dba8f5d607757428bc14a6b7ab52d5ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 16 Dec 2016 12:42:06 +0100
Subject: [PATCH 1/3] fix negative shift constants
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Stolen from [1]
[1] http://pkgs.fedoraproject.org/cgit/rpms/audiofile.git/tree/audiofile-0.3.6-left-shift-neg.patch
Upstrem-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
libaudiofile/modules/SimpleModule.h | 2 +-
test/FloatToInt.cpp | 2 +-
test/IntToFloat.cpp | 2 +-
test/Sign.cpp | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/libaudiofile/modules/SimpleModule.h b/libaudiofile/modules/SimpleModule.h
index 03c6c69..e4cc138 100644
--- a/libaudiofile/modules/SimpleModule.h
+++ b/libaudiofile/modules/SimpleModule.h
@@ -123,7 +123,7 @@ struct signConverter
typedef typename IntTypes<Format>::UnsignedType UnsignedType;
static const int kScaleBits = (Format + 1) * CHAR_BIT - 1;
- static const int kMinSignedValue = -1 << kScaleBits;
+ static const int kMinSignedValue = 0-(1U<<kScaleBits);
struct signedToUnsigned : public std::unary_function<SignedType, UnsignedType>
{
diff --git a/test/FloatToInt.cpp b/test/FloatToInt.cpp
index 0d179a8..bf491b2 100644
--- a/test/FloatToInt.cpp
+++ b/test/FloatToInt.cpp
@@ -115,7 +115,7 @@ TEST_F(FloatToIntTest, Int16)
EXPECT_EQ(readData[i], expectedData[i]);
}
-static const int32_t kMinInt24 = -1<<23;
+static const int32_t kMinInt24 = 0-(1U<<23);
static const int32_t kMaxInt24 = (1<<23) - 1;
TEST_F(FloatToIntTest, Int24)
diff --git a/test/IntToFloat.cpp b/test/IntToFloat.cpp
index b716635..1d91b58 100644
--- a/test/IntToFloat.cpp
+++ b/test/IntToFloat.cpp
@@ -117,7 +117,7 @@ TEST_F(IntToFloatTest, Int16)
EXPECT_EQ(readData[i], expectedData[i]);
}
-static const int32_t kMinInt24 = -1<<23;
+static const int32_t kMinInt24 = 0-(1U<<23);
static const int32_t kMaxInt24 = (1<<23) - 1;
TEST_F(IntToFloatTest, Int24)
diff --git a/test/Sign.cpp b/test/Sign.cpp
index 7275399..c339514 100644
--- a/test/Sign.cpp
+++ b/test/Sign.cpp
@@ -116,7 +116,7 @@ TEST_F(SignConversionTest, Int16)
EXPECT_EQ(readData[i], expectedData[i]);
}
-static const int32_t kMinInt24 = -1<<23;
+static const int32_t kMinInt24 = 0-(1U<<23);
static const int32_t kMaxInt24 = (1<<23) - 1;
static const uint32_t kMaxUInt24 = (1<<24) - 1;
--
2.7.4

View File

@@ -0,0 +1,75 @@
From a74c1e9c583375b9e55c29a36442485089e4b7f9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 16 Dec 2016 12:42:06 +0100
Subject: [PATCH 2/3] fix build on gcc6
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Stolen from [1]
[1] http://pkgs.fedoraproject.org/cgit/rpms/audiofile.git/tree/audiofile-0.3.6-narrowing.patch
Upstrem-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
test/NeXT.cpp | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/test/NeXT.cpp b/test/NeXT.cpp
index 7e39850..a37cea1 100644
--- a/test/NeXT.cpp
+++ b/test/NeXT.cpp
@@ -37,13 +37,13 @@
#include "TestUtilities.h"
-const char kDataUnspecifiedLength[] =
+const signed char kDataUnspecifiedLength[] =
{
'.', 's', 'n', 'd',
0, 0, 0, 24, // offset of 24 bytes
- 0xff, 0xff, 0xff, 0xff, // unspecified length
+ -1, -1, -1, -1, // unspecified length
0, 0, 0, 3, // 16-bit linear
- 0, 0, 172, 68, // 44100 Hz
+ 0, 0, -84, 68, // 44100 Hz (0xAC44)
0, 0, 0, 1, // 1 channel
0, 1,
0, 1,
@@ -57,13 +57,13 @@ const char kDataUnspecifiedLength[] =
0, 55
};
-const char kDataTruncated[] =
+const signed char kDataTruncated[] =
{
'.', 's', 'n', 'd',
0, 0, 0, 24, // offset of 24 bytes
0, 0, 0, 20, // length of 20 bytes
0, 0, 0, 3, // 16-bit linear
- 0, 0, 172, 68, // 44100 Hz
+ 0, 0, -84, 68, // 44100 Hz (0xAC44)
0, 0, 0, 1, // 1 channel
0, 1,
0, 1,
@@ -152,13 +152,13 @@ TEST(NeXT, Truncated)
ASSERT_EQ(::unlink(testFileName.c_str()), 0);
}
-const char kDataZeroChannels[] =
+const signed char kDataZeroChannels[] =
{
'.', 's', 'n', 'd',
0, 0, 0, 24, // offset of 24 bytes
0, 0, 0, 2, // 2 bytes
0, 0, 0, 3, // 16-bit linear
- 0, 0, 172, 68, // 44100 Hz
+ 0, 0, -84, 68, // 44100 Hz (0xAC44)
0, 0, 0, 0, // 0 channels
0, 1
};
--
2.7.4

View File

@@ -0,0 +1,35 @@
From 746c38105ce4fa1b609995d3386ea6b8b1f2f7bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 16 Dec 2016 12:50:51 +0100
Subject: [PATCH 3/3] fix CVE-2015-7747
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Stolen from [1]
[1] http://pkgs.fedoraproject.org/cgit/rpms/audiofile.git/tree/audiofile-0.3.6-CVE-2015-7747.patch
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
libaudiofile/modules/ModuleState.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libaudiofile/modules/ModuleState.cpp b/libaudiofile/modules/ModuleState.cpp
index f76c495..0c29d7a 100644
--- a/libaudiofile/modules/ModuleState.cpp
+++ b/libaudiofile/modules/ModuleState.cpp
@@ -402,7 +402,7 @@ status ModuleState::arrange(AFfilehandle file, Track *track)
addModule(new Transform(outfc, in.pcm, out.pcm));
if (in.channelCount != out.channelCount)
- addModule(new ApplyChannelMatrix(infc, isReading,
+ addModule(new ApplyChannelMatrix(outfc, isReading,
in.channelCount, out.channelCount,
in.pcm.minClip, in.pcm.maxClip,
track->channelMatrix));
--
2.7.4

View File

@@ -0,0 +1,64 @@
SUMMARY = "CD/DVD command line tools"
HOMEPAGE = "http://cdrkit.org/"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=b30d3b2750b668133fc17b401e1b98f8"
# While writing download from cdrkit.org was broken so get sources from debian
SRC_URI = "${DEBIAN_MIRROR}/main/c/${BPN}/${BPN}_${PV}.orig.tar.gz \
file://0001-do-not-create-a-run-test-to-determine-order-of-bitfi.patch \
file://0001-genisoimage-Fix-fprintf-format-errors.patch \
file://0001-define-__THROW-to-avoid-build-issue-with-musl.patch \
file://0002-Do-not-use-rcmd-on-build-with-musl.patch \
file://0001-genisoimage-Add-missing-extern-definition.patch \
file://0001-add-new-option-eltorito-platform.patch \
file://0001-genisoimage-Add-checksum.h-and-md5.h-for-function-pr.patch \
"
SRC_URI:append:class-nativesdk = " \
file://0001-install-netscsid-to-bin-for-nativesdk.patch \
"
SRC_URI[md5sum] = "efe08e2f3ca478486037b053acd512e9"
SRC_URI[sha256sum] = "d1c030756ecc182defee9fe885638c1785d35a2c2a297b4604c0e0dcc78e47da"
inherit cmake
DEPENDS = "libcap file bzip2"
RDEPENDS:dirsplit = "perl"
RDEPENDS:${PN}-dev = ""
PACKAGES =+ "dirsplit genisoimage icedax wodim"
FILES:dirsplit = " \
${bindir}/dirsplit \
"
FILES:genisoimage = " \
${bindir}/devdump \
${bindir}/genisoimage \
${bindir}/isodebug \
${bindir}/isodump \
${bindir}/isoinfo \
${bindir}/isovfy \
${bindir}/mkisofs \
"
FILES:icedax = " \
${bindir}/cdda2mp3 \
${bindir}/cdda2ogg \
${bindir}/icedax \
${bindir}/pitchplay \
${bindir}/readmult \
"
FILES:wodim = " \
${bindir}/readom \
${bindir}/wodim \
${sbindir}/netscsid \
"
do_install:append() {
ln -sf --relative ${D}${bindir}/genisoimage ${D}${bindir}/mkisofs
}
BBCLASSEXTEND = "native nativesdk"

View File

@@ -0,0 +1,335 @@
From 5a2d571f3687910260c45841725f2deb84c8f12e Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Mon, 25 Apr 2022 18:18:00 +0800
Subject: [PATCH] add new option -eltorito-platform
Mkisofs now correctly supports El Torito multi boot entries by introducing
a Boot Dection Header before a list of alternate boot entries.
New option -eltorito-platform allows to set the El Torito platform id
for a boot entry or for a list of boot entries. Supported values for
the parameter are:
- x86 the standard value vor x86 based PCs
- PPC the Power PC platform
- Mac The Apple Mac platform
- efi EFI based boot for PCs
- # an arbitrary numerical value
Upstream-Status: Inappropriate [port from cdrtools]
https://github.com/jobermayr/cdrtools/commit/a50804fd61d75eb689a515dbfca6968ca2296fd7
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
genisoimage/eltorito.c | 73 +++++++++++++++++++++++++++++++++++++--
genisoimage/genisoimage.c | 47 +++++++++++++++++++++++++
genisoimage/genisoimage.h | 8 +++++
genisoimage/iso9660.h | 33 ++++++++++++++++--
4 files changed, 157 insertions(+), 4 deletions(-)
diff --git a/genisoimage/eltorito.c b/genisoimage/eltorito.c
index d52e17e..a804988 100644
--- a/genisoimage/eltorito.c
+++ b/genisoimage/eltorito.c
@@ -56,6 +56,7 @@ static unsigned int bcat_de_flags;
void init_boot_catalog(const char *path);
void insert_boot_cat(void);
static void get_torito_desc(struct eltorito_boot_descriptor *boot_desc);
+static void fill_boot_shdr(struct eltorito_sectionheader_entry *boot_shdr_entry, int arch);
static void fill_boot_desc(struct eltorito_defaultboot_entry *boot_desc_entry,
struct eltorito_boot_entry_info *boot_entry);
void get_boot_entry(void);
@@ -282,7 +283,14 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
struct directory_entry *de2; /* Boot catalog */
int i;
int offset;
+ int arch = 0;
+ int nentries = 0;
struct eltorito_defaultboot_entry boot_desc_record;
+ struct eltorito_sectionheader_entry boot_shdr_record;
+#ifdef __needed__
+ struct eltorito_section_entry boot_section_record;
+#endif
+ struct eltorito_sectionheader_entry *last_section_header = 0;
memset(boot_desc, 0, sizeof (*boot_desc));
boot_desc->type[0] = 0;
@@ -311,13 +319,22 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
set_731(boot_desc->bootcat_ptr,
(unsigned int) get_733(de2->isorec.extent));
+ /*
+ * If the platform id for the first (default) boot entry has not been
+ * explicitly set, we default to EL_TORITO_ARCH_x86
+ */
+ if ((first_boot_entry->type & ELTORITO_BOOT_ID) == 0) {
+ first_boot_entry->boot_platform = EL_TORITO_ARCH_x86;
+ }
+ arch = first_boot_entry->boot_platform;
+
/*
* we have the boot image, so write boot catalog information
* Next we write out the primary descriptor for the disc
*/
memset(&valid_desc, 0, sizeof (valid_desc));
valid_desc.headerid[0] = 1;
- valid_desc.arch[0] = EL_TORITO_ARCH_x86;
+ valid_desc.arch[0] = arch; /* Platform id for the default boot */
/*
* we'll shove start of publisher id into id field,
@@ -351,8 +368,17 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
current_boot_entry != NULL;
current_boot_entry = current_boot_entry->next,
offset += sizeof (boot_desc_record)) {
+ int newarch = arch;
- if (offset >= SECTOR_SIZE) {
+ if (current_boot_entry->type & ELTORITO_BOOT_ID)
+ newarch = current_boot_entry->boot_platform;
+ else
+ current_boot_entry->boot_platform = arch;
+
+ /*
+ * El Torito has no such limitation but we currently have...
+ */
+ if (offset >= (SECTOR_SIZE - sizeof (boot_desc_record))) {
#ifdef USE_LIBSCHILY
comerrno(EX_BAD,
"Too many El Torito boot entries\n");
@@ -362,12 +388,53 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
exit(1);
#endif
}
+
+ if (current_boot_entry == first_boot_entry) {
+ ;
+ /* EMPTY */
+ } else if ((current_boot_entry == first_boot_entry->next) ||
+ (arch != newarch) ||
+ (current_boot_entry->type & ELTORITO_SECTION_HEADER)) {
+ if (last_section_header)
+ set_721(&last_section_header->entry_count, nentries);
+ nentries = 1;
+ last_section_header = (struct eltorito_sectionheader_entry *)
+ (de2->table + offset);
+ fill_boot_shdr(&boot_shdr_record, newarch);
+ memcpy(de2->table + offset, &boot_shdr_record,
+ sizeof (boot_shdr_record));
+ offset += sizeof (boot_desc_record);
+ } else {
+ nentries++; /* Add entry to this section header */
+ }
+ /*
+ * This works because a section entry has the same essential
+ * layout as a default entry (and we do not populate the
+ * selection criteria fields).
+ */
+
fill_boot_desc(&boot_desc_record, current_boot_entry);
memcpy(de2->table + offset, &boot_desc_record,
sizeof (boot_desc_record));
}
+
+ if (last_section_header) {
+ set_721(&last_section_header->entry_count, nentries);
+ last_section_header->header_id[0] = EL_TORITO_SHDR_ID_LAST_SHDR;
+ }
+
}/* get_torito_desc(... */
+static void
+fill_boot_shdr(boot_shdr_entry, arch)
+ struct eltorito_sectionheader_entry *boot_shdr_entry;
+ int arch;
+{
+ memset(boot_shdr_entry, 0, sizeof(struct eltorito_sectionheader_entry));
+ boot_shdr_entry->header_id[0] = EL_TORITO_SHDR_ID_SHDR;
+ boot_shdr_entry->platform_id[0] = arch;
+}
+
static void
fill_boot_desc(struct eltorito_defaultboot_entry *boot_desc_entry,
struct eltorito_boot_entry_info *boot_entry)
@@ -678,7 +745,9 @@ get_boot_entry()
if (!first_boot_entry) {
first_boot_entry = current_boot_entry;
last_boot_entry = current_boot_entry;
+ current_boot_entry->boot_platform = EL_TORITO_ARCH_x86;
} else {
+ current_boot_entry->boot_platform = last_boot_entry->boot_platform;
last_boot_entry->next = current_boot_entry;
last_boot_entry = current_boot_entry;
}
diff --git a/genisoimage/genisoimage.c b/genisoimage/genisoimage.c
index 9089081..84ac3c2 100644
--- a/genisoimage/genisoimage.c
+++ b/genisoimage/genisoimage.c
@@ -271,6 +271,8 @@ struct rcopts {
char **variable;
};
+static int get_boot_platid(char *opt_arg);
+
struct rcopts rcopt[] = {
{"PREP", &preparer},
{"PUBL", &publisher},
@@ -404,6 +406,7 @@ struct ld_option {
#define OPTION_ALLOW_LEADING_DOTS 1070
#define OPTION_PUBLISHER 1071
+#define OPTION_PLATFORM 1072
#ifdef JIGDO_TEMPLATE
#define OPTION_JTT_OUTPUT 1101
@@ -528,6 +531,8 @@ static const struct ld_option ld_options[] =
'b', "FILE", "Set El Torito boot image name", ONE_DASH},
{{"eltorito-alt-boot", no_argument, NULL, OPTION_ALT_BOOT},
'\0', NULL, "Start specifying alternative El Torito boot parameters", ONE_DASH},
+ {{"eltorito-platform", required_argument, NULL, OPTION_PLATFORM},
+ '\0', "ID", "Set El Torito platform id for the next boot entry", ONE_DASH},
{{"sparc-boot", required_argument, NULL, 'B'},
'B', "FILES", "Set sparc boot image names", ONE_DASH},
{{"sunx86-boot", required_argument, NULL, OPTION_SUNX86BOOT},
@@ -1558,6 +1563,9 @@ int main(int argc, char *argv[])
*/
new_boot_entry();
break;
+ case OPTION_PLATFORM:
+ get_boot_platid(optarg);
+ break;
case OPTION_BOOTALPHA:
use_alphaboot++;
/* list of pathnames of boot images */
@@ -3829,3 +3837,42 @@ e_malloc(size_t size)
memset(pt, 0, size);
return (pt);
}
+
+static int
+get_boot_platid(char *opt_arg)
+{
+ long val;
+ char *ptr;
+
+ use_eltorito++;
+ if (streql(opt_arg, "x86")) {
+ val = EL_TORITO_ARCH_x86;
+ } else if (streql(opt_arg, "PPC")) {
+ val = EL_TORITO_ARCH_PPC;
+ } else if (streql(opt_arg, "Mac")) {
+ val = EL_TORITO_ARCH_PPC;
+ } else if (streql(opt_arg, "efi")) {
+ val = EL_TORITO_ARCH_EFI;
+ } else {
+ val = strtol(opt_arg, &ptr, 0);
+ if (*ptr || val < 0 || val >= 0x100) {
+ comerrno(EX_BAD, "Bad boot system ID.\n");
+ }
+ }
+
+ /*
+ * If there is already a boot entry and the boot file name has been set
+ * for this boot entry and the new platform id differs from the
+ * previous value, we start a new boot section.
+ */
+ if (current_boot_entry &&
+ current_boot_entry->boot_image != NULL &&
+ current_boot_entry->boot_platform != val) {
+ new_boot_entry();
+ }
+ get_boot_entry();
+ current_boot_entry->type |= ELTORITO_BOOT_ID;
+ current_boot_entry->boot_platform = val;
+ return (1);
+}
+
diff --git a/genisoimage/genisoimage.h b/genisoimage/genisoimage.h
index 82c859b..1170d89 100644
--- a/genisoimage/genisoimage.h
+++ b/genisoimage/genisoimage.h
@@ -299,6 +299,14 @@ struct eltorito_boot_entry_info {
int boot_info_table;
int load_size;
int load_addr;
+
+#define ELTORITO_BOOT_ID 1
+#define ELTORITO_SECTION_HEADER 2
+ int type;
+ /*
+ * Valid if (type & ELTORITO_BOOT_ID) != 0
+ */
+ int boot_platform;
};
extern int goof;
diff --git a/genisoimage/iso9660.h b/genisoimage/iso9660.h
index c74c2a9..61b6fc0 100644
--- a/genisoimage/iso9660.h
+++ b/genisoimage/iso9660.h
@@ -62,6 +62,7 @@ struct iso_volume_descriptor {
#define EL_TORITO_ARCH_x86 0
#define EL_TORITO_ARCH_PPC 1
#define EL_TORITO_ARCH_MAC 2
+#define EL_TORITO_ARCH_EFI 0xEF
#define EL_TORITO_BOOTABLE 0x88
#define EL_TORITO_NOT_BOOTABLE 0
@@ -159,10 +160,15 @@ struct eltorito_boot_descriptor {
};
/* Validation entry for El Torito */
+/*
+ * headerid must be 1
+ * id is the manufacturer ID
+ * cksum to make the sum of all shorts in this record 0
+ */
struct eltorito_validation_entry {
char headerid [ISODCL(1, 1)]; /* 711 */
char arch [ISODCL(2, 2)];
- char pad1 [ISODCL(3, 4)]; /* 711 */
+ char pad1 [ISODCL(3, 4)]; /* 721 */
char id [ISODCL(5, 28)]; /* CD devel/man*/
char cksum [ISODCL(29, 30)];
char key1 [ISODCL(31, 31)];
@@ -173,7 +179,7 @@ struct eltorito_validation_entry {
struct eltorito_defaultboot_entry {
char boot_id [ISODCL(1, 1)]; /* 711 */
char boot_media [ISODCL(2, 2)];
- char loadseg [ISODCL(3, 4)]; /* 711 */
+ char loadseg [ISODCL(3, 4)]; /* 721 */
char sys_type [ISODCL(5, 5)];
char pad1 [ISODCL(6, 6)];
char nsect [ISODCL(7, 8)];
@@ -181,6 +187,29 @@ struct eltorito_defaultboot_entry {
char pad2 [ISODCL(13, 32)];
};
+/* El Torito section header entry in boot catalog */
+struct eltorito_sectionheader_entry {
+#define EL_TORITO_SHDR_ID_SHDR 0x90
+#define EL_TORITO_SHDR_ID_LAST_SHDR 0x91
+ char header_id [ISODCL(1, 1)]; /* 711 */
+ char platform_id [ISODCL(2, 2)];
+ char entry_count [ISODCL(3, 4)]; /* 721 */
+ char id [ISODCL(5, 32)];
+};
+
+/* El Torito section entry in boot catalog */
+struct eltorito_section_entry {
+ char boot_id [ISODCL(1, 1)]; /* 711 */
+ char boot_media [ISODCL(2, 2)];
+ char loadseg [ISODCL(3, 4)]; /* 721 */
+ char sys_type [ISODCL(5, 5)];
+ char pad1 [ISODCL(6, 6)];
+ char nsect [ISODCL(7, 8)];
+ char bootoff [ISODCL(9, 12)];
+ char sel_criteria [ISODCL(13, 13)];
+ char vendor_sel_criteria [ISODCL(14, 32)];
+};
+
/*
* XXX JS: The next two structures have odd lengths!
* Some compilers (e.g. on Sun3/mc68020) padd the structures to even length.
--
2.27.0

View File

@@ -0,0 +1,47 @@
From 7c3036609494296f7c29413bf3acba829c81f62c Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@openwide.fr>
Date: Sat, 8 Aug 2015 22:58:57 +0200
Subject: [PATCH 1/2] define __THROW to avoid build issue with musl
Fixes:
http://autobuild.buildroot.net/results/d27/d2781e70b04a207e2e9397d888032294c7285034/build-end.log
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
genisoimage/sha256.h | 4 ++++
genisoimage/sha512.h | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/genisoimage/sha256.h b/genisoimage/sha256.h
index e7f4cb9..bcae7ef 100644
--- a/genisoimage/sha256.h
+++ b/genisoimage/sha256.h
@@ -29,6 +29,10 @@
#include <stdint.h>
#include <stdio.h>
+/* define __THROW to avoid build issue when it's not available from the libc */
+#ifndef __THROW
+# define __THROW
+#endif
/* Structure to save state of computation between the single steps. */
struct sha256_ctx
diff --git a/genisoimage/sha512.h b/genisoimage/sha512.h
index 7298355..8cee8b0 100644
--- a/genisoimage/sha512.h
+++ b/genisoimage/sha512.h
@@ -29,6 +29,10 @@
#include <stdint.h>
#include <stdio.h>
+/* define __THROW to avoid build issue when it's not available from the libc */
+#ifndef __THROW
+# define __THROW
+#endif
/* Structure to save state of computation between the single steps. */
struct sha512_ctx
--
2.14.1

View File

@@ -0,0 +1,53 @@
From a702cd1bb5eba5a05d1098862b5b863a3f6dd558 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Thu, 10 Sep 2015 09:39:13 +0200
Subject: [PATCH] do not create a run test to determine order of bitfields
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
taken from [1]
Upstream-Status: Inappropriate [cross compile specific]
[1] http://cgit.openembedded.org/openembedded/tree/recipes/cdrkit/cdrkit/xconfig.patch
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
include/CMakeLists.txt | 2 --
include/xconfig.h.in | 6 +++++-
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
index 99a69fd..e5ba8a7 100644
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -35,8 +35,6 @@ endif(VA_LIST_IS_ARRAY)
INCLUDE(TestBigEndian)
TEST_BIG_ENDIAN(WORDS_BIGENDIAN)
-TRY_RUN(BITFIELDS_HTOL TEST_DUMMY ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/test_BITFIELDS_HTOL.c)
-
INCLUDE(CheckIncludeFiles)
#SET(CMAKE_REQUIRED_INCLUDES "/usr/include;/usr/local/include")
diff --git a/include/xconfig.h.in b/include/xconfig.h.in
index c130600..476c00b 100644
--- a/include/xconfig.h.in
+++ b/include/xconfig.h.in
@@ -233,7 +233,11 @@
/* If using network byte order */
#cmakedefine WORDS_BIGENDIAN
/* If high bits come first in structures */
-#cmakedefine BITFIELDS_HTOL
+#ifdef WORDS_BIGENDIAN
+#define BITFIELDS_HTOL
+#else
+#define BITFIELDS_LTOH
+#endif
#define HAVE_C_BIGENDIAN /* Flag that WORDS_BIGENDIAN test was done */
#define HAVE_C_BITFIELDS /* Flag that BITFIELDS_HTOL test was done */
--
2.1.0

View File

@@ -0,0 +1,44 @@
From f28b8ec20c3485068f1617ff93b497bafe5264e1 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 3 Sep 2022 00:50:17 -0700
Subject: [PATCH] genisoimage: Add checksum.h and md5.h for function prototypes
Needed for parse_checksum_algo and calculate_md5sum
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
genisoimage/genisoimage.c | 2 ++
genisoimage/jte.c | 2 ++
2 files changed, 4 insertions(+)
diff --git a/genisoimage/genisoimage.c b/genisoimage/genisoimage.c
index 84ac3c2..5c9f7f3 100644
--- a/genisoimage/genisoimage.c
+++ b/genisoimage/genisoimage.c
@@ -59,6 +59,8 @@
#include "udf.h"
#endif
+#include "checksum.h"
+
#ifdef NEED_O_BINARY
#include <io.h> /* for setmode() prototype */
#endif
diff --git a/genisoimage/jte.c b/genisoimage/jte.c
index 0dff289..1f03ad3 100644
--- a/genisoimage/jte.c
+++ b/genisoimage/jte.c
@@ -36,6 +36,8 @@
#include "vms.h"
#endif
+#include "md5.h"
+
/* Different types used in building our state list below */
#define JTET_FILE_MATCH 1
#define JTET_NOMATCH 2
--
2.37.3

View File

@@ -0,0 +1,29 @@
From fd5251cc8b82ce7a5f907c5129969097d75609fe Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 13 Aug 2020 17:38:59 -0700
Subject: [PATCH] genisoimage: Add missing extern definition
Fixed build with gcc10
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
genisoimage/genisoimage.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/genisoimage/genisoimage.h b/genisoimage/genisoimage.h
index bbedfb0..82c859b 100644
--- a/genisoimage/genisoimage.h
+++ b/genisoimage/genisoimage.h
@@ -376,7 +376,7 @@ extern int use_fileversion;
extern int split_SL_component;
extern int split_SL_field;
extern char *trans_tbl;
-char *outfile;
+extern char *outfile;
#define JMAX 64 /* maximum Joliet file name length (spec) */
#define JLONGMAX 103 /* out of spec Joliet file name length */
--
2.28.0

View File

@@ -0,0 +1,49 @@
From 8547f23c4416ed98f585c53c62e7d8afd8edab36 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 27 Jun 2017 21:05:31 -0700
Subject: [PATCH] genisoimage: Fix fprintf format errors
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
genisoimage/genisoimage.c | 4 ++--
genisoimage/tree.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/genisoimage/genisoimage.c b/genisoimage/genisoimage.c
index 46f0cb7..9089081 100644
--- a/genisoimage/genisoimage.c
+++ b/genisoimage/genisoimage.c
@@ -3406,7 +3406,7 @@ if (check_session == 0)
if (goof) {
fprintf(stderr, "ISO9660/Rock Ridge tree sort failed.\n");
if(merge_warn_msg)
- fprintf(stderr, merge_warn_msg);
+ fprintf(stderr, "%s", merge_warn_msg);
exit(1);
}
#ifdef UDF
@@ -3419,7 +3419,7 @@ if (check_session == 0)
if (goof) {
fprintf(stderr, "Joliet tree sort failed. The -joliet-long switch may help you.\n");
if(merge_warn_msg)
- fprintf(stderr, merge_warn_msg);
+ fprintf(stderr, "%s", merge_warn_msg);
exit(1);
}
/*
diff --git a/genisoimage/tree.c b/genisoimage/tree.c
index 7805888..8412cc3 100644
--- a/genisoimage/tree.c
+++ b/genisoimage/tree.c
@@ -647,7 +647,7 @@ got_valid_name:
fprintf(stderr, "Unable to sort directory %s\n",
this_dir->whole_name);
if(merge_warn_msg)
- fprintf(stderr, merge_warn_msg);
+ fprintf(stderr, "%s", merge_warn_msg);
exit(1);
}
/*
--
2.13.2

View File

@@ -0,0 +1,28 @@
From 6b698b7c1045d279fe24818d45c67d9884d5fd81 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 7 May 2021 15:10:04 +0800
Subject: [PATCH] install netscsid to bin for nativesdk
For Yocto, the nativesdk does not have sbin dir, use bin to relpace
Upstream-Status: Inappropriate [oe specific]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
netscsid/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/netscsid/CMakeLists.txt b/netscsid/CMakeLists.txt
index f6bddf1..cf23312 100644
--- a/netscsid/CMakeLists.txt
+++ b/netscsid/CMakeLists.txt
@@ -9,5 +9,5 @@ ADD_EXECUTABLE (netscsid netscsid.c)
#SET_SOURCE_FILES_PROPERTIES(netscsid.c )
TARGET_LINK_LIBRARIES(netscsid ${EXTRA_LIBS} )
#SET_TARGET_PROPERTIES(netscsid PROPERTIES SKIP_BUILD_RPATH TRUE)
-INSTALL(TARGETS netscsid DESTINATION sbin)
+INSTALL(TARGETS netscsid DESTINATION bin)
--
2.27.0

View File

@@ -0,0 +1,31 @@
From 510838b2c96a9b097b3ee2694cba1c3623b0bac7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 21 Sep 2017 22:38:05 -0700
Subject: [PATCH 2/2] Do not use rcmd on build with musl
cdrkit unconditionally enables code using rcmd(3), which isn't available
on musl.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
include/xconfig.h.in | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/include/xconfig.h.in b/include/xconfig.h.in
index 476c00b..6b4b298 100644
--- a/include/xconfig.h.in
+++ b/include/xconfig.h.in
@@ -186,8 +186,9 @@
* Instead use the tests AC_SMALL_FSEEKO/AC_SMALL/STELLO and make sure
* they are placed before the large file tests.
*/
-
+#ifdef __GLIBC__
#define HAVE_RCMD 1 /* rcmd() is present in libc/libsocket */
+#endif
#define HAVE_SOCKET 1 /* socket() is present in libc/libsocket */
#define HAVE_SOCKETPAIR 1 /* socketpair() is present in libc/libsocket */
#define HAVE_GETSERVBYNAME 1 /* getservbyname() is present in libc/libsocket */
--
2.14.1

View File

@@ -0,0 +1,17 @@
SUMMARY = "An open source MPEG-4 and MPEG-2 AAC decoding library"
HOMEPAGE = "http://www.audiocoding.com/faad2.html"
SECTION = "libs"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=381c8cbe277a7bc1ee2ae6083a04c958"
LICENSE_FLAGS = "commercial"
PV .= "+git${SRCPV}"
SRC_URI = "git://github.com/knik0/faad2.git;branch=master;protocol=https"
SRCREV = "df42c6fc018552519d140e3d8ffe7046ed48b0cf"
S = "${WORKDIR}/git"
inherit autotools lib_package

View File

@@ -0,0 +1,42 @@
Add a description to the AC_DEFINE statements so that it appears in config.h and silences a fatal warning.
Upstream-Status: Pending
Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
---
configure.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/configure.in b/configure.in
index abfe4cd..ce0d380 100644
--- a/configure.in
+++ b/configure.in
@@ -168,7 +168,7 @@ if test $has_iconv = 1; then
iconv_oldstyle=1, iconv_oldstyle=0)
if test $iconv_oldstyle = 1; then
AC_MSG_RESULT(const char **)
- AC_DEFINE(ID3LIB_ICONV_OLDSTYLE)
+ AC_DEFINE(ID3LIB_ICONV_OLDSTYLE,[1],[Old iconv prototype definition in iconv.h])
#we'll check out the need of
#typecast in the call of iconv_open
AC_MSG_CHECKING(whether to typecast in iconv)
@@ -184,7 +184,7 @@ if test $has_iconv = 1; then
iconv_cast=0, iconv_cast=1)
if test $iconv_cast = 1; then
AC_MSG_RESULT(yes)
- AC_DEFINE(ID3LIB_ICONV_CAST_OK)
+ AC_DEFINE(ID3LIB_ICONV_CAST_OK,[1],[Accepting const char ** in iconv prototype])
else
AC_MSG_RESULT(no)
fi
@@ -206,7 +206,7 @@ if test $has_iconv = 1; then
iconv_cast=0, iconv_cast=1)
if test $iconv_cast = 1; then
AC_MSG_RESULT(yes)
- AC_DEFINE(ID3LIB_ICONV_CAST_OK)
+ AC_DEFINE(ID3LIB_ICONV_CAST_OK,[1],[Accepting const char ** in iconv prototype])
else
AC_MSG_RESULT(no)
fi
--
2.0.0

View File

@@ -0,0 +1,53 @@
SUMMARY = "Library for interacting with ID3 tags"
SECTION = "libs/multimedia"
LICENSE = "LGPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
DEPENDS = "zlib"
PR = "r1"
SRC_URI = "${SOURCEFORGE_MIRROR}/id3lib/id3lib-${PV}.tar.gz;name=archive \
${DEBIAN_MIRROR}/main/i/id3lib3.8.3/id3lib3.8.3_3.8.3-16.2.debian.tar.xz;name=patch;subdir=${BP} \
file://acdefine.patch \
"
SRC_URI[archive.md5sum] = "19f27ddd2dda4b2d26a559a4f0f402a7"
SRC_URI[archive.sha256sum] = "2749cc3c0cd7280b299518b1ddf5a5bcfe2d1100614519b68702230e26c7d079"
SRC_URI[patch.md5sum] = "997c764d3be11c9a51779d93facf1118"
SRC_URI[patch.sha256sum] = "ac2ee23ec89ba2af51d2c6dd5b1b6bf9f8a9f813de251bc182941439a4053176"
inherit autotools
# Unlike other Debian packages, id3lib*.diff.gz contains another series of
# patches maintained by quilt. So manually apply them before applying other local
# patches. Also remove all temp files before leaving, because do_patch() will pop
# up all previously applied patches in the start
do_patch[depends] += "quilt-native:do_populate_sysroot"
id3lib_do_patch() {
cd ${S}
# it's important that we only pop the existing patches when they've
# been applied, otherwise quilt will climb the directory tree
# and reverse out some completely different set of patches
if [ -d ${S}/patches ]; then
# whilst this is the default directory, doing it like this
# defeats the directory climbing that quilt will otherwise
# do; note the directory must exist to defeat this, hence
# the test inside which we operate
QUILT_PATCHES=${S}/patches quilt pop -a
fi
if [ -d ${S}/.pc-${BPN} ]; then
rm -rf ${S}/.pc
mv ${S}/.pc-${BPN} ${S}/.pc
QUILT_PATCHES=${S}/debian/patches quilt pop -a
rm -rf ${S}/.pc ${S}/debian
fi
QUILT_PATCHES=${S}/debian/patches quilt push -a
mv ${S}/.pc ${S}/.pc-${BPN}
}
do_unpack[cleandirs] += "${S}"
# We invoke base do_patch at end, to incorporate any local patch
python do_patch() {
bb.build.exec_func('id3lib_do_patch', d)
bb.build.exec_func('patch_do_patch', d)
}

View File

@@ -0,0 +1,19 @@
Add musl/ppc mcontext differences specific checks to choose
correct gregs and context structure definitions
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/sigsegv.c
+++ b/sigsegv.c
@@ -95,7 +95,11 @@ static void signal_segv(int signum, sigi
for(i = 0; i < NGREG; i++)
a2j_error("reg[%02d] = 0x" REGFORMAT, i,
#if defined(__powerpc__) && !defined(__powerpc64__)
+# if defined(__GLIBC__)
ucontext->uc_mcontext.uc_regs[i]
+# else
+ ucontext->uc_regs->gregs[i]
+# endif
#elif defined(__powerpc64__)
ucontext->uc_mcontext.gp_regs[i]
#elif defined(__sparc__) && defined(__arch64__)

View File

@@ -0,0 +1,24 @@
Add riscv specific checks to choose correct gregs and context structure definitions
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/sigsegv.c
+++ b/sigsegv.c
@@ -91,7 +91,7 @@ static void signal_segv(int signum, sigi
a2j_error("info.si_errno = %d", info->si_errno);
a2j_error("info.si_code = %d (%s)", info->si_code, si_codes[info->si_code]);
a2j_error("info.si_addr = %p", info->si_addr);
-#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__)
+#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__) && !defined(__riscv)
for(i = 0; i < NGREG; i++)
a2j_error("reg[%02d] = 0x" REGFORMAT, i,
#if defined(__powerpc__) && !defined(__powerpc64__)
@@ -104,7 +104,7 @@ static void signal_segv(int signum, sigi
ucontext->uc_mcontext.gregs[i]
#endif
);
-#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64 */
+#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64 riscv */
#if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64)
# if defined(SIGSEGV_STACK_IA64)

View File

@@ -0,0 +1,29 @@
SUMMARY = "a2jmidid is daemon for exposing ALSA sequencer applications as JACK MIDI"
SECTION = "libs/multimedia"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = " \
file://LICENSE;md5=751419260aa954499f7abaabaa882bbe \
"
DEPENDS = "alsa-lib jack dbus"
DEPENDS:append:libc-musl = " libexecinfo"
SRCREV = "de37569c926c5886768f892c019e3f0468615038"
SRC_URI = " \
git://github.com/linuxaudio/a2jmidid;protocol=https;branch=master \
file://riscv_ucontext.patch \
file://ppc_musl_ucontext.patch \
"
S = "${WORKDIR}/git"
inherit meson pkgconfig
EXTRA_OEMESON = "-Db_lto=false"
LDFLAGS:append:libc-musl = " -lexecinfo"
export LINKFLAGS="${LDFLAGS}"
FILES:${PN} += "${datadir}/dbus-1/services"

View File

@@ -0,0 +1,53 @@
DESCRIPTION = "jackdmp is a C++ version of the JACK low-latency audio \
server for multi-processor machines. It is a new implementation of the \
JACK server core features that aims in removing some limitations of \
the JACK1 design. The activation system has been changed for a data \
flow model and lock-free programming techniques for graph access have \
been used to have a more dynamic and robust system."
SECTION = "libs/multimedia"
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
LIC_FILES_CHKSUM = " \
file://common/jack/control.h;beginline=2;endline=21;md5=e6df0bf30cde8b3b825451459488195d \
file://common/jack/jack.h;beginline=1;endline=19;md5=6b736ed6b810592b135480a5e853392e \
"
DEPENDS = "libsamplerate0 libsndfile1 readline"
SRC_URI = "git://github.com/jackaudio/jack2.git;branch=master;protocol=https"
SRCREV = "4f58969432339a250ce87fe855fb962c67d00ddb"
S = "${WORKDIR}/git"
inherit waf pkgconfig
PACKAGECONFIG ??= "alsa"
PACKAGECONFIG[alsa] = "--alsa=yes,--alsa=no,alsa-lib"
# --dbus only stops building jackd -> add --classic
PACKAGECONFIG[dbus] = "--dbus --classic,,dbus"
PACKAGECONFIG[opus] = "--opus=yes,--opus=no,libopus"
# portaudio is for windows builds only
EXTRA_OECONF = "--portaudio=no"
do_install:append() {
if ! ${@bb.utils.contains('PACKAGECONFIG', 'dbus', True, False, d)}; then
rm -f ${D}${bindir}/jack_control
fi
}
PACKAGES =+ "libjack jack-server jack-utils"
RDEPENDS:jack-dev:remove = "${PN} (= ${EXTENDPKGV})"
FILES:libjack = "${libdir}/*.so.* ${libdir}/jack/*.so"
FILES:jack-server = " \
${datadir}/dbus-1/services \
${bindir}/jackdbus \
${bindir}/jackd \
"
FILES:jack-utils = "${bindir}/*"
FILES:${PN}-doc += " ${datadir}/jack-audio-connection-kit/reference/html/*"
BBCLASSEXTEND = "native nativesdk"

View File

@@ -0,0 +1,27 @@
DESCRIPTION = "libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. It is mostly compatible with VSFilter."
HOMEPAGE = "https://github.com/libass/libass"
SECTION = "libs/multimedia"
LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://COPYING;md5=a42532a0684420bdb15556c3cdd49a75"
DEPENDS = "fontconfig freetype fribidi harfbuzz"
SRC_URI = "git://github.com/libass/libass.git;protocol=https;branch=0.17.1-branch"
SRCREV = "e8ad72accd3a84268275a9385beb701c9284e5b3"
S = "${WORKDIR}/git"
inherit autotools pkgconfig
PACKAGECONFIG[asm] = "--enable-asm,--disable-asm,nasm-native"
# use larger tiles in the rasterizer (better performance, slightly worse quality)
PACKAGECONFIG[largetiles] = "--enable-large-tiles,--disable-large-tiles"
PACKAGECONFIG ??= ""
PACKAGECONFIG:append:x86-64 = " asm"
PACKAGES =+ "${PN}-tests"
FILES:${PN}-tests = " \
${libdir}/test/test \
"

View File

@@ -0,0 +1,11 @@
SUMMARY = "Library for reading, mastering and writing optical discs"
HOMEPAGE = "http://libburnia-project.org/"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
SRC_URI = "http://files.libburnia-project.org/releases/${BPN}-${PV}.tar.gz"
SRC_URI[md5sum] = "454d03ce31addb5b7dca62d213c9660e"
SRC_URI[sha256sum] = "525059d10759c5cb8148eebc863bb510e311c663603da7bd2d21c46b7cf63b54"
inherit autotools pkgconfig

View File

@@ -0,0 +1,24 @@
SUMMARY = "library to read digital audio CDs with error correction"
HOMEPAGE = "http://www.gnu.org/software/libcdio/"
BUGTRUCKER = "https://github.com/rocky/libcdio-paranoia/issues/"
SECTION = "libs"
LICENSE = "GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS = "libcdio"
SRC_URI = "${GNU_MIRROR}/libcdio/${BP}.tar.bz2"
SRC_URI[sha256sum] = "33b1cf305ccfbfd03b43936975615000ce538b119989c4bec469577570b60e8a"
inherit autotools pkgconfig
PACKAGES += "${PN}-utils"
FILES:${PN} = "${libdir}/${BPN}${SOLIB}"
FILES:${PN}-utils = "${bindir}/*"
python libcdio_split_packages() {
libdir = d.expand('${libdir}')
do_split_packages(d, libdir, r'^lib(.*)\.so\..*', 'lib%s', 'libcdio %s library', extra_depends='', allow_links=True)
}
PACKAGESPLITFUNCS =+ "libcdio_split_packages"

View File

@@ -0,0 +1,40 @@
From e5e54be286bf6d8336b747503c803750bc674c57 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Oct 2021 01:28:18 -0700
Subject: [PATCH] Fix a few -Werror=format-security errors with mvprintw()
In all these places a non-constant is used as a format string which
compiler complains about. Fix by using "%s" as format.
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/cdda-player.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/cdda-player.c b/src/cdda-player.c
index 69eddee..8834d60 100644
--- a/src/cdda-player.c
+++ b/src/cdda-player.c
@@ -298,7 +298,7 @@ action(const char *psz_action)
psz_action);
else
snprintf(psz_action_line, sizeof(psz_action_line), "%s", "" );
- mvprintw(LINE_ACTION, 0, psz_action_line);
+ mvprintw(LINE_ACTION, 0, "%s", psz_action_line);
clrtoeol();
refresh();
}
@@ -1029,10 +1029,10 @@ display_tracks(void)
}
if (sub.track == i) {
attron(A_STANDOUT);
- mvprintw(i_line++, 0, line);
+ mvprintw(i_line++, 0, "%s", line);
attroff(A_STANDOUT);
} else
- mvprintw(i_line++, 0, line);
+ mvprintw(i_line++, 0, "%s", line);
clrtoeol();
}
}

View File

@@ -0,0 +1,34 @@
SUMMARY = "The GNU Compact Disc Input and Control library (libcdio) contains a library for CD-ROM and CD image access."
HOMEPAGE = "http://www.gnu.org/software/libcdio/"
SECTION = "libs"
LICENSE = "GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.bz2 \
file://0001-Fix-a-few-Werror-format-security-errors-with-mvprint.patch \
"
SRC_URI[md5sum] = "aa7629e8f73662a762f64c444b901055"
SRC_URI[sha256sum] = "8550e9589dbd594bfac93b81ecf129b1dc9d0d51e90f9696f1b2f9b2af32712b"
inherit autotools pkgconfig
PACKAGECONFIG ??= "cdda-player"
PACKAGECONFIG[cdda-player] = "--with-cdda-player,--without-cdda-player,ncurses"
PACKAGECONFIG[cddb] = "--enable-cddb,--disable-cddb,libcddb"
PACKAGECONFIG[vcd-info] = "--enable-vcd-info,--disable-vcd-info,vcdimager"
# add -D_LARGEFILE64_SOURCE for 32bit targets
CFLAGS += "${@['-D_LARGEFILE64_SOURCE',''][d.getVar('SITEINFO_BITS') != '32']}"
PACKAGES += "${PN}-utils"
FILES:${PN} = "${libdir}/${BPN}${SOLIB}"
FILES:${PN}-utils = "${bindir}/*"
python libcdio_split_packages() {
libdir = d.expand('${libdir}')
do_split_packages(d, libdir, r'^lib(.*)\.so\..*', 'lib%s', 'libcdio %s library', extra_depends='', allow_links=True)
}
PACKAGESPLITFUNCS =+ "libcdio_split_packages"

View File

@@ -0,0 +1,11 @@
SUMMARY = "DVD access multimeda library"
SECTION = "libs/multimedia"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=64e753fa7d1ca31632bc383da3b57c27"
SRC_URI = "http://download.videolan.org/pub/videolan/libdvdread/${PV}/libdvdread-${PV}.tar.bz2"
SRC_URI[sha256sum] = "ce35454997a208cbe50e91232f0e73fb1ac3471965813a13b8730a8f18a15369"
inherit autotools lib_package binconfig pkgconfig
CONFIGUREOPTS:remove = "--disable-silent-rules"

View File

@@ -0,0 +1,40 @@
From 91fcf66b9182c75cd2b96d88991d5a1c6307d4b4 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Wed, 2 Aug 2017 16:27:52 +0300
Subject: [PATCH] Fix gperf 3.1 incompatibility.
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
compat.h | 2 +-
frametype.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/compat.h b/compat.h
index 8af71ec..b3d80d9 100644
--- a/compat.h
+++ b/compat.h
@@ -34,7 +34,7 @@ struct id3_compat {
};
struct id3_compat const *id3_compat_lookup(register char const *,
- register unsigned int);
+ register size_t);
int id3_compat_fixup(struct id3_tag *);
diff --git a/frametype.h b/frametype.h
index dd064b2..b5b7593 100644
--- a/frametype.h
+++ b/frametype.h
@@ -37,6 +37,6 @@ extern struct id3_frametype const id3_frametype_unknown;
extern struct id3_frametype const id3_frametype_obsolete;
struct id3_frametype const *id3_frametype_lookup(register char const *,
- register unsigned int);
+ register size_t);
# endif
--
2.13.2

View File

@@ -0,0 +1,34 @@
libid3tag: patch for CVE-2004-2779
The patch comes from
https://sources.debian.org/patches/libid3tag/0.15.1b-13/10_utf16.dpatch
Upstream-Status: Pending
CVE: CVE-2004-2779
CVE: CVE-2017-11551
Signed-off-by: Changqing Li <changqing.li@windriver.com>
diff -urNad libid3tag-0.15.1b/utf16.c /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c
--- libid3tag-0.15.1b/utf16.c 2006-01-13 15:26:29.000000000 +0100
+++ /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c 2006-01-13 15:27:19.000000000 +0100
@@ -282,5 +282,18 @@
free(utf16);
+ if (end == *ptr && length % 2 != 0)
+ {
+ /* We were called with a bogus length. It should always
+ * be an even number. We can deal with this in a few ways:
+ * - Always give an error.
+ * - Try and parse as much as we can and
+ * - return an error if we're called again when we
+ * already tried to parse everything we can.
+ * - tell that we parsed it, which is what we do here.
+ */
+ (*ptr)++;
+ }
+
return ucs4;
}

View File

@@ -0,0 +1,43 @@
Upstream-Status: Inappropriate [configuration]
Index: libid3tag-0.15.1b/Makefile.am
===================================================================
--- libid3tag-0.15.1b.orig/Makefile.am 2009-07-29 09:29:20.000000000 +0100
+++ libid3tag-0.15.1b/Makefile.am 2009-07-29 09:29:47.000000000 +0100
@@ -27,6 +27,9 @@
lib_LTLIBRARIES = libid3tag.la
include_HEADERS = id3tag.h
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = id3tag.pc
+
## From the libtool documentation on library versioning:
##
## CURRENT
Index: libid3tag-0.15.1b/configure.ac
===================================================================
--- libid3tag-0.15.1b.orig/configure.ac 2009-07-29 09:27:15.000000000 +0100
+++ libid3tag-0.15.1b/configure.ac 2009-07-29 09:27:45.000000000 +0100
@@ -201,5 +201,5 @@
dnl AC_SUBST(LTLIBOBJS)
AC_CONFIG_FILES([Makefile msvc++/Makefile \
- libid3tag.list])
+ libid3tag.list id3tag.pc])
AC_OUTPUT
Index: libid3tag-0.15.1b/id3tag.pc.in
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ libid3tag-0.15.1b/id3tag.pc.in 2009-07-29 09:29:10.000000000 +0100
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: id3tag
+Description: ID3 tag reading library
+Requires:
+Version: @VERSION@
+Libs: -L${libdir} -lid3tag -lz
+Cflags: -I${includedir}

View File

@@ -0,0 +1,19 @@
configure contains CFLAGS filtering code which was removing our prefix-map
flags. We need those to generate reproducible binaries. Allow them through.
Upstream-Status: Pending
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
--- a/configure.ac
+++ b/configure.ac
@@ -99,6 +99,10 @@ do
-mno-cygwin)
shift
;;
+ -fmacro-prefix-map*|-fdebug-prefix-map*|-ffile-prefix-map*)
+ CFLAGS="$CFLAGS $1"
+ shift
+ ;;
-m*)
arch="$arch $1"
shift

View File

@@ -0,0 +1,15 @@
Upstream-Status: Submitted [https://sourceforge.net/tracker/?func=detail&aid=3599280&group_id=12349&atid=112349]
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
diff -Nurd libid3tag-0.15.1b/configure.ac libid3tag-0.15.1b/configure.ac
--- libid3tag-0.15.1b/configure.ac 2004-01-24 01:22:46.000000000 +0200
+++ libid3tag-0.15.1b/configure.ac 2013-01-03 06:41:02.734835014 +0200
@@ -28,7 +28,7 @@
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([foreign])
-AM_CONFIG_HEADER([config.h])
+AC_CONFIG_HEADERS([config.h])
dnl System type.

View File

@@ -0,0 +1,39 @@
In case of an unknown/invalid encoding, id3_parse_string() will
return NULL, but the return value wasn't checked resulting
in segfault in id3_ucs4_length(). This is the only place
the return value wasn't checked.
Patch taken from Debian:
https://sources.debian.org/patches/libid3tag/0.15.1b-14/11_unknown_encoding.dpatch/
CVE: CVE-2017-11550
Upstream-Status: Pending
Signed-off-by: Ross Burton <ross.burton@intel.com>
diff -urNad libid3tag-0.15.1b~/compat.gperf libid3tag-0.15.1b/compat.gperf
--- libid3tag-0.15.1b~/compat.gperf 2004-01-23 09:41:32.000000000 +0000
+++ libid3tag-0.15.1b/compat.gperf 2007-01-14 14:36:53.000000000 +0000
@@ -236,6 +236,10 @@
encoding = id3_parse_uint(&data, 1);
string = id3_parse_string(&data, end - data, encoding, 0);
+ if (!string)
+ {
+ continue;
+ }
if (id3_ucs4_length(string) < 4) {
free(string);
diff -urNad libid3tag-0.15.1b~/parse.c libid3tag-0.15.1b/parse.c
--- libid3tag-0.15.1b~/parse.c 2004-01-23 09:41:32.000000000 +0000
+++ libid3tag-0.15.1b/parse.c 2007-01-14 14:37:34.000000000 +0000
@@ -165,6 +165,9 @@
case ID3_FIELD_TEXTENCODING_UTF_8:
ucs4 = id3_utf8_deserialize(ptr, length);
break;
+ default:
+ /* FIXME: Unknown encoding! Print warning? */
+ return NULL;
}
if (ucs4 && !full) {

View File

@@ -0,0 +1,28 @@
SUMMARY = "Library for interacting with ID3 tags in MP3 files"
HOMEPAGE = "http://sourceforge.net/projects/mad/"
BUGTRACKER = "http://sourceforge.net/tracker/?group_id=12349&atid=112349"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://COPYRIGHT;md5=5e6279efb87c26c6e5e7a68317a6a87a \
file://version.h;beginline=1;endline=8;md5=86ac68b67f054b7afde9e149bbc3fe63"
SECTION = "libs"
DEPENDS = "zlib gperf-native"
PR = "r7"
SRC_URI = "${SOURCEFORGE_MIRROR}/mad/libid3tag-${PV}.tar.gz \
file://addpkgconfig.patch \
file://obsolete_automake_macros.patch \
file://0001-Fix-gperf-3.1-incompatibility.patch \
file://10_utf16.patch \
file://unknown-encoding.patch \
file://cflags_filter.patch \
"
UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/mad/files/libid3tag/"
UPSTREAM_CHECK_REGEX = "/projects/mad/files/libid3tag/(?P<pver>.*)/$"
SRC_URI[md5sum] = "e5808ad997ba32c498803822078748c3"
SRC_URI[sha256sum] = "63da4f6e7997278f8a3fef4c6a372d342f705051d1eeb6a46a86b03610e26151"
S = "${WORKDIR}/libid3tag-${PV}"
inherit autotools pkgconfig

View File

@@ -0,0 +1,47 @@
From 26342d1c775205f661f5cf005b7e054a04f5d32e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 16 May 2023 10:14:57 -0700
Subject: [PATCH] configure: Respect the cflags from environment
This is needed with OE like cross-build envs where certain important
flags maybe passed as global policy to aid cross compiling or
reproducibility etc.
Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
configure.ac | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
--- a/configure.ac
+++ b/configure.ac
@@ -73,12 +73,9 @@ debug=""
optimize=""
profile=""
-set -- $CFLAGS
-CFLAGS=""
-
if test "$GCC" = yes
then
- CFLAGS="-Wall"
+ CFLAGS="$CFLAGS -Wall"
fi
while test $# -gt 0
@@ -115,10 +112,13 @@ do
optimize="$optimize $1"
shift
;;
- *)
+ -*)
CFLAGS="$CFLAGS $1"
shift
;;
+ *)
+ shift
+ ;;
esac
done

View File

@@ -0,0 +1,83 @@
From 3d3fce9b8b927a817b89dd78a60b5cf7d978f64c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
Date: Tue, 16 Sep 2014 12:28:47 +0300
Subject: [PATCH 4/4] Remove clang unsupported compiler flags
---
configure.ac | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
--- a/configure.ac
+++ b/configure.ac
@@ -124,70 +124,7 @@ done
if test "$GCC" = yes
then
- if test -z "$arch"
- then
- case "$host" in
- i386-*) ;;
- i?86-*) arch="-march=i486" ;;
- arm*-empeg-*) arch="-march=armv4 -mtune=strongarm1100" ;;
- armv4*-*) arch="-march=armv4 -mtune=strongarm" ;;
- powerpc-*) ;;
- mips*-agenda-*) arch="-mcpu=vr4100" ;;
- mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;;
- esac
- fi
-
- case "$optimize" in
- -O|"-O "*)
- optimize="-O"
- optimize="$optimize -fforce-addr"
- : #x optimize="$optimize -finline-functions"
- : #- optimize="$optimize -fstrength-reduce"
- optimize="$optimize -fthread-jumps"
- optimize="$optimize -fcse-follow-jumps"
- optimize="$optimize -fcse-skip-blocks"
- : #x optimize="$optimize -frerun-cse-after-loop"
- : #x optimize="$optimize -frerun-loop-opt"
- : #x optimize="$optimize -fgcse"
- optimize="$optimize -fexpensive-optimizations"
- optimize="$optimize -fregmove"
- : #* optimize="$optimize -fdelayed-branch"
- : #x optimize="$optimize -fschedule-insns"
- optimize="$optimize -fschedule-insns2"
- : #? optimize="$optimize -ffunction-sections"
- : #? optimize="$optimize -fcaller-saves"
- : #> optimize="$optimize -funroll-loops"
- : #> optimize="$optimize -funroll-all-loops"
- : #x optimize="$optimize -fmove-all-movables"
- : #x optimize="$optimize -freduce-all-givs"
- : #? optimize="$optimize -fstrict-aliasing"
- : #* optimize="$optimize -fstructure-noalias"
-
- case "$host" in
- arm*-*)
- optimize="$optimize -fstrength-reduce"
- ;;
- mips*-*)
- optimize="$optimize -fstrength-reduce"
- optimize="$optimize -finline-functions"
- ;;
- i?86-*)
- optimize="$optimize -fstrength-reduce"
- ;;
- powerpc-apple-*)
- # this triggers an internal compiler error with gcc2
- : #optimize="$optimize -fstrength-reduce"
-
- # this is really only beneficial with gcc3
- : #optimize="$optimize -finline-functions"
- ;;
- *)
- # this sometimes provokes bugs in gcc 2.95.2
- : #optimize="$optimize -fstrength-reduce"
- ;;
- esac
- ;;
- esac
+ optimize="-O2"
fi
case "$host" in

View File

@@ -0,0 +1,70 @@
Here is a patch for adding pkg-config support to libmad.
It would make life a bit easier for distro maintainers if this was applied.
In case you didn't know, pkg-config is a tool for providing LDFLAGS and
CFLAGS for packages using shared libraries. It's on freedesktop.org.
Debian has already been distributing the pkg-config file mad.pc with
libmad for some time, and people developing on debian (notably xmms2
developers) have started relying on this support being present, causing
some confusion for people installing from source and on some BSDs which
do not provide mad.pc (google: pkgconfig libmad).
EMH
Upstream-Status: Inappropriate [configuration]
--h31gzZEtNLTqOjlF
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=&quot;libmad-0.15.1b-pkgconfig.patch&quot;
diff -Naur libmad-0.15.1b.old/configure.ac libmad-0.15.1b/configure.ac
--- libmad-0.15.1b.old/configure.ac 2004-01-23 10:41:32.000000000 +0100
+++ libmad-0.15.1b/configure.ac 2004-08-07 02:25:24.633462168 +0200
@@ -429,5 +429,5 @@
dnl AC_SUBST(LTLIBOBJS)
AC_CONFIG_FILES([Makefile msvc++/Makefile \
- libmad.list])
+ libmad.list mad.pc])
AC_OUTPUT
diff -Naur libmad-0.15.1b.old/mad.pc.in libmad-0.15.1b/mad.pc.in
--- libmad-0.15.1b.old/mad.pc.in 1970-01-01 01:00:00.000000000 +0100
+++ libmad-0.15.1b/mad.pc.in 2004-08-07 02:04:59.617692872 +0200
@@ -0,0 +1,14 @@
+# libmad pkg-config source file
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: mad
+Description: MPEG Audio Decoder
+Version: @VERSION@
+Requires:
+Conflicts:
+Libs: -L${libdir} -lmad -lm
+Cflags: -I${includedir}
diff -Naur libmad-0.15.1b.old/Makefile.am libmad-0.15.1b/Makefile.am
--- libmad-0.15.1b.old/Makefile.am 2004-02-17 03:02:03.000000000 +0100
+++ libmad-0.15.1b/Makefile.am 2004-08-07 02:03:19.859858368 +0200
@@ -24,6 +24,9 @@
SUBDIRS =
DIST_SUBDIRS = msvc++
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = mad.pc
+
lib_LTLIBRARIES = libmad.la
include_HEADERS = mad.h
@@ -34,7 +37,8 @@
minimad_LDADD = libmad.la
EXTRA_DIST = mad.h.sed \
- CHANGES COPYRIGHT CREDITS README TODO VERSION
+ CHANGES COPYRIGHT CREDITS README TODO VERSION \
+ mad.pc.in
exported_headers = version.h fixed.h bit.h timer.h stream.h frame.h \
synth.h decoder.h

View File

@@ -0,0 +1,12 @@
Pass foreign to AM_INIT_AUTOMAKE so it doesn't enforce GNU strictness.
Upstream-Status: Pending
Signed-off-by: Ross Burton <ross.burton@intel.com>
diff --git a/configure.ac b/configure.ac
index e602fd3..e075b86 100644
--- a/configure.ac
+++ b/configure.ac
@@ -29 +29 @@ AC_CONFIG_SRCDIR([decoder.h])
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([foreign])

View File

@@ -0,0 +1,31 @@
gcc 4.4 did this: The MIPS port no longer recognizes the h asm constraint. It was necessary to remove this constraint in order to avoid generating unpredictable code sequences.
so the libmad build with gcc-4.5.0 was failing.
Found a solution here:
http://us.generation-nt.com/answer/bug-568418-libmad0-dev-mpg321-compilation-errors-mips-mipsel-architectures-help-169033451.html
Upstream-Status: Pending
2010/07/29
Nitin A Kamble <nitin.a.kamble@intel.com>
--- a/fixed.h
+++ b/fixed.h
@@ -297,6 +297,15 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t
/* --- MIPS ---------------------------------------------------------------- */
+# elif defined(FPM_MIPS) && (defined(__clang__) || __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
+ typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
+# define MAD_F_MLX(hi, lo, x, y) \
+ do { \
+ u64_di_t __ll = (u64_di_t) (x) * (y); \
+ hi = __ll >> 32; \
+ lo = __ll; \
+ } while (0)
+
# elif defined(FPM_MIPS)
/*

View File

@@ -0,0 +1,18 @@
This option no longer exists in gcc 3.4.1
RP - 18/07/2008
Upstream-Status: Inappropriate [configuration]
Index: libmad-0.15.1b/configure.ac
===================================================================
--- libmad-0.15.1b.orig/configure.ac 2008-07-18 15:45:30.000000000 +0100
+++ libmad-0.15.1b/configure.ac 2008-07-18 15:45:37.000000000 +0100
@@ -140,7 +140,6 @@
case "$optimize" in
-O|"-O "*)
optimize="-O"
- optimize="$optimize -fforce-mem"
optimize="$optimize -fforce-addr"
: #x optimize="$optimize -finline-functions"
: #- optimize="$optimize -fstrength-reduce"

View File

@@ -0,0 +1,14 @@
Upstream-Status: Submitted [https://sourceforge.net/tracker/?group_id=12349&atid=112349]
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
diff -Nurd libmad-0.15.1b/configure.ac libmad-0.15.1b/configure.ac
--- libmad-0.15.1b/configure.ac 2004-01-23 11:41:32.000000000 +0200
+++ libmad-0.15.1b/configure.ac 2013-01-03 08:28:23.718693697 +0200
@@ -28,7 +28,7 @@
AM_INIT_AUTOMAKE
-AM_CONFIG_HEADER([config.h])
+AC_CONFIG_HEADERS([config.h])
dnl System type.

View File

@@ -0,0 +1,38 @@
SUMMARY = "MPEG Audio Decoder library"
HOMEPAGE = "http://sourceforge.net/projects/mad/"
BUGTRACKER = "http://sourceforge.net/tracker/?group_id=12349&atid=112349"
LICENSE = "GPL-2.0-or-later"
LICENSE_FLAGS = "commercial"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://COPYRIGHT;md5=8e55eb14894e782b84488d5a239bc23d \
file://version.h;beginline=1;endline=8;md5=aa07311dd39288d4349f28e1de516454"
SECTION = "libs"
DEPENDS = "libid3tag"
PR = "r3"
SRC_URI = "ftp://ftp.mars.org/pub/mpeg/libmad-${PV}.tar.gz \
file://no-force-mem.patch \
file://add-pkgconfig.patch \
file://fix_for_mips_with_gcc-4.5.0.patch \
file://obsolete_automake_macros.patch \
file://automake-foreign.patch \
file://0001-configure-Respect-the-cflags-from-environment.patch \
"
SRC_URI:append:toolchain-clang = " file://0004-Remove-clang-unsupported-compiler-flags.patch "
SRC_URI[md5sum] = "1be543bc30c56fb6bea1d7bf6a64e66c"
SRC_URI[sha256sum] = "bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690"
S = "${WORKDIR}/libmad-${PV}"
inherit autotools pkgconfig
EXTRA_OECONF = "-enable-speed --enable-shared"
EXTRA_OECONF:append:arm = " --enable-fpm=arm"
do_configure:prepend () {
# damn picky automake...
touch NEWS AUTHORS ChangeLog
}
ARM_INSTRUCTION_SET = "arm"

View File

@@ -0,0 +1,20 @@
SUMMARY = "MMS stream protocol library"
HOMEPAGE = "http://sourceforge.net/projects/libmms/"
SECTION = "libs/multimedia"
LICENSE = "LGPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=fad9b3332be894bab9bc501572864b29"
SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${PV}/${BP}.tar.gz"
SRC_URI[md5sum] = "d6b665b335a6360e000976e770da7691"
SRC_URI[sha256sum] = "3c05e05aebcbfcc044d9e8c2d4646cd8359be39a3f0ba8ce4e72a9094bee704f"
inherit autotools pkgconfig
do_install:append() {
# The GLib dependency was removed in libmms 0.6.3, but the
# "Requires" was not removed from the pkg-config file. Since we
# don't have (and don't want) the RDEPENDS on GLib, we should
# remove the "Requires" line.
sed -i '/^Requires: glib-2\.0$/d' ${D}${libdir}/pkgconfig/libmms.pc
}

View File

@@ -0,0 +1,38 @@
From 7a25d5def379db387de9237f0b03605b3ae277b6 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 17 Jan 2023 11:32:59 -0800
Subject: [PATCH] fastmix: Drop 'register' storage class keyword
It has been dropped from laters C/C++ standards ( c++17 and newer )
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/fastmix.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/fastmix.cpp b/src/fastmix.cpp
index d693d20..aa51c4a 100644
--- a/src/fastmix.cpp
+++ b/src/fastmix.cpp
@@ -288,7 +288,7 @@ CzWINDOWEDFIR sfir;
// MIXING MACROS
// ----------------------------------------------------------------------------
#define SNDMIX_BEGINSAMPLELOOP8\
- register MODCHANNEL * const pChn = pChannel;\
+ MODCHANNEL * const pChn = pChannel;\
nPos = pChn->nPosLo;\
const signed char *p = (signed char *)(pChn->pCurrentSample+pChn->nPos);\
if (pChn->dwFlags & CHN_STEREO) p += pChn->nPos;\
@@ -296,7 +296,7 @@ CzWINDOWEDFIR sfir;
do {
#define SNDMIX_BEGINSAMPLELOOP16\
- register MODCHANNEL * const pChn = pChannel;\
+ MODCHANNEL * const pChn = pChannel;\
nPos = pChn->nPosLo;\
const signed short *p = (signed short *)(pChn->pCurrentSample+(pChn->nPos*2));\
if (pChn->dwFlags & CHN_STEREO) p += pChn->nPos;\
--
2.39.0

View File

@@ -0,0 +1,21 @@
SUMMARY = "Library for reading mod-like audio files"
HOMEPAGE = "http://modplug-xmms.sf.net"
LICENSE = "PD"
LIC_FILES_CHKSUM = "file://COPYING;md5=c9182faa1f7c316f7b97d404bcbe3685"
SRC_URI = "${SOURCEFORGE_MIRROR}/modplug-xmms/libmodplug-${PV}.tar.gz \
file://0001-fastmix-Drop-register-storage-class-keyword.patch"
SRC_URI[sha256sum] = "457ca5a6c179656d66c01505c0d95fafaead4329b9dbaa0f997d00a3508ad9de"
inherit autotools pkgconfig
EXTRA_OECONF = "--disable-option-checking"
# NOTE: autotools_stage_all does nothing here, we need to do it manually
do_install:append() {
install -d ${D}${includedir}/libmodplug
install -m 0644 ${S}/src/modplug.h ${D}${includedir}/libmodplug
install -m 0644 ${S}/src/modplug.h ${D}${includedir}/
}

View File

@@ -0,0 +1,55 @@
SUMMARY = "Opus Audio Codec"
DESCRIPTION = "The Opus codec is designed for interactive \
speech and audio transmission over the Internet. It is \
designed by the IETF Codec Working Group and incorporates \
technology from Skype's SILK codec and Xiph.Org's CELT codec."
HOMEPAGE = "http://www.opus-codec.org/"
SECTION = "libs/multimedia"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=e304cdf74c2a1b0a33a5084c128a23a3"
SRC_URI = "http://downloads.xiph.org/releases/opus/opus-${PV}.tar.gz"
SRC_URI[md5sum] = "d7c07db796d21c9cf1861e0c2b0c0617"
SRC_URI[sha256sum] = "65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d"
S = "${WORKDIR}/opus-${PV}"
inherit autotools pkgconfig
PACKAGECONFIG ??= ""
PACKAGECONFIG[fixed-point] = "--enable-fixed-point,,"
PACKAGECONFIG[float-approx] = "--enable-float-approx,,"
EXTRA_OECONF = " \
--with-NE10-includes=${STAGING_DIR_TARGET}${includedir} \
--with-NE10-libraries=${STAGING_DIR_TARGET}${libdir} \
--enable-asm \
--enable-intrinsics \
--enable-custom-modes \
"
# ne10 is available only for armv7a, armv7ve and aarch64
DEPENDS:append:aarch64 = " ne10"
DEPENDS:append:armv7a = " ne10"
DEPENDS:append:armv7ve = " ne10"
python () {
if d.getVar('TARGET_FPU') in [ 'soft' ]:
d.appendVar('PACKAGECONFIG', ' fixed-point')
}
# Fails to build with thumb-1 (qemuarm)
#| {standard input}: Assembler messages:
#| {standard input}:389: Error: selected processor does not support Thumb mode `smull r5,r7,r1,r4'
#| {standard input}:418: Error: selected processor does not support Thumb mode `smull r5,r6,r4,r1'
#| {standard input}:448: Error: selected processor does not support Thumb mode `smull r4,r5,r1,r0'
#| {standard input}:474: Error: selected processor does not support Thumb mode `smull r0,r4,r8,r1'
#| {standard input}:510: Error: selected processor does not support Thumb mode `smull fp,r0,r10,r1'
#| {standard input}:553: Error: selected processor does not support Thumb mode `smull fp,r1,r10,r3'
#| {standard input}:741: Error: selected processor does not support Thumb mode `smull r3,r0,r6,r10'
#| {standard input}:761: Error: selected processor does not support Thumb mode `smull fp,r2,r3,r9'
#| {standard input}:773: Error: selected processor does not support Thumb mode `smull fp,r3,r5,r8'
#| make[2]: *** [celt/celt.lo] Error 1
ARM_INSTRUCTION_SET:armv5 = "arm"
BBCLASSEXTEND = "native nativesdk"

View File

@@ -0,0 +1,19 @@
SUMMARY = "Opus Audio Codec"
DESCRIPTION = "The libopusenc libraries provide a high-level API for encoding \
.opus files. libopusenc depends only on libopus."
HOMEPAGE = "http://www.opus-codec.org/"
SECTION = "libs/multimedia"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=174b92049c2c697eb73112801662a07c"
DEPENDS = "libopus"
UPSTREAM_CHECK_URI = "https://github.com/xiph/libopusenc/releases"
SRC_URI = "https://ftp.osuosl.org/pub/xiph/releases/opus/libopusenc-${PV}.tar.gz"
SRC_URI[md5sum] = "f038ea0f4168d184c76b42d293697c57"
SRC_URI[sha256sum] = "8298db61a8d3d63e41c1a80705baa8ce9ff3f50452ea7ec1c19a564fe106cbb9"
S = "${WORKDIR}/libopusenc-${PV}"
inherit autotools pkgconfig

View File

@@ -0,0 +1,17 @@
COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_STRSTREAM=1 -D_LARGEFILE_SOURCE=1
C = c
C_COMPILER = $(CC)
C_FLAGS = $(COMPILE_OPTS)
CPP = cpp
CPLUSPLUS_COMPILER = $(CXX)
CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1
OBJ = o
LINK = $(CXX) -o
LINK_OPTS = -L.
CONSOLE_LINK_OPTS = $(LINK_OPTS)
LIBRARY_LINK = $(LD) -o
LIBRARY_LINK_OPTS = $(LINK_OPTS) -r -Bstatic
LIB_SUFFIX = a
LIBS_FOR_CONSOLE_APPLICATION = -lssl -lcrypto
LIBS_FOR_GUI_APPLICATION =
EXE =

View File

@@ -0,0 +1,63 @@
# live555 OE build file
# Copyright (C) 2005, Koninklijke Philips Electronics NV. All Rights Reserved
# Released under the MIT license (see packages/COPYING)
DESCRIPTION = "LIVE555 Streaming Media libraries"
HOMEPAGE = "http://live.com/"
LICENSE = "LGPL-3.0-only"
SECTION = "devel"
DEPENDS = "openssl"
URLV = "${@d.getVar('PV')[0:4]}.${@d.getVar('PV')[4:6]}.${@d.getVar('PV')[6:8]}"
SRC_URI = "https://download.videolan.org/pub/contrib/live555/live.${URLV}.tar.gz \
file://config.linux-cross"
# only latest live version stays on http://www.live555.com/liveMedia/public/, add mirror for older
MIRRORS += "http://www.live555.com/liveMedia/public/ http://download.videolan.org/contrib/live555/ \n"
SRC_URI[sha256sum] = "ce95a1c79f6d18e959f9dc129b8529b711c60e76754acc285e60946303b923ec"
S = "${WORKDIR}/live"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02 \
"
TARGET_CC_ARCH += "${LDFLAGS}"
do_configure() {
cp ${WORKDIR}/config.linux-cross .
echo "COMPILE_OPTS+=" -fPIC -DXLOCALE_NOT_USED"" >> config.linux-cross
./genMakefiles linux-cross
}
do_install() {
install -d ${D}${includedir}/BasicUsageEnvironment
install -d ${D}${includedir}/groupsock
install -d ${D}${includedir}/liveMedia
install -d ${D}${includedir}/UsageEnvironment
install -d ${D}${libdir}
cp -R --no-dereference --preserve=mode,links -v ${S}/BasicUsageEnvironment/include/*.hh ${D}${includedir}/BasicUsageEnvironment/
cp -R --no-dereference --preserve=mode,links -v ${S}/groupsock/include/*.h ${D}${includedir}/groupsock/
cp -R --no-dereference --preserve=mode,links -v ${S}/groupsock/include/*.hh ${D}${includedir}/groupsock/
cp -R --no-dereference --preserve=mode,links -v ${S}/liveMedia/include/*.hh ${D}${includedir}/liveMedia/
cp -R --no-dereference --preserve=mode,links -v ${S}/UsageEnvironment/include/*.hh ${D}${includedir}/UsageEnvironment/
# Find all the headers
for i in $(find . -name "*.hh") $(find . -name "*.h") ; do
install ${i} ${D}${includedir}
done
cp ${S}/*/*.a ${D}${libdir}
install -d ${D}${bindir}
for i in MPEG2TransportStreamIndexer openRTSP playSIP sapWatch testMPEG1or2ProgramToTransportStream testMPEG1or2Splitter testMPEG1or2VideoReceiver testMPEG2TransportStreamTrickPlay testOnDemandRTSPServer testRelay testAMRAudioStreamer testDVVideoStreamer testMP3Receiver testMP3Streamer testMPEG1or2AudioVideoStreamer testMPEG1or2VideoStreamer testMPEG2TransportStreamer testMPEG4VideoStreamer testWAVAudioStreamer vobStreamer; do
install -m 0755 ${S}/testProgs/${i} ${D}${bindir}/
done
install -m 0755 ${S}/mediaServer/live555MediaServer ${D}${bindir}/
}
RDEPENDS:${PN}-dev = ""
PACKAGES =+ "live555-openrtsp live555-playsip live555-mediaserver live555-examples"
FILES:live555-openrtsp = "${bindir}/openRTSP"
FILES:live555-playsip = "${bindir}/playSIP"
FILES:live555-mediaserver = "${bindir}/live555MediaServer"
FILES:live555-examples = "${bindir}/*"

View File

@@ -0,0 +1,28 @@
DESCRIPTION = "libmikmod is a module player library supporting many formats, including mod, s3m, it, and xm."
SECTION = "libs"
LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c"
DEPENDS = "alsa-lib texinfo"
SRC_URI = "\
${SOURCEFORGE_MIRROR}/project/mikmod/${BPN}/${PV}/${BPN}-${PV}.tar.gz \
"
SRC_URI[md5sum] = "f69d7dd06d307e888f466fc27f4f680b"
SRC_URI[sha256sum] = "ad9d64dfc8f83684876419ea7cd4ff4a41d8bcd8c23ef37ecb3a200a16b46d19"
inherit autotools binconfig lib_package
EXTRA_OECONF = "\
--disable-af \
--enable-alsa \
--disable-esd \
--enable-oss \
--disable-sam9407 \
--disable-ultra \
--disable-esdtest \
--enable-threads \
"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio"

View File

@@ -0,0 +1,116 @@
SUMMARY = "Open Source multimedia player"
DESCRIPTION = "mpv is a fork of mplayer2 and MPlayer. It shares some features with the former projects while introducing many more."
SECTION = "multimedia"
HOMEPAGE = "http://www.mpv.io/"
DEPENDS = " \
zlib \
ffmpeg \
jpeg \
libv4l \
libass \
"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRCREV_mpv = "140ec21c89d671d392877a7f3b91d67e7d7b9239"
SRC_URI = "git://github.com/mpv-player/mpv;name=mpv;branch=release/0.35;protocol=https \
https://waf.io/waf-2.0.25;name=waf;subdir=git \
"
SRC_URI[waf.sha256sum] = "21199cd220ccf60434133e1fd2ab8c8e5217c3799199c82722543970dc8e38d5"
S = "${WORKDIR}/git"
inherit waf pkgconfig mime-xdg
LDFLAGS:append:riscv64 = " -latomic"
LUA ?= "lua"
LUA:mips64 = ""
LUA:powerpc64 = ""
LUA:powerpc64le = ""
LUA:riscv64 = ""
LUA:riscv32 = ""
LUA:powerpc = ""
# Note: lua is required to get on-screen-display (controls)
PACKAGECONFIG ??= " \
${LUA} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \
${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \
${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)} \
"
PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11 xsp libxv libxscrnsaver libxinerama libxpresent libxext"
PACKAGECONFIG[xv] = "--enable-xv,--disable-xv,libxv"
PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl"
PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl"
PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm"
PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/libgbm"
PACKAGECONFIG[lua] = "--enable-lua,--disable-lua,lua luajit"
PACKAGECONFIG[libarchive] = "--enable-libarchive,--disable-libarchive,libarchive"
PACKAGECONFIG[jack] = "--enable-jack, --disable-jack, jack"
PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native libxkbcommon"
python __anonymous() {
packageconfig = (d.getVar("PACKAGECONFIG") or "").split()
extras = []
if "x11" in packageconfig and "opengl" in packageconfig:
extras.append(" --enable-gl-x11")
if "x11" in packageconfig and "egl" in packageconfig:
extras.append(" --enable-egl-x11")
if "egl" in packageconfig and "drm" in packageconfig:
extras.append(" --enable-egl-drm")
if "vaapi" in packageconfig and "x11" in packageconfig:
extras.append(" --enable-vaapi-x11")
if "vaapi" in packageconfig and "drm" in packageconfig:
extras.append(" --enable-vaapi-drm")
if "vaapi" in packageconfig and "x11" in packageconfig and "egl" in packageconfig:
extras.append(" --enable-vaapi-x-egl")
if "vdpau" in packageconfig and "opengl" in packageconfig and "x11" in packageconfig:
extras.append(" --enable-vdpau-gl-x11")
if "wayland" in packageconfig and "opengl" in packageconfig:
extras.append(" --enable-gl-wayland")
if "wayland" in packageconfig and "vaapi" in packageconfig:
extras.append(" --enable-vaapi-wayland")
if extras:
d.appendVar("EXTRA_OECONF", "".join(extras))
}
SIMPLE_TARGET_SYS = "${@'${TARGET_SYS}'.replace('${TARGET_VENDOR}', '')}"
EXTRA_OECONF = " \
--prefix=${prefix} \
--target=${SIMPLE_TARGET_SYS} \
--confdir=${sysconfdir} \
--datadir=${datadir} \
--disable-manpage-build \
--disable-libbluray \
--disable-dvdnav \
--disable-cdda \
--disable-uchardet \
--disable-rubberband \
--disable-lcms2 \
--disable-vapoursynth \
${PACKAGECONFIG_CONFARGS} \
"
do_configure:append() {
sed -i -e 's#${WORKDIR}#<WORKDIR>#g' ${B}/config.h
}
link_waf() {
ln -s waf-2.0.25 ${S}/waf
}
do_unpack[postfuncs] += "link_waf"
FILES:${PN} += " \
${datadir}/icons \
${datadir}/zsh \
${datadir}/bash-completion \
${datadir}/metainfo \
"
EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "0", "1", d)}"

View File

@@ -0,0 +1,112 @@
From 87992a57e5f517d5ceb5dfabaea662ac64983720 Mon Sep 17 00:00:00 2001
From: Markus Volk <f_l_k@t-online.de>
Date: Fri, 27 May 2022 18:37:53 +0200
Subject: [PATCH] pavucontrol: remove canberra-gtk support
libcanberra-gtk3 module isn't buildable for wayland.
Remove its dpendency.
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Upstream-Status: Inappropriate
---
configure.ac | 2 +-
src/pavuapplication.cc | 2 --
src/pavucontrol.cc | 4 ----
src/sinkwidget.cc | 17 -----------------
4 files changed, 1 insertion(+), 24 deletions(-)
diff --git a/configure.ac b/configure.ac
index 056ba5e..e857563 100644
--- a/configure.ac
+++ b/configure.ac
@@ -41,7 +41,7 @@ AC_TYPE_SIGNAL
AC_HEADER_STDC
AX_CXX_COMPILE_STDCXX_11
-PKG_CHECK_MODULES(GUILIBS, [ gtkmm-3.0 >= 3.22 sigc++-2.0 libcanberra-gtk3 >= 0.16 json-glib-1.0 ])
+PKG_CHECK_MODULES(GUILIBS, [ gtkmm-3.0 >= 3.22 sigc++-2.0 json-glib-1.0 ])
AC_SUBST(GUILIBS_CFLAGS)
AC_SUBST(GUILIBS_LIBS)
diff --git a/src/pavuapplication.cc b/src/pavuapplication.cc
index 6773b53..60c016c 100644
--- a/src/pavuapplication.cc
+++ b/src/pavuapplication.cc
@@ -24,8 +24,6 @@
#include "i18n.h"
-#include <canberra-gtk.h>
-
#include "pavuapplication.h"
#include "pavucontrol.h"
#include "mainwindow.h"
diff --git a/src/pavucontrol.cc b/src/pavucontrol.cc
index 18d5400..10ab646 100644
--- a/src/pavucontrol.cc
+++ b/src/pavucontrol.cc
@@ -29,8 +29,6 @@
#include <json-glib/json-glib.h>
#endif
-#include <canberra-gtk.h>
-
#include "pavucontrol.h"
#include "i18n.h"
#include "minimalstreamwidget.h"
@@ -916,8 +914,6 @@ MainWindow* pavucontrol_get_window(pa_glib_mainloop *m, bool maximize, bool _ret
tab_number = _tab_number;
retry = _retry;
- ca_context_set_driver(ca_gtk_context_get(), "pulse");
-
mainWindow = MainWindow::create(maximize);
api = pa_glib_mainloop_get_api(m);
diff --git a/src/sinkwidget.cc b/src/sinkwidget.cc
index f30bd37..482fd1f 100644
--- a/src/sinkwidget.cc
+++ b/src/sinkwidget.cc
@@ -24,7 +24,6 @@
#include "sinkwidget.h"
-#include <canberra-gtk.h>
#if HAVE_EXT_DEVICE_RESTORE_API
# include <pulse/format.h>
# include <pulse/ext-device-restore.h>
@@ -111,7 +110,6 @@ SinkWidget* SinkWidget::create(MainWindow* mainWindow) {
void SinkWidget::executeVolumeUpdate() {
pa_operation* o;
char dev[64];
- int playing = 0;
if (!(o = pa_context_set_sink_volume_by_index(get_context(), index, &volume, NULL, NULL))) {
show_error(_("pa_context_set_sink_volume_by_index() failed"));
@@ -120,22 +118,7 @@ void SinkWidget::executeVolumeUpdate() {
pa_operation_unref(o);
- ca_context_playing(ca_gtk_context_get(), 2, &playing);
- if (playing)
- return;
-
snprintf(dev, sizeof(dev), "%lu", (unsigned long) index);
- ca_context_change_device(ca_gtk_context_get(), dev);
-
- ca_gtk_play_for_widget(GTK_WIDGET(gobj()),
- 2,
- CA_PROP_EVENT_DESCRIPTION, _("Volume Control Feedback Sound"),
- CA_PROP_EVENT_ID, "audio-volume-change",
- CA_PROP_CANBERRA_CACHE_CONTROL, "permanent",
- CA_PROP_CANBERRA_ENABLE, "1",
- NULL);
-
- ca_context_change_device(ca_gtk_context_get(), NULL);
}
void SinkWidget::onMuteToggleButton() {
--
2.25.1

View File

@@ -0,0 +1,27 @@
DESCRIPTION = "PulseAudio Volume Control (pavucontrol) is a simple GTK based volume control tool ("mixer") for the PulseAudio sound server."
HOMEPAGE = "https://freedesktop.org/software/pulseaudio/pavucontrol/"
SECTION = "x11/multimedia"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
# glib-2.0-native is required for glib-gettextize, which is used by the
# AM_GLIB_GNU_GETTEXT macro in configure.ac. That macro is deprecated, so the
# glib-2.0-native dependency may go away at some point (something to keep in
# mind when doing version upgrades).
DEPENDS = "libxml-parser-perl-native intltool-native glib-2.0-native gtkmm3 pulseaudio json-glib"
inherit autotools features_check perlnative pkgconfig
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
SRC_URI = "http://freedesktop.org/software/pulseaudio/${BPN}/${BP}.tar.xz"
SRC_URI:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'file://0001-pavucontrol-remove-canberra-gtk-support.patch', '', d)}"
SRC_URI[sha256sum] = "ce2b72c3b5f1a70ad0df19dd81750f9455bd20870d1d3a36d20536af2e8f4e7a"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[x11] = ",,libcanberra"
EXTRA_OECONF = "--disable-lynx "
RDEPENDS:${PN} += "pulseaudio-server"

View File

@@ -0,0 +1,16 @@
SUMMARY = "Freedesktop sound theme"
HOMEPAGE = "http://freedesktop.org/wiki/Specifications/sound-theme-spec"
LICENSE = "GPL-2.0-or-later & CC-BY-3.0 & CC-BY-SA-3.0"
LIC_FILES_CHKSUM = "file://CREDITS;md5=3213e601ce34bb42ddc3498903ac4e69"
# glib-2.0 for glib-gettext.m4 which provides AM_GLIB_GNU_GETTEXT
# intltool for intltool.m4 which provides IT_PROG_INTLTOOL
DEPENDS = "glib-2.0 intltool-native"
inherit autotools gettext
DEPENDS += "glib-2.0-native"
SRC_URI = "http://people.freedesktop.org/~mccann/dist/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "d7387912cfd275282d1ec94483cb2f62"
SRC_URI[sha256sum] = "cb518b20eef05ec2e82dda1fa89a292c1760dc023aba91b8aa69bafac85e8a14"

View File

@@ -0,0 +1,44 @@
From 0d5c0e9a75eca43667b0e29155b635e50622b66a Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 27 Feb 2015 21:55:36 +0000
Subject: [PATCH] Revert "media-ctl: Don't install libmediactl and
libv4l2subdev"
This reverts commit 0911dce53b08b0df3066be2c75f67e8a314d8729.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Conflicts:
utils/media-ctl/Makefile.am
---
utils/media-ctl/Makefile.am | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/utils/media-ctl/Makefile.am b/utils/media-ctl/Makefile.am
index c48c8d6..e255e16 100644
--- a/utils/media-ctl/Makefile.am
+++ b/utils/media-ctl/Makefile.am
@@ -1,8 +1,7 @@
-noinst_LTLIBRARIES = libmediactl.la libv4l2subdev.la
-
+lib_LTLIBRARIES = libmediactl.la libv4l2subdev.la
libmediactl_la_SOURCES = libmediactl.c mediactl-priv.h
-libmediactl_la_CFLAGS = -static $(LIBUDEV_CFLAGS)
-libmediactl_la_LDFLAGS = -static $(LIBUDEV_LIBS)
+libmediactl_la_CFLAGS = $(LIBUDEV_CFLAGS)
+libmediactl_la_LDFLAGS = $(LIBUDEV_LIBS)
media-bus-format-names.h: ../../include/linux/media-bus-format.h
$(AM_V_GEN) sed -e '/#define MEDIA_BUS_FMT/ ! d; s/.*FMT_//; /FIXED/ d; s/\t.*//; s/.*/{ \"&\", MEDIA_BUS_FMT_& },/;' \
@@ -18,9 +17,6 @@ CLEANFILES = $(BUILT_SOURCES)
nodist_libv4l2subdev_la_SOURCES = $(BUILT_SOURCES)
libv4l2subdev_la_SOURCES = libv4l2subdev.c
libv4l2subdev_la_LIBADD = libmediactl.la
-libv4l2subdev_la_CFLAGS = -static
-libv4l2subdev_la_LDFLAGS = -static
-
mediactl_includedir=$(includedir)/mediactl
noinst_HEADERS = mediactl.h v4l2subdev.h

View File

@@ -0,0 +1,21 @@
From 320b8378ee30eb5e0fe83a8b397f822f2f88a4c1 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 1 Mar 2015 22:25:07 +0000
Subject: [PATCH] %% original patch: mediactl-pkgconfig.patch
---
utils/media-ctl/Makefile.am | 1 +
1 file changed, 1 insertion(+)
diff --git a/utils/media-ctl/Makefile.am b/utils/media-ctl/Makefile.am
index e255e16..ff7b417 100644
--- a/utils/media-ctl/Makefile.am
+++ b/utils/media-ctl/Makefile.am
@@ -20,6 +20,7 @@ libv4l2subdev_la_LIBADD = libmediactl.la
mediactl_includedir=$(includedir)/mediactl
noinst_HEADERS = mediactl.h v4l2subdev.h
+pkgconfig_DATA = libmediactl.pc
bin_PROGRAMS = media-ctl
media_ctl_SOURCES = media-ctl.c options.c options.h tools.h
media_ctl_LDADD = libmediactl.la libv4l2subdev.la

View File

@@ -0,0 +1,24 @@
From f7109d6b2fcb291824d795071c04a492d9fbc45b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 1 Mar 2015 22:25:07 +0000
Subject: [PATCH] %% original patch: export-mediactl-headers.patch
---
utils/media-ctl/Makefile.am | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/utils/media-ctl/Makefile.am b/utils/media-ctl/Makefile.am
index ff7b417..6ce656f 100644
--- a/utils/media-ctl/Makefile.am
+++ b/utils/media-ctl/Makefile.am
@@ -17,8 +17,8 @@ CLEANFILES = $(BUILT_SOURCES)
nodist_libv4l2subdev_la_SOURCES = $(BUILT_SOURCES)
libv4l2subdev_la_SOURCES = libv4l2subdev.c
libv4l2subdev_la_LIBADD = libmediactl.la
-mediactl_includedir=$(includedir)/mediactl
-noinst_HEADERS = mediactl.h v4l2subdev.h
+otherincludedir = $(includedir)/mediactl
+otherinclude_HEADERS = mediactl.h v4l2subdev.h
pkgconfig_DATA = libmediactl.pc
bin_PROGRAMS = media-ctl

View File

@@ -0,0 +1,60 @@
From 6e7e52de7afe29597016952a7317faf9c3ea3268 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Nov 2019 18:50:34 -0800
Subject: [PATCH] Do not use getsubopt
POSIX says that behavior when subopts list is empty is undefined.
musl libs will set value to NULL which leads to crash.
Simply avoid getsubopt, since we cannot rely on it.
Imported from Alpine Linux
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Adapt patch to 1.23.0.
(v4l-utils rev fd544473800d02e90bc289434cc44e5aa8fadd0f).
%% original patch: 0007-Do-not-use-getsubopt.patch
Signed-off-by: Daniel Gomez <daniel@qtec.com>
---
utils/v4l2-ctl/v4l2-ctl-common.cpp | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/utils/v4l2-ctl/v4l2-ctl-common.cpp b/utils/v4l2-ctl/v4l2-ctl-common.cpp
index d77f7104..838c297d 100644
--- a/utils/v4l2-ctl/v4l2-ctl-common.cpp
+++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp
@@ -994,15 +994,17 @@ static bool parse_subset(char *optarg)
static bool parse_next_subopt(char **subs, char **value)
{
- static char *const subopts[] = {
- nullptr
- };
- int opt = v4l_getsubopt(subs, subopts, value);
+ char *p = *subs;
+ *value = *subs;
- if (opt < 0 || *value)
- return false;
- fprintf(stderr, "Missing suboption value\n");
- return true;
+ while (*p && *p != ',')
+ p++;
+
+ if (*p)
+ *p++ = '\0';
+
+ *subs = p;
+ return false;
}
void common_cmd(const std::string &media_bus_info, int ch, char *optarg)
--
2.35.1

View File

@@ -0,0 +1,91 @@
SUMMARY = "v4l2 and IR applications"
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=48da9957849056017dc568bbc43d8975 \
file://COPYING.libv4l;md5=d749e86a105281d7a44c2328acebc4b0"
PROVIDES = "libv4l media-ctl"
DEPENDS = "jpeg \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa-lib', '', d)} \
${@bb.utils.contains_any('PACKAGECONFIG', 'qv4l2 qvidcap', 'qtbase qtbase-native', '', d)}"
DEPENDS:append:libc-musl = " argp-standalone"
DEPENDS:append:class-target = " udev"
LDFLAGS:append = " -pthread"
# v4l2 explicitly sets _FILE_OFFSET_BITS=32 to get access to
# both 32 and 64 bit file APIs. But it does not handle the time side?
# Needs further investigation
GLIBC_64BIT_TIME_FLAGS = ""
inherit autotools gettext pkgconfig
PACKAGECONFIG ??= "media-ctl"
PACKAGECONFIG[media-ctl] = "--enable-v4l-utils,--disable-v4l-utils,,"
PACKAGECONFIG[qv4l2] = ",--disable-qv4l2"
PACKAGECONFIG[qvidcap] = ",--disable-qvidcap"
SRC_URI = "\
git://git.linuxtv.org/v4l-utils.git;protocol=https;branch=master \
file://0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch \
file://0002-original-patch-mediactl-pkgconfig.patch \
file://0003-original-patch-export-mediactl-headers.patch \
file://0004-Do-not-use-getsubopt.patch \
"
SRCREV = "9431e4b26b4842d1401e80ada9f14593dca3a94c"
PV .= "+git${SRCPV}"
S = "${WORKDIR}/git"
B = "${S}"
do_configure:prepend() {
${S}/bootstrap.sh
}
SRC_URI[md5sum] = "8aa73287320a49e9170a8255d7b2c7e6"
SRC_URI[sha256sum] = "65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31"
EXTRA_OECONF = "--enable-shared --with-udevdir=${base_libdir}/udev \
--disable-v4l2-compliance-32 --disable-v4l2-ctl-32"
VIRTUAL-RUNTIME_ir-keytable-keymaps ?= "rc-keymaps"
PACKAGES =+ "media-ctl ir-keytable rc-keymaps libv4l libv4l-dev qv4l2 qvidcap"
RPROVIDES:${PN}-dbg += "libv4l-dbg"
FILES:media-ctl = "${bindir}/media-ctl ${libdir}/libmediactl.so.*"
FILES:qv4l2 = "\
${bindir}/qv4l2 \
${datadir}/applications/qv4l2.desktop \
${datadir}/icons/hicolor/*/apps/qv4l2.* \
"
FILES:qvidcap = "\
${bindir}/qvidcap \
${datadir}/applications/qvidcap.desktop \
${datadir}/icons/hicolor/*/apps/qvidcap.* \
"
FILES:ir-keytable = "${bindir}/ir-keytable ${base_libdir}/udev/rules.d/*-infrared.rules"
RDEPENDS:ir-keytable += "${VIRTUAL-RUNTIME_ir-keytable-keymaps}"
RDEPENDS:qv4l2 += "\
${@bb.utils.contains('PACKAGECONFIG', 'qv4l2', 'qtbase', '', d)}"
RDEPENDS:qvidcap += "\
${@bb.utils.contains('PACKAGECONFIG', 'qvidcap', 'qtbase', '', d)}"
FILES:rc-keymaps = "${sysconfdir}/rc* ${base_libdir}/udev/rc*"
FILES:${PN} = "${bindir} ${sbindir}"
FILES:libv4l += "${libdir}/libv4l*${SOLIBS} ${libdir}/libv4l/*.so ${libdir}/libv4l/plugins/*.so \
${libdir}/libdvbv5*${SOLIBS} \
${libdir}/libv4l/*-decomp"
FILES:libv4l-dev += "${includedir} ${libdir}/pkgconfig \
${libdir}/libv4l*${SOLIBSDEV} ${libdir}/*.la \
${libdir}/v4l*${SOLIBSDEV} ${libdir}/libv4l/*.la ${libdir}/libv4l/plugins/*.la"
PARALLEL_MAKE:class-native = ""
BBCLASSEXTEND = "native"

View File

@@ -0,0 +1,25 @@
SUMMARY = "Yet Another V4L2 Test Application"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=751419260aa954499f7abaabaa882bbe"
SRC_URI = "git://git.ideasonboard.org/yavta.git;branch=master \
"
SRCREV = "65f740aa1758531fd810339bc1b7d1d33666e28a"
PV = "0.0"
PR = "r2"
S = "${WORKDIR}/git"
EXTRA_OEMAKE = "-e MAKEFLAGS="
# The yavta sources include copies of the headers required to build in the
# include directory. The Makefile uses CFLAGS to include these, but since
# we override the CFLAGS then we need to add this include path back in.
CFLAGS += "-I${S}/include"
do_install() {
install -d ${D}${bindir}
install -m 0755 yavta ${D}${bindir}
}

View File

@@ -0,0 +1,10 @@
DESCRIPTION = "WavPack is a completely open audio compression format providing lossless, high-quality lossy, and a unique hybrid compression mode."
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://license.txt;md5=f596650807588c61fcab60bec8242df8"
SRC_URI = "http://wavpack.com/wavpack-${PV}.tar.bz2"
SRC_URI[md5sum] = "7bb1528f910e4d0003426c02db856063"
SRC_URI[sha256sum] = "175ee4f2effd6f51e6ec487956f41177256bf892c2e8e07de5d27ed4ee6888c5"
inherit autotools lib_package

View File

@@ -0,0 +1,52 @@
From dc0a5c3d2dd4e79d12a150a246a95c4dc88326f1 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Tue, 16 Aug 2011 16:04:35 +0200
Subject: [PATCH] Upstream: not yet
Fix configure to accept "--prefix=" (a blank prefix).
---
build/make/configure.sh | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/build/make/configure.sh b/build/make/configure.sh
index 007e020..04d5cbf 100644
--- a/build/make/configure.sh
+++ b/build/make/configure.sh
@@ -581,6 +581,8 @@ process_common_cmdline() {
;;
--prefix=*)
prefix="${optval}"
+ # Distinguish between "prefix not set" and "prefix set to ''"
+ prefixset=1
;;
--libdir=*)
libdir="${optval}"
@@ -614,13 +616,23 @@ process_cmdline() {
}
post_process_common_cmdline() {
- prefix="${prefix:-/usr/local}"
+ if [ "$prefixset" != "1" ]
+ then
+ prefix=/usr/local
+ fi
+
+ # Strip trailing slash
prefix="${prefix%/}"
+
libdir="${libdir:-${prefix}/lib}"
libdir="${libdir%/}"
- if [ "${libdir#${prefix}}" = "${libdir}" ]; then
- die "Libdir ${libdir} must be a subdirectory of ${prefix}"
- fi
+
+ case "$libdir" in
+ "${prefix}/"*) ;;
+ *)
+ die "Libdir ${libdir} must be a subdirectory of ${prefix}"
+ ;;
+ esac
}
post_process_cmdline() {

View File

@@ -0,0 +1,53 @@
SUMMARY = "VPX multi-format codec"
DESCRIPTION = "The BSD-licensed libvpx reference implementation provides en- and decoders for VP8 and VP9 bitstreams."
HOMEPAGE = "http://www.webmproject.org/code/"
BUGTRACKER = "http://code.google.com/p/webm/issues/list"
SECTION = "libs/multimedia"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d5b04755015be901744a78cc30d390d4"
SRCREV = "d6eb9696aa72473c1a11d34d928d35a3acc0c9a9"
SRC_URI += "git://chromium.googlesource.com/webm/libvpx;protocol=https;branch=main \
file://libvpx-configure-support-blank-prefix.patch \
"
S = "${WORKDIR}/git"
# ffmpeg links with this and fails
# sysroots/armv4t-oe-linux-gnueabi/usr/lib/libvpx.a(vpx_encoder.c.o)(.text+0xc4): unresolvable R_ARM_THM_CALL relocation against symbol `memcpy@@GLIBC_2.4'
ARM_INSTRUCTION_SET = "arm"
CFLAGS += "-fPIC"
BUILD_LDFLAGS += "-pthread"
export CC
export LD = "${CC}"
VPXTARGET:armv5te = "armv5te-linux-gcc"
VPXTARGET:armv6 = "armv6-linux-gcc"
VPXTARGET:armv7a = "armv7-linux-gcc"
VPXTARGET ?= "generic-gnu"
CONFIGUREOPTS = " \
--target=${VPXTARGET} \
--enable-vp9 \
--enable-libs \
--disable-install-docs \
--disable-static \
--enable-shared \
--prefix=${prefix} \
--libdir=${libdir} \
--size-limit=16384x16384 \
"
do_configure() {
${S}/configure ${CONFIGUREOPTS}
}
do_install() {
oe_runmake install DESTDIR=${D}
chown -R root:root ${D}
}
BBCLASSEXTEND += "native"

View File

@@ -0,0 +1,13 @@
--- configure.ac.old 2005-06-03 12:53:28.000000000 +0200
+++ configure.ac 2005-06-03 12:54:29.000000000 +0200
@@ -25,9 +25,9 @@
AC_PREREQ([2.57])
AC_INIT([spext], [1.0], [lauri.leukkunen@nokia.com], spext)
+AC_CONFIG_AUX_DIR(.)
AM_INIT_AUTOMAKE([dist-bzip2])
AM_MAINTAINER_MODE
-AC_CONFIG_AUX_DIR(.)
dnl PKG_CHECK_MODULES(FIXESEXT, fixesext)

View File

@@ -0,0 +1,20 @@
LICENSE= "MIT"
SUMMARY = "X Server Nokia 770 extensions library"
SECTION = "x11/libs"
DEPENDS = "virtual/libx11 libxext"
LIC_FILES_CHKSUM = "file://COPYING;md5=db043791349ba57ad1169e1c92477cb6"
SRC_URI = "http://repository.maemo.org/pool/maemo/ossw/source/x/${BPN}/${BPN}_${PV}.tar.gz \
file://auxdir.patch;striplevel=0"
S = "${WORKDIR}/xpext-1.0"
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"
# Remove runtime dependency on empty package ${PN}
RDEPENDS:${PN}-dev = ""
SRC_URI[md5sum] = "1b0cb67b6f2bd7c4abef17648b062896"
SRC_URI[sha256sum] = "a3b06f5188fd9effd0799ae31352b3cd65cb913b964e2c1a923ffa9d3c08abbe"

View File

@@ -0,0 +1,10 @@
--- Xsp/xsp.pc.in~ 2009-01-07 13:06:07.000000000 +0100
+++ Xsp/xsp.pc.in 2009-01-07 13:06:07.000000000 +0100
@@ -6,5 +6,5 @@
Name: Xsp
Description: X Sputnik Library
Version: @PACKAGE_VERSION@
-Cflags: -I${includedir} @XSP_CFLAGS@ @X_CFLAGS@
-Libs: -L${libdir} -lXsp @XSP_LIBS@ @X_LIBS@
+Cflags: -I${includedir}
+Libs: -L${libdir} -lXsp -lX11

View File

@@ -0,0 +1,15 @@
LICENSE= "MIT"
SUMMARY = "X Server Nokia 770 extensions library"
SECTION = "x11/libs"
DEPENDS = "virtual/libx11 libxext xpext"
LIC_FILES_CHKSUM = "file://COPYING;md5=ea2bda168c508c7cd8afa567b2fcc549"
SRC_URI = "http://repository.maemo.org/pool/maemo/ossw/source/x/xsp/${BPN}_${PV}.tar.gz \
file://xsp-fix-pc.patch"
S = "${WORKDIR}/Xsp"
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"
SRC_URI[md5sum] = "2a0d8d02228d4cbd28b6e07bb7c17cf5"
SRC_URI[sha256sum] = "8b722b952b64841d996c70c3278499886c81bb5012991beed5f66f4158418f59"