# # # patch "debian/changelog" # from [811387507e1131cf301ca00a6bf369839b2c0ff0] # to [4c0fa57b18a942b3fff0cc691e1fdfa891fcdc56] # # patch "sqlite/os_unix.c" # from [9d2a421acc607262e63ccf31e3fe86e5f2520af6] # to [f2ac6974619907da0d8c049f46fedfab7efbd734] # # patch "sqlite/sqliteInt.h" # from [aaf44ba52e0afe1327baae8082e3662d7b36723b] # to [08e712af94b3245723952db857925caa574da55f] # ============================================================ --- debian/changelog 811387507e1131cf301ca00a6bf369839b2c0ff0 +++ debian/changelog 4c0fa57b18a942b3fff0cc691e1fdfa891fcdc56 @@ -1,3 +1,16 @@ +monotone (0.37-1) UNRELEASED; urgency=low + + * New upstream release. + * No longer depends on any external Boost library modules. + And there was much rejoicing. + * Ensure sqlite I/O code sees a prototype for pread/pwrite, and make + it enable large file support correctly. This is believed to be + the cause of the multi-platform FTBFS, but has only been confirmed + to be so on powerpc. Please file new FTBFS bugs for any remaining + architectures that are broken. (Closes: #439584) + + -- name email date + monotone (0.36-2) unstable; urgency=low * Bump boost build-deps to (>= 1.34.1-2) for packaging changes that make ============================================================ --- sqlite/os_unix.c 9d2a421acc607262e63ccf31e3fe86e5f2520af6 +++ sqlite/os_unix.c f2ac6974619907da0d8c049f46fedfab7efbd734 @@ -19,27 +19,6 @@ /* #define SQLITE_ENABLE_LOCKING_STYLE 0 */ /* -** These #defines should enable >2GB file support on Posix if the -** underlying operating system supports it. If the OS lacks -** large file support, these should be no-ops. -** -** 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: RedHat 7.2) but you want your code to work -** on an older machine (ex: RedHat 6.0). If you compile on RedHat 7.2 -** without this option, LFS is enable. But LFS does not exist in the kernel -** in RedHat 6.0, so the code won't work. Hence, for maximum binary -** portability you should omit LFS. -*/ -#ifndef SQLITE_DISABLE_LFS -# define _LARGE_FILE 1 -# ifndef _FILE_OFFSET_BITS -# define _FILE_OFFSET_BITS 64 -# endif -# define _LARGEFILE_SOURCE 1 -#endif - -/* ** standard include files. */ #include ============================================================ --- sqlite/sqliteInt.h aaf44ba52e0afe1327baae8082e3662d7b36723b +++ sqlite/sqliteInt.h 08e712af94b3245723952db857925caa574da55f @@ -17,7 +17,41 @@ #define _SQLITEINT_H_ #include "sqliteLimit.h" +/* +** Note that "feature test" macros must, in general, be defined +** before any system header is included or they will have no effect. +*/ +/* +** We need _XOPEN_SOURCE=500 defined for safe use of pread/pwrite. +** However, it is reported to be unnecesary and cause trouble on +** MacOS, so we don't define it there. +*/ +#if !defined _XOPEN_SOURCE && !defined __MACOS__ +# define _XOPEN_SOURCE 500 +#endif + +/* +** These #defines should enable >2GB file support on Posix if the +** underlying operating system supports it. If the OS lacks +** large file support, these should be no-ops. +** +** 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: RedHat 7.2) but you want your code to work +** on an older machine (ex: RedHat 6.0). If you compile on RedHat 7.2 +** without this option, LFS is enable. But LFS does not exist in the kernel +** in RedHat 6.0, so the code won't work. Hence, for maximum binary +** portability you should omit LFS. +*/ +#ifndef SQLITE_DISABLE_LFS +# define _LARGE_FILE 1 +# ifndef _FILE_OFFSET_BITS +# define _FILE_OFFSET_BITS 64 +# endif +# define _LARGEFILE_SOURCE 1 +#endif + #if defined(SQLITE_TCL) || defined(TCLSH) # include #endif