[PROJ] The state of PROJ C++ 2020

Søren Holm sgh at sgh.dk
Thu May 7 07:57:22 PDT 2020


Hi

Because of some technical reasons we are still using proj 5.1.0 but we are 
working on migrating to never versions. During that work to make sure 
everything works no matter if it is compiled against 5.1 or 6.x I noticed the 
horrors of modern C++ to it's full extend.

PROJ 5.1 (released 2018-05-24) contains around 204 c-files and 2 cpp-files. It 
takes 12 seconds to compile on my system. PROJ 6.3.0.1 (released 2019-12-28) 
contains 223 cpp-files and 17 c-files and takes 220 seconds to compile on my 
system.

I know that PROJ 6.3.0 contains more code (approx x3) and the tests take a 
long time to compile because of google-test but subtracting those 20 test-
files (2 seconds each) still leaves 6.3.0 with a compiletime 165 longer that 
5.1.0.

It might just be that I am old or something (apparently 39 is old these days), 
but it seems to me that taking a working software library and increasing 
linecount x3 while increasing compiletime x10 without adding new files is just 
crazy.

Is it realy worth it?
Is it easier to maintain?
Do we get better performance (I doubt it)?
How about portability?

-- 
Søren Holm




More information about the PROJ mailing list