Last week, we ran a popular webinar Fast Builds and Integrating Libraries: Using CMake and Ninja for C++ Builder 10.2.3.  The replay is now available on Youtube.

In it, I demonstrated two items building with C++Builder and our CMake support: a real-world FireMonkey application, and Google Test.  These are available on github:

  • Mazes: I wrote this for CodeRage XII in 2017 and the same application is available for both Delphi and C++Builder, written in duplicate.  If you are a Delphi user interested in C++, you may find it interesting for that reason, or vice versa.  The C++ application contains a CMakeLists.txt file and is an app I use often to demonstrate our CMake support.  It's small but non-trivial, ie is a real-world application, and is worth checking out if you want to see a real application building with CMake.
  • Google Test and Google Mocks: this is an example of a common third party C++ library that was not written with specific C++Builder support.  An intern here, Nikolay Avramov, has been doing great work going through common libraries and making sure they work with C++Builder, and one of those libraries is Google Test.  Typically, you find that C++ libraries have a couple of things you need to fix: it assumes if it's Windows, it's using MSVC (not true, could be us or MinGW): this requires you fix macros in a header; or it makes similar assumptions about headers or RTL method names: here you need to append or remove a _ for some RTL methods, or add or remove a header.  Both types of fixes are straightforward, you just build, track down the incorrect logic, and fix -- and ideally submit a pull request back :)

CMake support opens up C++Builder to the wide world of C++ and the ability to add third party C++ libraries to your applications is very valuable.  We've had a lot of very positive feedback about this, and we look forward to what we'll do next in this area.

 

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder. Design. Code. Compile. Deploy.

Start Free Trial   Free Delphi Community Edition   Free C++Builder Community Edition   Upgrade Today  

  • Interesting to read about the work on porting Google Test to build with C++Builder. I actually did the same thing myself and submitted a PR (github.com/.../1217, it was a fun weekend!) since I have a hobby project using it, but the maintainers didn't seem too keen on expanding support for more compilers. I'm now wondering if the free C++ Compiler download can be automated from anonymous CI scripts. (Just asked in the Forum, awaiting moderation.) Perhaps incorporating C++Builder into Google Test's CI system (AppVeyor) would have given them more reason to consider supporting it.