1 /* ========================================================================== */ 2 /* === Include/cholmod_io64 ================================================= */ 3 /* ========================================================================== */ 4 5 /* ----------------------------------------------------------------------------- 6 * CHOLMOD/Include/cholmod_io64.h. 7 * Copyright (C) 2005-2006, Univ. of Florida. Author: Timothy A. Davis 8 * CHOLMOD/Include/cholmod_io64.h is licensed under Version 2.1 of the GNU 9 * Lesser General Public License. See lesser.txt for a text of the license. 10 * CHOLMOD is also available under other licenses; contact authors for details. 11 * -------------------------------------------------------------------------- */ 12 13 /* Definitions required for large file I/O, which must come before any other 14 * #includes. These are not used if -DNLARGEFILE is defined at compile time. 15 * Large file support may not be portable across all platforms and compilers; 16 * if you encounter an error here, compile your code with -DNLARGEFILE. In 17 * particular, you must use -DNLARGEFILE for MATLAB 6.5 or earlier (which does 18 * not have the io64.h include file). 19 */ 20 21 #ifndef CHOLMOD_IO_H 22 #define CHOLMOD_IO_H 23 24 /* skip all of this if NLARGEFILE is defined at the compiler command line */ 25 #ifndef NLARGEFILE 26 27 #if defined(MATLAB_MEX_FILE) || defined(MATHWORKS) 28 29 /* CHOLMOD is being compiled as a MATLAB mexFunction, or for use in MATLAB */ 30 #include "io64.h" 31 32 #else 33 34 /* CHOLMOD is being compiled in a stand-alone library */ 35 #undef _LARGEFILE64_SOURCE 36 #define _LARGEFILE64_SOURCE 37 #undef _FILE_OFFSET_BITS 38 #define _FILE_OFFSET_BITS 64 39 40 #endif 41 42 #endif 43 44 #endif 45 46