Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE
@ 2012-09-18  5:09 Ryan Mallon
  2012-09-18  5:55 ` Thomas Petazzoni
  0 siblings, 1 reply; 6+ messages in thread
From: Ryan Mallon @ 2012-09-18  5:09 UTC (permalink / raw)
  To: buildroot

libsndfile requires sizeof(sf_count_t) == 8, where sf_count_t is a
typedef alias for off_t. This is not true by default for all
tool-chains, which leads to a runtime assert failure in binaries
compiled against libsndfile. See:
    
  http://permalink.gmane.org/gmane.comp.audio.libsndfile.devel/229
    
Add a dependency on BR2_LARGEFILE for libsndfile, and a comment if
BR2_LARGEFILE is not selected.
    
Signed-off-by: Ryan Mallon <rmallon@gmail.com>
---

diff --git a/package/libsndfile/Config.in b/package/libsndfile/Config.in
index 9afe496..21e1591 100644
--- a/package/libsndfile/Config.in
+++ b/package/libsndfile/Config.in
@@ -1,8 +1,12 @@
 config BR2_PACKAGE_LIBSNDFILE
        bool "libsndfile"
+       depends on BR2_LARGEFILE
        help
          Libsndfile is a C library for reading and writing files containing
          sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format)
          through one standard library interface.
 
          http://www.mega-nerd.com/libsndfile/
+
+comment "libsndfile requires a toolchain with LARGEFILE support"
+       depends on !BR2_LARGEFILE

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE
  2012-09-18  5:09 Ryan Mallon
@ 2012-09-18  5:55 ` Thomas Petazzoni
  2012-09-18  6:13   ` Ryan Mallon
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2012-09-18  5:55 UTC (permalink / raw)
  To: buildroot

Dear Ryan Mallon,

On Tue, 18 Sep 2012 15:09:19 +1000, Ryan Mallon wrote:
> libsndfile requires sizeof(sf_count_t) == 8, where sf_count_t is a
> typedef alias for off_t. This is not true by default for all
> tool-chains, which leads to a runtime assert failure in binaries
> compiled against libsndfile. See:
>     
>   http://permalink.gmane.org/gmane.comp.audio.libsndfile.devel/229
>     
> Add a dependency on BR2_LARGEFILE for libsndfile, and a comment if
> BR2_LARGEFILE is not selected.
>     
> Signed-off-by: Ryan Mallon <rmallon@gmail.com>

Ok, looks better. But now you need to udpate all the reverse
dependencies of libsndfile (i.e, all packages that select
BR2_PACKAGE_LIBSNDFILE), to add the same BR2_LARGEFILE dependency. This
concerns bluez_utils, gst-plugins-bad, mpd and pulseaudio.

(Note: this problem should be simplified once we get Yann's work on
the _AVAILABLE thing merged, but in the mean time, we have to handle
those reverse dependencies manually).

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE
  2012-09-18  5:55 ` Thomas Petazzoni
