mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-06 15:49:35 +03:00
Make sure the large-file support macros occur first in sqliteInt.h.
Fix for CVSTrac ticket #4022. FossilOrigin-Name: b0848925babde5241aefe0a117ebb10299c94a15
This commit is contained in:
@@ -16,6 +16,33 @@
|
||||
#ifndef _SQLITEINT_H_
|
||||
#define _SQLITEINT_H_
|
||||
|
||||
/*
|
||||
** These #defines should enable >2GB file support on POSIX if the
|
||||
** underlying operating system supports it. If the OS lacks
|
||||
** large file support, or if the OS is windows, these should be no-ops.
|
||||
**
|
||||
** Ticket #2739: The _LARGEFILE_SOURCE macro must appear before any
|
||||
** system #includes. Hence, this block of code must be the very first
|
||||
** code in all source files.
|
||||
**
|
||||
** Large file support can be disabled using the -DSQLITE_DISABLE_LFS switch
|
||||
** on the compiler command line. This is necessary if you are compiling
|
||||
** on a recent machine (ex: Red Hat 7.2) but you want your code to work
|
||||
** on an older machine (ex: Red Hat 6.0). If you compile on Red Hat 7.2
|
||||
** without this option, LFS is enable. But LFS does not exist in the kernel
|
||||
** in Red Hat 6.0, so the code won't work. Hence, for maximum binary
|
||||
** portability you should omit LFS.
|
||||
**
|
||||
** Similar is true for Mac OS X. LFS is only supported on Mac OS X 9 and later.
|
||||
*/
|
||||
#ifndef SQLITE_DISABLE_LFS
|
||||
# define _LARGE_FILE 1
|
||||
# ifndef _FILE_OFFSET_BITS
|
||||
# define _FILE_OFFSET_BITS 64
|
||||
# endif
|
||||
# define _LARGEFILE_SOURCE 1
|
||||
#endif
|
||||
|
||||
/*
|
||||
** Include the configuration header output by 'configure' if we're using the
|
||||
** autoconf-based build
|
||||
@@ -82,33 +109,6 @@
|
||||
# define SQLITE_PTR_TO_INT(X) ((int)(((char*)X)-(char*)0))
|
||||
#endif
|
||||
|
||||
/*
|
||||
** These #defines should enable >2GB file support on POSIX if the
|
||||
** underlying operating system supports it. If the OS lacks
|
||||
** large file support, or if the OS is windows, these should be no-ops.
|
||||
**
|
||||
** Ticket #2739: The _LARGEFILE_SOURCE macro must appear before any
|
||||
** system #includes. Hence, this block of code must be the very first
|
||||
** code in all source files.
|
||||
**
|
||||
** Large file support can be disabled using the -DSQLITE_DISABLE_LFS switch
|
||||
** on the compiler command line. This is necessary if you are compiling
|
||||
** on a recent machine (ex: Red Hat 7.2) but you want your code to work
|
||||
** on an older machine (ex: Red Hat 6.0). If you compile on Red Hat 7.2
|
||||
** without this option, LFS is enable. But LFS does not exist in the kernel
|
||||
** in Red Hat 6.0, so the code won't work. Hence, for maximum binary
|
||||
** portability you should omit LFS.
|
||||
**
|
||||
** Similar is true for Mac OS X. LFS is only supported on Mac OS X 9 and later.
|
||||
*/
|
||||
#ifndef SQLITE_DISABLE_LFS
|
||||
# define _LARGE_FILE 1
|
||||
# ifndef _FILE_OFFSET_BITS
|
||||
# define _FILE_OFFSET_BITS 64
|
||||
# endif
|
||||
# define _LARGEFILE_SOURCE 1
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
** The SQLITE_THREADSAFE macro must be defined as either 0 or 1.
|
||||
|
||||
Reference in New Issue
Block a user