[GRASS-dev] Re: [GRASS-CVS] glynn: grass6/raster/r.proj.seg Makefile, 1.1, 1.2

Markus Neteler wrote:

Thanks for your answer. Would you mind to repost it to the
list? I think this should go into the archive/minds.

OK ...

Markus Neteler wrote:

wouldn't it be better to do this in include/Make to
avoid modifications in hundreds of Makefiles?

Only once there are no longer any files which can't cope with LFS.

(I know that not all commands are LFS ready)

Currently, the following files still use lseek(), and thus may be
affected:

display/d.rast.edit/main.c
display/d.rast.edit/mk_new_layer.c
display/d.rast.edit/mk_tmp_file.c
imagery/i.ortho.photo/photo.rectify/write.c
imagery/i.rectify/write.c
lib/driver/font2.c
lib/fonts/for_grass/font_2_bin.c
lib/fonts/for_grass/splitfont.c
lib/g3d/g3dcache.c
lib/g3d/g3dclose.c
lib/g3d/g3dopen.c
lib/g3d/header.c
lib/g3d/index.c
lib/g3d/tileread.c
lib/g3d/tilewrite.c
lib/segment/format.c
lib/segment/init.c
lib/segment/seek.c
lib/segment/setup.c
raster/r.compress/main.c
raster/r.drain/filldir.c
raster/r.drain/main.c
raster/r.drain/resolve.c
raster/r.drain/tinf.c
raster/r.fill.dir/dopolys.c
raster/r.fill.dir/filldir.c
raster/r.fill.dir/main.c
raster/r.fill.dir/ppupdate.c
raster/r.fill.dir/resolve.c
raster/r.fill.dir/tinf.c
raster/r.fill.dir/wtrshed.c
raster/r.mfilter/execute.c
raster/r.mfilter/getrow.c
raster/r.random/count.c
raster/r.support/modhead/modhead.c
raster/r.thin/io.c
raster/r.li/r.li.daemon/daemon.c
raster3d/r3.in.v5d/v5d.c
raster3d/r3.out.v5d/v5d.c

Note that files which are already compiled with LFS (e.g. libgis'
raster I/O code, r.proj.seg) aren't included because they're actually
using lseek64() due to the _FILE_OFFSET_BITS setting.

Some of the above aren't an issue because they will never handle files

2GiB (e.g. the font stuff). Others aren't an issue because they only

ever lseek() to the beginning of the file (e.g. r.random).

Others may need a signficant amount of work, particularly if offsets
are passed around extensively. I suspect that lib/g3d and lib/segment
may involve a fair amount of work.

Until that's done, enabling LFS globally is dangerous.

And even if we never enable LFS globally, there are still only 17
Makefiles which might need to have it enabled locally, i.e. those for:

display/d.rast.edit
imagery/i.ortho.photo/photo.rectify
imagery/i.rectify
lib/driver
lib/fonts/for_grass
lib/g3d
lib/segment
raster/r.compress
raster/r.drain
raster/r.fill.dir
raster/r.mfilter
raster/r.random
raster/r.support/modhead
raster/r.thin
raster/r.li/r.li.daemon
raster3d/r3.in.v5d
raster3d/r3.out.v5d

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