This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PING] Another build!=host fix


Hello,

and Ping for this patch:

http://gcc.gnu.org/ml/gcc-patches/2013-12/msg01552.html


note however, that cross-building is probably broken
anyway in the moment by r205690,


Thanks
Bernd.

> there is a small problem with SSIZE_MAX, because it is not always
> defined, especially not in gcc/glimits.h, which seems to be the fall-back
> if the target fails to have a working limits.h.
>
> When I create a cross-compiler for --target=arm-linux-gnueabihf, the
> working limits.h is overwritten by fix-includes with a copy of gcc/glimits.h.
> Probably because it is not possible to compile the target headers with the build
> compiler and produce meaningful test results.
>
> However because gcc/glimits.h does not define SSIZE_MAX the following build fails with
>
> In file included from ../../gcc-4.9-20131215/gcc/config/host-linux.c:21:0:
> ../../gcc-4.9-20131215/gcc/config/host-linux.c: In function 'int linux_gt_pch_use_address(void*, size_t, int, size_t)':
> ../../gcc-4.9-20131215/gcc/config/host-linux.c:215:43: error: 'SSIZE_MAX' was not declared in this scope
>        nbytes = read (fd, base, MIN (size, SSIZE_MAX));
>                                            ^
> ../../gcc-4.9-20131215/gcc/system.h:351:26: note: in definition of macro 'MIN'
>  #define MIN(X,Y) ((X) < (Y) ? (X) : (Y))
>                           ^
>
>
> The most simple way to fix this would be to not use SSIZE_MAX
> here.
>
> Boot-Strapped and regression-tested on X86_64.
> Plus cross-build for arm-linux-gnueabihf.
>
> Ok for trunk?
>
>
> Thanks
> Bernd. 		 	   		  

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]