[GRASS5] Directed Graph Lib Headers (dglib)

Is there any particular reason that the directed graph library headers
exist in both include/dgl and include/grass/dgl? Can one of these be
removed?

--
Brad Douglas <rez@touchofmadness.com> KB8UYR
Address: 37.49,-121.92 / WGS84 National Map Corps #TNMC-3785
GRASS GIS Developer

This applies to all header files. We decided to move all GRASS
header files to include/grass so that they can be installed on system
(e.g. in /usr/local/include) without conflicts.
Modules and especially independent applications using GRASS libraries
(GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.

At the moment we need both copies.

Radim

On 2/8/06, Brad Douglas <rez@touchofmadness.com> wrote:

Is there any particular reason that the directed graph library headers
exist in both include/dgl and include/grass/dgl? Can one of these be
removed?

--
Brad Douglas <rez@touchofmadness.com> KB8UYR
Address: 37.49,-121.92 / WGS84 National Map Corps #TNMC-3785
GRASS GIS Developer

_______________________________________________
grass5 mailing list
grass5@grass.itc.it
http://grass.itc.it/mailman/listinfo/grass5

Radim Blazek wrote:

This applies to all header files. We decided to move all GRASS
header files to include/grass so that they can be installed on system
(e.g. in /usr/local/include) without conflicts.
Modules and especially independent applications using GRASS libraries
(GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.

I've committed a change to use <grass/xxx.h> throughout.

--
Glynn Clements <glynn@gclements.plus.com>

On Thu, 2006-02-09 at 03:11 +0000, Glynn Clements wrote:

Radim Blazek wrote:

> This applies to all header files. We decided to move all GRASS
> header files to include/grass so that they can be installed on system
> (e.g. in /usr/local/include) without conflicts.
> Modules and especially independent applications using GRASS libraries
> (GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.

I've committed a change to use <grass/xxx.h> throughout.

Nice! Thanks Glynn!

On 2/9/06, Glynn Clements <glynn@gclements.plus.com> wrote:

Radim Blazek wrote:

> This applies to all header files. We decided to move all GRASS
> header files to include/grass so that they can be installed on system
> (e.g. in /usr/local/include) without conflicts.
> Modules and especially independent applications using GRASS libraries
> (GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.

I've committed a change to use <grass/xxx.h> throughout.

Thanks, however include/xxx.h is still used in QGIS and GDAL,
can you reenable the copy in include until those packagges are fixed?

Radim

--
Glynn Clements <glynn@gclements.plus.com>

Radim Blazek wrote:

> > This applies to all header files. We decided to move all GRASS
> > header files to include/grass so that they can be installed on system
> > (e.g. in /usr/local/include) without conflicts.
> > Modules and especially independent applications using GRASS libraries
> > (GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.
>
> I've committed a change to use <grass/xxx.h> throughout.

Thanks, however include/xxx.h is still used in QGIS and GDAL,
can you reenable the copy in include until those packagges are fixed?

If you add a symlink, e.g.

  ln -s grass /usr/local/grass6/include/grass/grass

you can just specify /usr/local/grass6/include/grass as the GRASS
includes directory.

--
Glynn Clements <glynn@gclements.plus.com>

On 2/11/06, Glynn Clements <glynn@gclements.plus.com> wrote:

Radim Blazek wrote:

> > > This applies to all header files. We decided to move all GRASS
> > > header files to include/grass so that they can be installed on system
> > > (e.g. in /usr/local/include) without conflicts.
> > > Modules and especially independent applications using GRASS libraries
> > > (GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.
> >
> > I've committed a change to use <grass/xxx.h> throughout.
>
> Thanks, however include/xxx.h is still used in QGIS and GDAL,
> can you reenable the copy in include until those packagges are fixed?

If you add a symlink, e.g.

        ln -s grass /usr/local/grass6/include/grass/grass

you can just specify /usr/local/grass6/include/grass as the GRASS
includes directory.

I can, but I am not sure if it is viable also for making packages,
debian e.g.?

Radim

--
Glynn Clements <glynn@gclements.plus.com>

Radim Blazek wrote:

> > > > This applies to all header files. We decided to move all GRASS
> > > > header files to include/grass so that they can be installed on system
> > > > (e.g. in /usr/local/include) without conflicts.
> > > > Modules and especially independent applications using GRASS libraries
> > > > (GDAL/OGR, QGIS) should include grass/xxx.h instead of xxx.h.
> > >
> > > I've committed a change to use <grass/xxx.h> throughout.
> >
> > Thanks, however include/xxx.h is still used in QGIS and GDAL,
> > can you reenable the copy in include until those packagges are fixed?
>
> If you add a symlink, e.g.
>
> ln -s grass /usr/local/grass6/include/grass/grass
>
> you can just specify /usr/local/grass6/include/grass as the GRASS
> includes directory.

I can, but I am not sure if it is viable also for making packages,
debian e.g.?

Are you asking about how to get the symlink into the package, or
something else? I'm not familiar with .deb packages, but if it's
essentially an archive (e.g. RPMs are just "wrapped" cpio archives),
it should be able to contain symlinks.

A copy should be unnecessary, and probably a bad idea, as you could
potentially end up with different versions in include and
include/grass (even if this is only a remote possibility, it's the
kind of problem where you could waste several days figuring out what's
wrong).

--
Glynn Clements <glynn@gclements.plus.com>

Hello Glynn,

On Mon, 13 Feb 2006 15:50:27 +0000 Glynn Clements
<glynn@gclements.plus.com> wrote:

Are you asking about how to get the symlink into the package, or
something else? I'm not familiar with .deb packages, but if it's
essentially an archive (e.g. RPMs are just "wrapped" cpio archives),
it should be able to contain symlinks.

A copy should be unnecessary, and probably a bad idea, as you could
potentially end up with different versions in include and
include/grass (even if this is only a remote possibility, it's the
kind of problem where you could waste several days figuring out what's
wrong).

Ahh, just finished an email to the list, where I ran in exacly the same
problem...

Therefor I would suggest to keep symlinks in include/*.h pointing to
include/grass*.h to have a backward-compatibility for other packages
which try to link against GRASS (e.g. QGIS, gdal-grass, etc.)

Could this be done easily?

Best
  Stephan

--
GDF Hannover - Solutions for spatial data analysis and remote sensing
Hannover Office - Mengendamm 16d - D-30177 Hannover
Internet: www.gdf-hannover.de - Email: holl@gdf-hannover.de
Phone : ++49-(0)511.39088507 - Fax: ++49-(0)511.39088508

Stephan Holl wrote:

> Are you asking about how to get the symlink into the package, or
> something else? I'm not familiar with .deb packages, but if it's
> essentially an archive (e.g. RPMs are just "wrapped" cpio archives),
> it should be able to contain symlinks.
>
> A copy should be unnecessary, and probably a bad idea, as you could
> potentially end up with different versions in include and
> include/grass (even if this is only a remote possibility, it's the
> kind of problem where you could waste several days figuring out what's
> wrong).

Ahh, just finished an email to the list, where I ran in exacly the same
problem...

Therefor I would suggest to keep symlinks in include/*.h pointing to
include/grass*.h to have a backward-compatibility for other packages
which try to link against GRASS (e.g. QGIS, gdal-grass, etc.)

Could this be done easily?

Multiple symlinks are unnecessary. A single symlink and referring
configure to include/grass should suffice. See my other reply.

--
Glynn Clements <glynn@gclements.plus.com>