[fpc-devel] MySQL v4.0 v4.1 and v5.0

Michael Van Canneyt michael at freepascal.org
Thu Nov 17 18:06:56 CET 2005



On Thu, 17 Nov 2005, Vincent Snijders wrote:

> Joost van der Sluis wrote:
> > Hi all,
> > 
> > atm I have a nearly finished mysql.inc file that can be used with MySQL
> > v4.0 v4.1 and v5.0. Loaded dynamically and static.
> > 
> > It uses several defines to set the right MySQL version and to turn the
> > dynamically linking on or off.
> > 
> > Create 6 different units in packages/base/mysql - for each combination
> > one? (thus mysql40, mysql40dyn, mysql41, mysql41dyn, mysql50 and
> > mysql51dyn?)
> > 
> > But then, what to do with the MySQL-connection for sqldb? In principle
> > the only thing that has to be changes to use another MySQL-version is to
> > change the used unit. So, always use the TMysqlConn-component, but
> > changes the usage-clausule.
> > 
> > But how can this be handled by Lazarus? With the SQLDB-package only one
> > unit can be used. (Or else multiple types with the same name are
> > defined) Let the users manually change the usage-line if they want to
> > use a different MySQL-library-version?
> 
> FOr the sqldb package, let them add a define to the compiler options:
> -dMYSQL40
> or
> -dMYSQL41
> or
> -dMYSQL50
> 
> That seems more user friendly than editing the uses clause.
> 
> In the source, change the uses clause, depending on the defines.

The problem with this approach is that you can never distribute 
compiled MySQL support in this way. The only way to do that is to
do the mysql40, mysql40dyn, mysql41, mysql41dyn, mysql50, mysql51dyn
stuff.

So for FPC, I'm for that approach.

Michael.



More information about the fpc-devel mailing list