@ 2012-09-18  6:13   ` Ryan Mallon
  0 siblings, 0 replies; 6+ messages in thread
From: Ryan Mallon @ 2012-09-18  6:13 UTC (permalink / raw)
  To: buildroot

On 18/09/12 15:55, Thomas Petazzoni wrote:
> Dear Ryan Mallon,
>
> On Tue, 18 Sep 2012 15:09:19 +1000, Ryan Mallon wrote:
>> libsndfile requires sizeof(sf_count_t) == 8, where sf_count_t is a
>> typedef alias for off_t. This is not true by default for all
>> tool-chains, which leads to a runtime assert failure in binaries
>> compiled against libsndfile. See:
>>     
>>   http://permalink.gmane.org/gmane.comp.audio.libsndfile.devel/229
>>     
>> Add a dependency on BR2_LARGEFILE for libsndfile, and a comment if
>> BR2_LARGEFILE is not selected.
>>     
>> Signed-off-by: Ryan Mallon <rmallon@gmail.com>
> Ok, looks better. But now you need to udpate all the reverse
> dependencies of libsndfile (i.e, all packages that select
> BR2_PACKAGE_LIBSNDFILE), to add the same BR2_LARGEFILE dependency. This
> concerns bluez_utils, gst-plugins-bad, mpd and pulseaudio.
>
> (Note: this problem should be simplified once we get Yann's work on
> the _AVAILABLE thing merged, but in the mean time, we have to handle
> those reverse dependencies manually).
>

Like this? I can repost in full if needed.

~Ryan

---

diff --git a/package/bluez_utils/Config.in b/package/bluez_utils/Config.in
index d63284d..3003277 100644
--- a/package/bluez_utils/Config.in
+++ b/package/bluez_utils/Config.in
@@ -20,9 +20,13 @@ config BR2_PACKAGE_BLUEZ_UTILS_AUDIO
 	bool "audio support"
 	select BR2_PACKAGE_ALSA_LIB
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
 	help
 	  Audio support
 
+comment "bluez-utils audio requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 config BR2_PACKAGE_BLUEZ_UTILS_USB
 	bool "USB support"
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
diff --git a/package/libsndfile/Config.in b/package/libsndfile/Config.in
index 9afe496..21e1591 100644
--- a/package/libsndfile/Config.in
+++ b/package/libsndfile/Config.in
@@ -1,8 +1,12 @@
 config BR2_PACKAGE_LIBSNDFILE
 	bool "libsndfile"
+	depends on BR2_LARGEFILE
 	help
 	  Libsndfile is a C library for reading and writing files containing
 	  sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format)
 	  through one standard library interface.
 
 	  http://www.mega-nerd.com/libsndfile/
+
+comment "libsndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
diff --git a/package/multimedia/gst-plugins-bad/Config.in b/package/multimedia/gst-plugins-bad/Config.in
index 7784ad7..f767ed4 100644
--- a/package/multimedia/gst-plugins-bad/Config.in
+++ b/package/multimedia/gst-plugins-bad/Config.in
@@ -297,6 +297,10 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SDL
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SNDFILE
 	bool "sndfile"
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
+
+comment "gst-plugins-bad-plugin-sndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
 
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_VCD
 	bool "vcd"
diff --git a/package/multimedia/mpd/Config.in b/package/multimedia/mpd/Config.in
index c7c0cd7..ff9f573 100644
--- a/package/multimedia/mpd/Config.in
+++ b/package/multimedia/mpd/Config.in
@@ -103,10 +103,14 @@ config BR2_PACKAGE_MPD_LIBSAMPLERATE
 config BR2_PACKAGE_MPD_LIBSNDFILE
 	bool "libsndfile"
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
 	help
 	  Enable libsndfile input/streaming support.
 	  Select this if you want to play back WAV files.
 
+comment "mpd-libsndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 config BR2_PACKAGE_MPD_MAD
 	bool "mad"
 	default y
diff --git a/package/multimedia/pulseaudio/Config.in b/package/multimedia/pulseaudio/Config.in
index 6e6d64c..9e4084c 100644
--- a/package/multimedia/pulseaudio/Config.in
+++ b/package/multimedia/pulseaudio/Config.in
@@ -6,6 +6,7 @@ config BR2_PACKAGE_PULSEAUDIO
 	select BR2_PACKAGE_LIBSNDFILE
 	select BR2_PACKAGE_SPEEX
 	select BR2_PACKAGE_LIBINTL if BR2_NEEDS_GETTEXT
+	depends on BR2_LARGEFILE
 	help
 	  PulseAudio is a sound system for POSIX OSes, meaning that it
 	  is a proxy for your sound applications. It allows you to do
@@ -17,5 +18,8 @@ config BR2_PACKAGE_PULSEAUDIO
 
 	  http://pulseaudio.org
 
+comment "pulseaudio depends on a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 comment "pulseaudio requires a toolchain with WCHAR support"
 	depends on !BR2_USE_WCHAR

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE
@ 2012-09-23 22:58 Ryan Mallon
  0 siblings, 0 replies; 6+ messages in thread
From: Ryan Mallon @ 2012-09-23 22:58 UTC (permalink / raw)
  To: buildroot

libsndfile requires sizeof(sf_count_t) == 8, where sf_count_t is a
typedef alias for off_t. This is not true by default for all
tool-chains, which leads to a runtime assert failure in binaries
compiled against libsndfile. See:
    
  http://permalink.gmane.org/gmane.comp.audio.libsndfile.devel/229
    
Add a dependency on BR2_LARGEFILE for libsndfile, and a comment if
BR2_LARGEFILE is not selected.
    
Signed-off-by: Ryan Mallon <rmallon@gmail.com>
---

diff --git a/package/bluez_utils/Config.in b/package/bluez_utils/Config.in
index 9836b21..d324ba3 100644
--- a/package/bluez_utils/Config.in
+++ b/package/bluez_utils/Config.in
@@ -20,9 +20,13 @@ config BR2_PACKAGE_BLUEZ_UTILS_AUDIO
 	bool "audio support"
 	select BR2_PACKAGE_ALSA_LIB
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
 	help
 	  Audio support
 
+comment "bluez-utils audio requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 config BR2_PACKAGE_BLUEZ_UTILS_USB
 	bool "USB support"
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
diff --git a/package/libsndfile/Config.in b/package/libsndfile/Config.in
index 9afe496..21e1591 100644
--- a/package/libsndfile/Config.in
+++ b/package/libsndfile/Config.in
@@ -1,8 +1,12 @@
 config BR2_PACKAGE_LIBSNDFILE
 	bool "libsndfile"
+	depends on BR2_LARGEFILE
 	help
 	  Libsndfile is a C library for reading and writing files containing
 	  sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format)
 	  through one standard library interface.
 
 	  http://www.mega-nerd.com/libsndfile/
+
+comment "libsndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
diff --git a/package/multimedia/gst-plugins-bad/Config.in b/package/multimedia/gst-plugins-bad/Config.in
index 7784ad7..f767ed4 100644
--- a/package/multimedia/gst-plugins-bad/Config.in
+++ b/package/multimedia/gst-plugins-bad/Config.in
@@ -297,6 +297,10 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SDL
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SNDFILE
 	bool "sndfile"
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
+
+comment "gst-plugins-bad-plugin-sndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
 
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_VCD
 	bool "vcd"
diff --git a/package/multimedia/mpd/Config.in b/package/multimedia/mpd/Config.in
index 5d08182..d84b547 100644
--- a/package/multimedia/mpd/Config.in
+++ b/package/multimedia/mpd/Config.in
@@ -104,10 +104,14 @@ config BR2_PACKAGE_MPD_LIBSAMPLERATE
 config BR2_PACKAGE_MPD_LIBSNDFILE
 	bool "libsndfile"
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
 	help
 	  Enable libsndfile input/streaming support.
 	  Select this if you want to play back WAV files.
 
+comment "mpd-libsndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 config BR2_PACKAGE_MPD_MAD
 	bool "mad"
 	default y
diff --git a/package/multimedia/pulseaudio/Config.in b/package/multimedia/pulseaudio/Config.in
index 6c767bb..971fc9d 100644
--- a/package/multimedia/pulseaudio/Config.in
+++ b/package/multimedia/pulseaudio/Config.in
@@ -6,6 +6,7 @@ config BR2_PACKAGE_PULSEAUDIO
 	select BR2_PACKAGE_LIBSNDFILE
 	select BR2_PACKAGE_SPEEX
 	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
+	depends on BR2_LARGEFILE
 	help
 	  PulseAudio is a sound system for POSIX OSes, meaning that it
 	  is a proxy for your sound applications. It allows you to do
@@ -17,5 +18,8 @@ config BR2_PACKAGE_PULSEAUDIO
 
 	  http://pulseaudio.org
 
+comment "pulseaudio depends on a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 comment "pulseaudio requires a toolchain with WCHAR support"
 	depends on !BR2_USE_WCHAR

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE
@ 2013-02-05 17:00 Thomas Petazzoni
  2013-02-05 20:46 ` Peter Korsgaard
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2013-02-05 17:00 UTC (permalink / raw)
  To: buildroot

