All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Julien Olivain <ju.o@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>, buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH 1/1] package/tinycompress: new package
Date: Sun, 30 Oct 2022 20:25:57 +0100	[thread overview]
Message-ID: <20221030192557.GC1058960@scaer> (raw)
In-Reply-To: <20221029115321.718694-1-ju.o@free.fr>

Julien, All,

On 2022-10-29 13:53 +0200, Julien Olivain spake thusly:
> tinycompress is a library for compress audio offload in alsa.
> It also contains the "cplay" and "crecord" programs.
> tinycompress is part of the ALSA project.

And bizarrely enough, it does not depend on alsa-lib.

Except for a tool, fcplay, that is disabled by default.

> https://www.alsa-project.org/
> 
> Signed-off-by: Julien Olivain <ju.o@free.fr>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
> Tested on master branch, commit 014ec19 with commands:
> 
>     make check-package
>     ...
>     0 warnings generated
> 
>     ./utils/test-pkg -a -p tinycompress
>     ...
>     44 builds, 3 skipped, 1 build failed, 0 legal-info failed, 0 show-info failed
> 
> Note:
> The build failure is not related to this package. It is related to the
> toolchain "bootlin-xtensa-uclibc" for which a fix was proposed in:
> https://patchwork.ozlabs.org/project/buildroot/patch/20221010030937.6432-1-ju.o@free.fr/
> ---
>  DEVELOPERS                                    |  1 +
>  package/Config.in                             |  1 +
>  ...-add-time.h-missing-header-inclusion.patch | 39 +++++++++++++++++++
>  package/tinycompress/Config.in                | 10 +++++
>  package/tinycompress/tinycompress.hash        |  5 +++
>  package/tinycompress/tinycompress.mk          | 13 +++++++
>  6 files changed, 69 insertions(+)
>  create mode 100644 package/tinycompress/0001-wave-add-time.h-missing-header-inclusion.patch
>  create mode 100644 package/tinycompress/Config.in
>  create mode 100644 package/tinycompress/tinycompress.hash
>  create mode 100644 package/tinycompress/tinycompress.mk
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index dac8fefd0b..df6b3f7b42 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1684,6 +1684,7 @@ F:	package/python-distro/
>  F:	package/python-gnupg/
>  F:	package/python-pyalsa/
>  F:	package/riscv-isa-sim/
> +F:	package/tinycompress/
>  F:	package/zynaddsubfx/
>  F:	support/testing/tests/package/sample_python_distro.py
>  F:	support/testing/tests/package/sample_python_gnupg.py
> diff --git a/package/Config.in b/package/Config.in
> index e4eb2b7434..d691471877 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -52,6 +52,7 @@ menu "Audio and video applications"
>  	source "package/pulseaudio/Config.in"
>  	source "package/sox/Config.in"
>  	source "package/squeezelite/Config.in"
> +	source "package/tinycompress/Config.in"
>  	source "package/tovid/Config.in"
>  	source "package/tstools/Config.in"
>  	source "package/twolame/Config.in"
> diff --git a/package/tinycompress/0001-wave-add-time.h-missing-header-inclusion.patch b/package/tinycompress/0001-wave-add-time.h-missing-header-inclusion.patch
> new file mode 100644
> index 0000000000..4068a54074
> --- /dev/null
> +++ b/package/tinycompress/0001-wave-add-time.h-missing-header-inclusion.patch
> @@ -0,0 +1,39 @@
> +From 7d3b8ac47789545af5a4cd2fc1cf9bcfb91ae3b0 Mon Sep 17 00:00:00 2001
> +From: Julien Olivain <ju.o@free.fr>
> +Date: Sat, 29 Oct 2022 12:51:17 +0200
> +Subject: [PATCH] wave: add <time.h> missing header inclusion
> +
> +When compiling tinycompress with some libc other than glibc
> +(e.g. musl libc), compilation fails with the following error:
> +
> +    In file included from wave.c:11:0:
> +    /path/to/gcc/sysroot/usr/include/sound/asound.h:404:18: error: field 'trigger_tstamp' has incomplete type
> +      struct timespec trigger_tstamp; /* time when stream was started/stopped/paused */
> +    [...]
> +
> +According to POSIX, "struct timespec" is defined in <time.h>. See:
> +https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/time.h.html
> +
> +This patch fixes this build failure by including <time.h> prior
> +<sound/asound.h>.
> +
> +Signed-off-by: Julien Olivain <ju.o@free.fr>
> +---
> + src/utils/wave.c | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/src/utils/wave.c b/src/utils/wave.c
> +index a74149a..d17f66a 100644
> +--- a/src/utils/wave.c
> ++++ b/src/utils/wave.c
> +@@ -8,6 +8,7 @@
> + #include <stdio.h>
> + #include <stdint.h>
> + #include <string.h>
> ++#include <time.h>
> + #include <sound/asound.h>
> + 
> + #include "tinycompress/tinywave.h"
> +-- 
> +2.38.1
> +
> diff --git a/package/tinycompress/Config.in b/package/tinycompress/Config.in
> new file mode 100644
> index 0000000000..aff1943c78
> --- /dev/null
> +++ b/package/tinycompress/Config.in
> @@ -0,0 +1,10 @@
> +config BR2_PACKAGE_TINYCOMPRESS
> +	bool "tinycompress"
> +	depends on !BR2_STATIC_LIBS # dlfcn.h
> +	help
> +	  tinycompress is a library for compress audio offload in alsa.
> +
> +	  https://www.alsa-project.org/
> +
> +comment "tinycompress needs a toolchain w/ dynamic library"
> +	depends on BR2_STATIC_LIBS
> diff --git a/package/tinycompress/tinycompress.hash b/package/tinycompress/tinycompress.hash
> new file mode 100644
> index 0000000000..164f3a36c3
> --- /dev/null
> +++ b/package/tinycompress/tinycompress.hash
> @@ -0,0 +1,5 @@
> +# Locally calculated after checking pgp signature
> +sha256  2f897e5112cd3bca6790b5cecfda6e0662c8bc5ee0fbab972b247a0cc620d66c  tinycompress-1.2.8.tar.bz2
> +
> +# Locally calculated
> +sha256  912ea37a4435594a3b3c35f04efa4b5b7af2e68a05f5319c16c881711a31e4b7  COPYING
> diff --git a/package/tinycompress/tinycompress.mk b/package/tinycompress/tinycompress.mk
> new file mode 100644
> index 0000000000..062233ec80
> --- /dev/null
> +++ b/package/tinycompress/tinycompress.mk
> @@ -0,0 +1,13 @@
> +################################################################################
> +#
> +# tinycompress
> +#
> +################################################################################
> +
> +TINYCOMPRESS_VERSION = 1.2.8
> +TINYCOMPRESS_SOURCE = tinycompress-$(TINYCOMPRESS_VERSION).tar.bz2
> +TINYCOMPRESS_SITE = https://www.alsa-project.org/files/pub/tinycompress
> +TINYCOMPRESS_LICENSE = BSD-3-Clause and LGPL-2.1
> +TINYCOMPRESS_LICENSE_FILES = COPYING
> +
> +$(eval $(autotools-package))
> -- 
> 2.38.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

      reply	other threads:[~2022-10-30 19:26 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-29 11:53 [Buildroot] [PATCH 1/1] package/tinycompress: new package Julien Olivain
2022-10-30 19:25 ` Yann E. MORIN [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221030192557.GC1058960@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@buildroot.org \
    --cc=ju.o@free.fr \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.