diff mbox

exfat: fix build with musl

Message ID 1441012865-31350-1-git-send-email-peter@korsgaard.com
State Accepted
Commit d3e9159a935eebc9741d9224f6b4393451dbd7f4
Headers show

Commit Message

Peter Korsgaard Aug. 31, 2015, 9:21 a.m. UTC
Fixes:
http://autobuild.buildroot.net/results/e1d/e1db07f0ea1e70c62f3294016c1b3a094de71d12/

The endianness handling functions in platform.h are protected behind ifdef
__GLIBC__ which musl doesn't define even though it does provide the
endianness handling interface.  Work around it by ensuring __GLIBC__ is
defined.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
 package/exfat/exfat.mk | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

Comments

Peter Korsgaard Aug. 31, 2015, 8:24 p.m. UTC | #1
>>>>> "Peter" == Peter Korsgaard <peter@korsgaard.com> writes:

 > Fixes:
 > http://autobuild.buildroot.net/results/e1d/e1db07f0ea1e70c62f3294016c1b3a094de71d12/

 > The endianness handling functions in platform.h are protected behind ifdef
 > __GLIBC__ which musl doesn't define even though it does provide the
 > endianness handling interface.  Work around it by ensuring __GLIBC__ is
 > defined.

 > Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

Committed, thanks.
diff mbox

Patch

diff --git a/package/exfat/exfat.mk b/package/exfat/exfat.mk
index 097c3ac..5508ec3 100644
--- a/package/exfat/exfat.mk
+++ b/package/exfat/exfat.mk
@@ -10,15 +10,24 @@  EXFAT_SOURCE = fuse-exfat-$(EXFAT_VERSION).tar.gz
 EXFAT_DEPENDENCIES = host-scons libfuse
 EXFAT_LICENSE = GPLv3+
 EXFAT_LICENSE_FILES = COPYING
+EXFAT_CFLAGS = $(TARGET_CFLAGS) -std=c99
+
+# The endianness handling functions in platform.h are protected behind
+# ifdef __GLIBC__ which musl doesn't define even though it does
+# provide the endianness handling interface. Work around it by
+# ensuring __GLIBC__ is defined.
+ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
+EXFAT_CFLAGS += -D__GLIBC__
+endif
 
 define EXFAT_BUILD_CMDS
 	(cd $(@D); \
-		$(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS))
+		$(TARGET_CONFIGURE_OPTS) CCFLAGS="$(EXFAT_CFLAGS)" $(SCONS))
 endef
 
 define EXFAT_INSTALL_TARGET_CMDS
 	(cd $(@D); \
-		$(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS) \
+		$(TARGET_CONFIGURE_OPTS) CCFLAGS="$(EXFAT_CFLAGS)" $(SCONS) \
 		DESTDIR=$(TARGET_DIR)/usr/sbin install)
 endef