Commit a28940d9d5 changed the SQLite
build to use CFLAGS instead of NIX_CFLAGS_COMPILE, but that's really
bad because it clobbers the default -O2 flag. So all this time we had
an unoptimized SQLite build. (This is one of the reasons why
NIX_CFLAGS_COMPILE exists - messing with CFLAGS is almost never a good
idea.)
I'm sure that sqlite works on more platforms than linux, but I cannot
verify that myself (I only have linux). So I'll leave it up to the users
of other platforms to expand this as needed.
- Add version 3.7.14.1 again, so that we can work around issues caused
by the recent 3.7.16.1 update.
- Drop obsolete version 3.6.x.
- Consistently use the sqlite version number to name the file of the
expression.
Sqlite has a build mode called "amalgamation" that gathers all 90+ source code
files into a single sqlite3.c file before compiling the library. Building
sqlite this way reportedly gives a 5-10% performance gain because the compiler
can perform more sophisticated optimizations.
svn path=/nixpkgs/trunk/; revision=18092
The new version requires Tcl at build time in order to construct sqlite3.h,
even when the --without-tcl option is passed to configure. That feels odd
because the sqlite web site does advertise "no dependencies", but then it's
probably not a big deal either. The build of the Tcl plugin for sqlite is still
disabled, so there is no run-time dependency.
svn path=/nixpkgs/trunk/; revision=18091
The sqlite configure script guesses whether to enable Tcl support. Apparently,
this guessing finds a Tcl installation in /usr and thus enables Tcl. The
subsequent build fails, however: the compiler doesn't find the <tcl.h> because
/usr is not a default search path. To remedy the problem, the expression now
explicitly specifies --disable-tcl to avoid guessing altogether.
In the same spirit, we furthermore specify the following configure flags, which
represent the defaults that ./configure chooses when left on its own devices:
--disable-amalgamation
--enable-threadsafe
--disable-cross-thread-connections
--disable-tempstore
svn path=/nixpkgs/trunk/; revision=16184
Unfortunately, static builds fail because the package doesn't recognize
that libpthread needs to be linked explicitly. I'll fix that ASAP.
svn path=/nixpkgs/trunk/; revision=14681