summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2017-02-16 09:23:51 +0100
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2017-02-16 09:26:43 +0100
commitd246cf5fd01bb0d20a0e64194ffed514ea8dd0aa (patch)
treefb77d67e81028c27062d218a153db01e2b2070f9
parentdd6893adad3693cd3440d0ced10e67b296a08c47 (diff)
libraw: fix build with old glibc versions
Prior to glibc 2.18, definitions like SIZE_MAX or INT_FAST32_MAX from <stdint.h> were only made available for C code, or in C++ if __STDC_LIMIT_MACROS was defined. The code from jasper uses such definitions, without defining __STDC_LIMIT_MACROS. Unfortunately, defining __STDC_LIMIT_MACROS in the jasper headers doesn't work, since <stdint.h> has already been included before, at a point where __STDC_LIMIT_MACROS was not defined. So to solve this problem, we simply pass -D__STDC_LIMIT_MACROS in CXXFLAGS when building libraw with jasper support. Fixes: http://autobuild.buildroot.net/results/908aef6c82d56060933713df217b6b2ba21a01b0/ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-rw-r--r--package/libraw/libraw.mk5
1 files changed, 5 insertions, 0 deletions
diff --git a/package/libraw/libraw.mk b/package/libraw/libraw.mk
index d76a1808d..f78ce1e0c 100644
--- a/package/libraw/libraw.mk
+++ b/package/libraw/libraw.mk
@@ -21,10 +21,15 @@ LIBRAW_CONF_OPTS += \
LIBRAW_LICENSE = LGPLv2.1 or CDDL 1.0 or LibRaw Software License 27032010
LIBRAW_LICENSE_FILES = LICENSE.LGPL LICENSE.CDDL LICENSE.LibRaw.pdf README
LIBRAW_DEPENDENCIES = host-pkgconf
+LIBRAW_CXXFLAGS = $(TARGET_CXXFLAGS)
+LIBRAW_CONF_ENV = CXXFLAGS="$(LIBRAW_CXXFLAGS)"
ifeq ($(BR2_PACKAGE_JASPER),y)
LIBRAW_CONF_OPTS += --enable-jasper
LIBRAW_DEPENDENCIES += jasper
+# glibc prior to 2.18 only defines constants such as SIZE_MAX or
+# INT_FAST32_MAX for C++ code if __STDC_LIMIT_MACROS is defined
+LIBRAW_CXXFLAGS += -D__STDC_LIMIT_MACROS
else
LIBRAW_CONF_OPTS += --disable-jasper
endif