> -----Original Message----- > From: Development <[email protected]> On Behalf Of > Konstantin Tokarev > Sent: 06 June 2019 14:30 > To: Simon Hausmann <[email protected]>; Bogdan Vatra > <[email protected]>; [email protected] > Subject: Re: [Development] Proposing CMake as build tool for Qt 6 > > > > 06.06.2019, 16:25, "Simon Hausmann" <[email protected]>: > > Hi, > > > > Regarding PCH, it seems that right now it would be easiest to include > something like https://github.com/sakra/cotire . Patches are welcome to > integrate this or alternatively work with upstream CMake for a built-in > solution. > > Yet another alternative is https://github.com/larsch/cmake-precompiled- > header/blob/master/PrecompiledHeader.cmake > which is not so monstrous as cotire
I have used Cotire until recently and would caution against it. The library at its core is a clever idea but its implementation caused a lot of build instability for us. Its current version doesn't work on MSVC with CMake > 3.12, also fails on Mac with AppleClang 8.0 (bad command line parameter). It appears to be unmaintained as my bug reports have gone completely unanswered / not even acknowledged. In the end I wrote my own pch script that works ok for our scenario. MSVC support is pretty trivial, gcc/clang more awkward because their pch compilation is a separate build step. My script did include some ideas from larsch github repo linked above, but I don't like his approach of injecting build flags into the clang/gcc pch stage (it didn't work for me, I ended up missing critical flags). I used some ideas from cotire to generate a list of includes to seed each module PCH header file, but maintain updates manually (like MSVC stdafx.h/pch.h approach). I'm sure pch header generation could be automated too... Mark _______________________________________________ Development mailing list [email protected] https://lists.qt-project.org/listinfo/development
