[Geotiff] Concurrent build bug?

Dalton, Tom tom.dalton at eds.com
Tue Sep 22 02:24:34 PDT 2009


Hi,

I have had a search for this issue on the Trac and the mail list
archives but couldn't find anything.

I am trying to build libgeotiff 1.2.5 using multiple concurrent build
processes, but I think there is a subtle bug in the Makefile.in that
misses a dependency. This results in the build failing sometimes,
depending on how the scheduling works out.

I think that some of the files like geo_free.c/o rely on xtiffio.h

Xtiffio.h is a symlink and is removed and recreated by the ${XTIFFINC}
rule.

Geo_free.o is created by it's own rule and is also contained in the
${OBJS} (via ${CORE_OBJS}) rules. However, none of these seem to contain
the dependency on ${XTIFFINC}. The result seems to be that sometimes the
XTIFFINC rule is interleaved with the building of the core objects, so
you get something like:

rm xtiffio.h
gcc -c ..... Geo_free.c
ln -s ./libxtiff/*.h (which includes xtiffio.h)

So then the compilation fails because it can't find the xtiffio.h and
the build bombs out. Running the build again with no changes will then
work.

As a workaround, I can avoid the use of the -j flag (or use -j 1).

Is anyone familiar with the build files that can confirm or deny this is
a bug?

Thanks for your help,

Tom Dalton
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/geotiff/attachments/20090922/cdcdff5c/attachment.html>


More information about the Geotiff mailing list