From: Ryan Mallon <rmallon@gmail.com>

libsndfile requires sizeof(sf_count_t) == 8, where sf_count_t is a
typedef alias for off_t. This is not true by default for all
tool-chains, which leads to a runtime assert failure in binaries
compiled against libsndfile. See:

  http://permalink.gmane.org/gmane.comp.audio.libsndfile.devel/229

Add a dependency on BR2_LARGEFILE for libsndfile, and a comment if
BR2_LARGEFILE is not selected.

[Thomas: rebased patch, added more propagation of the new
BR2_LARGEFILE dependency to gst-plugins-good and mpd.]

Signed-off-by: Ryan Mallon <rmallon@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/bluez_utils/Config.in                 |    4 ++++
 package/libsndfile/Config.in                  |    7 +++++++
 package/multimedia/gst-plugins-bad/Config.in  |    4 ++++
 package/multimedia/gst-plugins-good/Config.in |    1 +
 package/multimedia/mpd/Config.in              |    5 +++++
 package/multimedia/pulseaudio/Config.in       |    5 +++--
 6 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/package/bluez_utils/Config.in b/package/bluez_utils/Config.in
index 7ca23fc..72b900c 100644
--- a/package/bluez_utils/Config.in
+++ b/package/bluez_utils/Config.in
@@ -22,9 +22,13 @@ config BR2_PACKAGE_BLUEZ_UTILS_AUDIO
 	bool "audio support"
 	select BR2_PACKAGE_ALSA_LIB
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
 	help
 	  Audio support
 
