Making the script more complex
In this section, we are showing a more complex script that includes subfolders, libraries, and executables; all told, just two files and a few lines, as demonstrated in this script. It's not mandatory to create multiple CMakeLists.txt
files, because we can specify everything in the main CMakeLists.txt
file. However, it is more common to use different CMakeLists.txt
files for each project subfolder, thereby making it more flexible and portable.
This example has a code structure folder, which contains one folder for a utils
library and the root folder, which contains the main executable:
CMakeLists.txt main.cpp utils/ CMakeLists.txt computeTime.cpp computeTime.h logger.cpp logger.h plotting.cpp plotting.h
Then, we have to define two CMakeLists.txt
files, one in the root folder and the other in the utils
folder. The CMakeLists.txt
root folder file has the following content:
cmake_minimum_required (VERSION 3.0) project (Chapter2...