[GRASSLIST:6250] Re: Fedora RPMs - success!
Craig Aumann
caumann at ualberta.ca
Thu Mar 24 16:25:07 EST 2005
Thanks! I actually followed your first suggestion, but the separate
RPMs is a better idea.
I'll play around with this some more this weekend.
Cheers!
Craig
On Thu, 2005-03-24 at 12:58, Glynn Clements wrote:
> Craig Aumann wrote:
>
> > I successfully created some Fedora RPMS yesterday. Although I need to
> > do some more testing of the RPMS, one question I have is how to deal
> > with the databases. The configuration part of the SUSE RPM spec file
> > was called without allowing databases. I.e.
> >
> > # --with-mysql \
> > # --with-mysql-includes=/usr/include/mysql/ \
> > # --with-mysql-libs=/usr/lib/mysql \
> > # --with-odbc --with-odbc-libs=/usr/lib/
> > # --with-odbc-includes=/usr/include/
> > # --with-postgres --with-postgres-includes=/usr/include/pgsql
> > # --with-postgres-libs=/usr/lib/ \
> >
> > are all commented out.
> >
> > Should I then build two different RPM versions, one with the databases,
> > one without? As a user who uses Postgresql all the time, I would hate
> > it if I as an enduser had to download the source RPM and recompile it
> > just to use postgresql. Alternatively, I certainly understand not
> > wanting an enduser to have to install all these extra database packages
> > just to try out GRASS.
> >
> > What's the best thing to do here?
>
> For 6.x, build with support for all of the databases, but don't list
> them as RPM dependencies.
>
> The binding between the vector libraries and specific databases is
> dynamic. The vector libraries link against the database client
> library, the client library communicates with a specific database
> driver (which is a separate program) via pipes, the driver links
> against the specific database libraries.
>
> The only programs which will fail to execute if the relevant
> PostgreSQL/MySQL/etc shared libraries aren't present are the
> corresponding database drivers. So, everything will work so long as
> you don't try to create or access databases for which the
> corresponding package isn't installed.
>
> Optionally, put the individual drivers ($GISBASE/driver/db/*) into
> their own RPMs, each of which would have the corresponding database
> package as a dependency. That would ensure that the dependency
> information was recorded, e.g. for "rpm --whatrequires ...".
>
> The dbf driver doesn't have external dependencies, so it can go into
> the main GRASS RPM.
More information about the grass-user
mailing list