Clean up CTest test management
[gromacs.git] / cmake / TestLargeFiles.c.cmakein
blob10922d56675c69a79f4dc8f7055c6feab7f851f1
1 #cmakedefine _LARGEFILE_SOURCE
2 #cmakedefine _LARGEFILE64_SOURCE
3 #cmakedefine _LARGE_FILES
4 #cmakedefine _FILE_OFFSET_BITS @_FILE_OFFSET_BITS@
6 #include <sys/types.h>
7 #include <stdio.h>
8 #include <stdlib.h>
10 int main(int argc, char **argv)
12   /* Cause a compile-time error if off_t is smaller than 64 bits,
13    * and make sure we have ftello / fseeko.
14    */
15 #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
16   int off_t_is_large[ (LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1 ];  
17   FILE *fp = fopen(argv[0],"r");
18   off_t offset = ftello( fp );
20   fseeko( fp, offset, SEEK_CUR );
21   fclose(fp);
22   return off_t_is_large[0] || argc;