| From 2a5b33fe5cb921993573392afac19185e224b49a Mon Sep 17 00:00:00 2001 |
| From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
| Date: Sun, 17 Jan 2016 14:14:28 +0100 |
| Subject: [PATCH] pixman-private: include <float.h> only in C code |
| |
| <float.h> is included unconditionally by pixman-private.h, which in |
| turn gets included by assembler files. Unfortunately, with certain C |
| libraries (like the musl C library), <float.h> cannot be included in |
| assembler files: |
| |
| CCLD libpixman-arm-simd.la |
| /home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h: Assembler messages: |
| /home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h:8: Error: bad instruction `int __flt_rounds(void)' |
| /home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h: Assembler messages: |
| /home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h:8: Error: bad instruction `int __flt_rounds(void)' |
| |
| It turns out however that <float.h> is not needed by assembly files, |
| so we move its inclusion within the #ifndef __ASSEMBLER__ condition, |
| which solves the problem. |
| |
| Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
| --- |
| pixman/pixman-private.h | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| diff --git a/pixman/pixman-private.h b/pixman/pixman-private.h |
| index 73108a0..73a5414 100644 |
| --- a/pixman/pixman-private.h |
| +++ b/pixman/pixman-private.h |
| @@ -1,5 +1,3 @@ |
| -#include <float.h> |
| - |
| #ifndef PIXMAN_PRIVATE_H |
| #define PIXMAN_PRIVATE_H |
| |
| @@ -30,6 +28,7 @@ |
| #include <stdio.h> |
| #include <string.h> |
| #include <stddef.h> |
| +#include <float.h> |
| |
| #include "pixman-compiler.h" |
| |
| -- |
| 2.6.4 |
| |