This repository contains a tutorial that demonstrates a modern workflow to develop C/C++ applications using best practices and modern techniques.
The idea is not to provide a comprehensive guide on CMake or Jenkins, but
to help you to understand how they can work together.
This repository contains the code of a simple library, called asl.
In this tag you can see the source files of the asl library under the src
directory. There are no other files in the
repository so you won't be able to build them using make or Visual Studio.
Your library is already compiling without warnings, but every time you do a change you need to test manually by compiling your application by hand. As you can imagine, this is really test consuming and error-prone.
In this section, we will learn how we can create a new executable using the
add_executable command, that can be used to test your library.
Now we have an executable that can be used to run tests against our library.
In this section, we will learn how to use CTest and add_test to run all the
tests available in our library.
Programming in C++ can be fun, but sometimes it is not worthy to reinvent the wheel every time we develop something. There are tons of open source libraries that are well tested that can help you to develop better programs.
In this section we will cover how can use the FindPackage module
to locate third party libraries in CMake.
In this section, we will add a more advanced system to run unit tests: Google
GTest. This suite allows us to run tests and generate advanced reports. We
will show you here how to integrate it with CTest.
Here we will learn how we can use the install command in CMake to
define an installation layout.