+comment "bluez-utils audio requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 config BR2_PACKAGE_BLUEZ_UTILS_USB
 	bool "USB support"
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
diff --git a/package/libsndfile/Config.in b/package/libsndfile/Config.in
index 9afe496..cdba70b 100644
--- a/package/libsndfile/Config.in
+++ b/package/libsndfile/Config.in
@@ -1,8 +1,15 @@
 config BR2_PACKAGE_LIBSNDFILE
 	bool "libsndfile"
+	# The absence of largefile doesn't prevent libsndfile to
+	# build, but at runtime the code assumes that off_t is 64
+	# bits, and asserts if not.
+	depends on BR2_LARGEFILE
 	help
 	  Libsndfile is a C library for reading and writing files containing
 	  sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format)
 	  through one standard library interface.
 
 	  http://www.mega-nerd.com/libsndfile/
+
+comment "libsndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
diff --git a/package/multimedia/gst-plugins-bad/Config.in b/package/multimedia/gst-plugins-bad/Config.in
index 8cbe021..370259b 100644
--- a/package/multimedia/gst-plugins-bad/Config.in
+++ b/package/multimedia/gst-plugins-bad/Config.in
@@ -305,6 +305,10 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SDL
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SNDFILE
 	bool "sndfile"
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
+
+comment "gst-plugins-bad-plugin-sndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
 
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_VCD
 	bool "vcd"
diff --git a/package/multimedia/gst-plugins-good/Config.in b/package/multimedia/gst-plugins-good/Config.in
index 1498ed0..978aa0b 100644
--- a/package/multimedia/gst-plugins-good/Config.in
+++ b/package/multimedia/gst-plugins-good/Config.in
@@ -198,6 +198,7 @@ config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_OSS4
 
 config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_PULSE
 	depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio
+	depends on BR2_LARGEFILE # pulseaudio -> libsndfile
 	select BR2_PACKAGE_PULSEAUDIO
 	bool "pulseaudio"
 
