[gdal-dev] About CMake build again

Ari Jolma ari.jolma at gmail.com
Mon Oct 30 04:17:05 PDT 2017


Mateusz Loskot kirjoitti 30.10.2017 klo 11:24:
> On 30 October 2017 at 10:06, Dmitry Baryshnikov <bishop.dev at gmail.com> wrote:
>> Also there is one big problem for me in #7080 - this is third build system
>> additionally to GNUMakefile, makefile.vc.  And now CMakeLists.txt must be
>> supported too. Three files which must be synced each other with and taking
>> into consideration the upper scripts, it's awful!
> Dmitry,
>
> This issue is orthogonal to actual CMake challenge.
> If core developers of a project X do not agree to switch to a new
> build configuration Y,
> then any initiative to develop setup for Y will live in a side car.
>
> AFAIU, there is no plan or even will for such switch in GDAL.
> Similar situation is with GEOS.

https://github.com/OSGeo/gdal/graphs/contributors

It's basically Even who nowadays does developments for GDAL, and Kurt to 
some degree. So to change the build system, one needs only to convince 
Even :) I'm rather sure the rest of the PSC would not object.

I see the build system usually as a necessary evil. I'm yet to see a 
developer friendly build system. I don't know if anybody really has any 
passion to improve the current system of GDAL. I also don't understand 
the antipathy against libtool. I'm mostly happy with the current system 
since I'm on Linux and I usually don't need to mess with it. Building 
for Windows was a pain (even when I used to use mingw).

I have very little experience with CMake, mostly from building QGIS. It 
has a bit fancier UI than autotools but otherwise I don't have an opinion.

There are few things that could perhaps be better IMO

- the need to run make clean after updates (isn't it possible to have 
good dependencies?)
- the possibility to make real light-weight builds with only few drivers
- I also hand-edit the -O2 away from GDALmake.opt when I need to use 
gdb, maybe there is a configure option for that or something but I don't 
know

Best,

Ari

>
> Finally, developing configuration for Y build system by completely
> revolutionising structure of project X is a terrible thing to do in terms
> of potential switch to Y. IOW, the bigger and deeper a revolution, the less
> chance to get acceptance by core developers, also psychologically.
>
> Best regards,



More information about the gdal-dev mailing list