libsndfile: Add -D_FILE_OFFSET_BITS=64 to configuration
PATCH 1/1 libsndfile: Add -D_FILE_OFFSET_BITS=64 to configuration
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 -D_FILE_OFFSET_BITS=64 to the configuration for libsndfile to ensure that off_t is the correct size.
---
package/libsndfile/libsndfile.mk +2 -0
@@ -7,5 +7,7 @@ LIBSNDFILE_VERSION = 1.0.25 LIBSNDFILE_SITE = http://www.mega-nerd.com/libsndfile/files LIBSNDFILE_INSTALL_STAGING = YES +LIBSNDFILE_CFLAGS = $(TARGET_CFLAGS) -D_FILE_OFFSET_BITS=64 +LIBSNDFILE_CONF_ENV += CFLAGS="$(LIBSNDFILE_CFLAGS)" $(eval $(autotools-package))
PATCH 1/1 libsndfile: Add -D_FILE_OFFSET_BITS=64 to configuration
Dear Ryan Mallon,
Quoted 18 lines · Ryan Mallon
libsndfile requires
sizeof(sf_count_t)== 8, wheresf_count_tis a typedef alias foroff_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 -D_FILE_OFFSET_BITS=64 to the configuration for libsndfile to ensure that
off_tis the correct size.Signed-off-by Ryan Mallon <[email protected]>---
(quoted diff) +0
-0b/package/libsndfile/libsndfile.m index e5fbb5e..5e39aca 100644
package/libsndfile/libsndfile.mk line 11
Quoted 5 lines
package/libsndfile/libsndfile.mk +2
-0@@ -7,5 +7,7 @@ LIBSNDFILE_VERSION = 1.0.25 LIBSNDFILE_SITE = http://www.mega-nerd.com/libsndfile/files LIBSNDFILE_INSTALL_STAGING = YES +LIBSNDFILE_CFLAGS = $(TARGET_CFLAGS) -D_FILE_OFFSET_BITS=64 +LIBSNDFILE_CONF_ENV += CFLAGS="$(LIBSNDFILE_CFLAGS)"
This looks strange: Buildroot already automatically passes -D_FILE_OFFSET_BITS=64 when BR2_LARGEFILE=y, see package/Makefile.in.
Thomas
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
PATCH 1/1 libsndfile: Add -D_FILE_OFFSET_BITS=64 to configuration
Quoted 16 lines · Thomas Petazzoni
Dear Ryan Mallon,
Quoted 13 lines · Ryan Mallon
libsndfile requires
sizeof(sf_count_t)== 8, wheresf_count_tis a typedef alias foroff_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 -D_FILE_OFFSET_BITS=64 to the configuration for libsndfile to ensure that
off_tis the correct size.Signed-off-by Ryan Mallon <[email protected]>---
Quoted 13 lines
package/libsndfile/libsndfile.mk line 11
Quoted 10 lines
(quoted diff) +0
-0b/package/libsndfile/libsndfile.m index e5fbb5e..5e39aca 100644
package/libsndfile/libsndfile.mk +2
-0@@ -7,5 +7,7 @@ LIBSNDFILE_VERSION = 1.0.25 LIBSNDFILE_SITE = http://www.mega-nerd.com/libsndfile/files LIBSNDFILE_INSTALL_STAGING = YES +LIBSNDFILE_CFLAGS = $(TARGET_CFLAGS) -D_FILE_OFFSET_BITS=64 +LIBSNDFILE_CONF_ENV += CFLAGS="$(LIBSNDFILE_CFLAGS)"This looks strange: Buildroot already automatically passes -D_FILE_OFFSET_BITS=64 when BR2_LARGEFILE=y, see package/Makefile.in.
Okay, I didn't realise that. libsndfile should either depend on or select (probably the latter) that package then. I will post a follow up.
Thanks,
~Ryan