diff --git a/package/multimedia/mpd/Config.in b/package/multimedia/mpd/Config.in
index 2e44741..6e5c690 100644
--- a/package/multimedia/mpd/Config.in
+++ b/package/multimedia/mpd/Config.in
@@ -41,6 +41,7 @@ config BR2_PACKAGE_MPD_AUDIOFILE
 config BR2_PACKAGE_MPD_PULSEAUDIO
 	bool "pulseaudio"
 	depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio
+	depends on BR2_LARGEFILE # pulseaudio -> libsndfile
 	select BR2_PACKAGE_PULSEAUDIO
 	help
 	  Enable pulseaudio output support.
@@ -105,10 +106,14 @@ config BR2_PACKAGE_MPD_LIBSAMPLERATE
 config BR2_PACKAGE_MPD_LIBSNDFILE
 	bool "libsndfile"
 	select BR2_PACKAGE_LIBSNDFILE
+	depends on BR2_LARGEFILE
 	help
 	  Enable libsndfile input/streaming support.
 	  Select this if you want to play back WAV files.
 
+comment "mpd-libsndfile requires a toolchain with LARGEFILE support"
+	depends on !BR2_LARGEFILE
+
 config BR2_PACKAGE_MPD_MAD
 	bool "mad"
 	default y
diff --git a/package/multimedia/pulseaudio/Config.in b/package/multimedia/pulseaudio/Config.in
index eeb8b5a..03c2613 100644
--- a/package/multimedia/pulseaudio/Config.in
+++ b/package/multimedia/pulseaudio/Config.in
@@ -7,6 +7,7 @@ config BR2_PACKAGE_PULSEAUDIO
 	select BR2_PACKAGE_LIBSNDFILE
 	select BR2_PACKAGE_SPEEX
 	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
+	depends on BR2_LARGEFILE
 	help
 	  PulseAudio is a sound system for POSIX OSes, meaning that it
 	  is a proxy for your sound applications. It allows you to do
@@ -18,5 +19,5 @@ config BR2_PACKAGE_PULSEAUDIO
 
 	  http://pulseaudio.org
 
-comment "pulseaudio requires a toolchain with WCHAR and threads support"
-	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+comment "pulseaudio requires a toolchain with WCHAR, LARGEFILE and threads support"
+	depends on !BR2_USE_WCHAR || !BR2_LARGEFILE || !BR2_TOOLCHAIN_HAS_THREADS
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE
  2013-02-05 17:00 Thomas Petazzoni
@ 2013-02-05 20:46 ` Peter Korsgaard
  0 siblings, 0 replies; 6+ messages in thread
From: Peter Korsgaard @ 2013-02-05 20:46 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> From: Ryan Mallon <rmallon@gmail.com>
 Thomas> libsndfile requires sizeof(sf_count_t) == 8, where sf_count_t is a
 Thomas> typedef alias for off_t. This is not true by default for all
 Thomas> tool-chains, which leads to a runtime assert failure in binaries
 Thomas> compiled against libsndfile. See:

 Thomas>   http://permalink.gmane.org/gmane.comp.audio.libsndfile.devel/229

 Thomas> Add a dependency on BR2_LARGEFILE for libsndfile, and a comment if
 Thomas> BR2_LARGEFILE is not selected.

 Thomas> [Thomas: rebased patch, added more propagation of the new
 Thomas> BR2_LARGEFILE dependency to gst-plugins-good and mpd.]

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-02-05 20:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-23 22:58 [Buildroot] [PATCH] libsndfile: Add dependency on BR2_LARGEFILE Ryan Mallon
  -- strict thread matches above, loose matches on Subject: below --
2013-02-05 17:00 Thomas Petazzoni
2013-02-05 20:46 ` Peter Korsgaard
2012-09-18  5:09 Ryan Mallon
2012-09-18  5:55 ` Thomas Petazzoni
2012-09-18  6:13   ` Ryan Mallon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox