~/talk

Tips and Tricks for Becoming a CMake Master

Talkat C++ on Sea 2023 · 2023-06-28..06-30· [c-and-cpp]
speakerdeck:closingbrace
slides:none on file

CMake code creates a custom FindOracle.cmake to locate Oracle client libs and headers, then runs Oracle’s preprocessor via add_custom_command per source to convert embedded SQL to C++ and captures its include search list. The script parses the preprocessor output to extract include directories, exposes them through an INTERFACE_INCLUDE_DIRECTORIES interface library and sets per-source custom command outputs and dependencies so multiple CMake targets can reuse the generated files. Uses generator expressions, marks include paths as SYSTEM to suppress warnings and supports Ninja/Visual Studio builds.

AI-written summary · about

  1. 0:00Introduction
  2. 5:01CMake workflow overview
  3. 9:10Finding external packages
  4. 13:04Oracle dependencies
  5. 18:29Target properties
  6. 26:30Compiler options and includes
  7. 35:44Source files and dependencies
  8. 42:44Generator expressions
  9. 46:51Custom commands and silent builds
  10. 51:15Finalizing build and demo
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.