UsefulLinks
Computer Science
Other Tools and Technologies
CMake Build System
1. Introduction to Build Systems and CMake
2. Getting Started with CMake
3. CMake Language Fundamentals
4. Projects, Targets, and Properties
5. Managing Dependencies
6. Build Configuration and Toolchains
7. Advanced CMake Topics
8. Testing with CTest
9. Packaging with CPack
10. CMake Best Practices and Patterns
10.
CMake Best Practices and Patterns
10.1.
Project Structure
10.1.1.
Directory Organization
10.1.2.
CMakeLists.txt Placement
10.1.3.
Source and Header Organization
10.2.
Modern CMake Principles
10.2.1.
Target-Centric Design
10.2.2.
Avoiding Global Settings
10.2.3.
Interface Propagation
10.2.4.
Minimal Version Requirements
10.3.
Performance Considerations
10.3.1.
Build Time Optimization
10.3.2.
Dependency Management
10.3.3.
Parallel Build Support
10.4.
Debugging CMake
10.4.1.
Common Error Messages
10.4.2.
Debugging Techniques
10.4.3.
Verbose Output Options
10.4.4.
CMake GUI and ccmake
10.5.
Version Compatibility
10.5.1.
Policy Management
10.5.2.
Feature Detection
10.5.3.
Backward Compatibility
Previous
9. Packaging with CPack
Go to top
Back to Start
1. Introduction to Build Systems and CMake