Ulrich Telle wrote:
drh wrote:

I'm still having trouble trying to understand how managing
60 separate code files is perceived to be easier than managing
just 2 files (sqlite3.c and sqlite3.h).  It seems to me that
the management problem gets much easier the fewer files there
are to manage.

In the case someone wants to use SQLite unchanged, it is certainly easier to 
manage only 2 files than 60+. But there are people - like myself - who would 
appreciate to have a source distribution containing the preprocessed source 
files as separate files as it was before. Not instead of the amalgamation 
distribution, but additionally.

I don't know why others want or need the separate files, but I certainly can 
explain why I do: I have written an extension for SQLite using C++ which needs 
the preprocessed header files for compiling. Additionally I have to change the 
SQLite code at one place (essentially adding a single function call in the 
pager). The code change is not a big problem, but extracting the header files 
is quite inconvenient. Unfortunately I can't avoid to extract the header files 
since I can't merge my own code with SQLite code due to the fact, that SQLite 
is written in C and my extension in C++, and SQLite is not compilable in C++ 
mode.

So, I would be grateful if the separate file distribution would return in 
addition to the amalgamation distribution.


We have a custom function in SQLITE also (in the pager even). I would greatly prefer that the sqlite source be available as the separate files.

Many years ago (1980 something) there was a DOS serial port communications library called "Async Pro" (or maybe it was "Async Plus"). It included ISRs for using serial ports on DOS, multi-port cards like Digi and Cyclades. It included Fax support (send/recv). The entire source distribution was 100+ .c and .h files. But when you compiled it, you just compiled a single master ".c" file that #included all of the other files. The compiler could do global optimizations, and the source was easy to edit. If you didn't want a feature, you just edited the master source file.

Separate source files were nice, as we kept them in RCS and applied our own bug fixes to them. It would have been a pain to merge the vendor updates if everything were in one single file (especially if the vendor renamed lots of stuff or moved it around).





-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to