Skip to content

Conversation

@kaladron
Copy link

  • Add tabulate.cppm module interface file exporting core types
  • Extend CMakeLists.txt to conditionally build C++20 module target
  • Create USING.md with comprehensive integration guide covering:
    • Header-only usage
    • CMake FetchContent and find_package
    • C++20 modules with detailed examples
    • Single header usage
  • Add USE_CPP20 CMake option for C++20 standard support
  • Add TABULATE_BUILD_MODULE option to control module building
  • Install module files alongside headers
  • Update README.md with link to integration guide

The module support requires CMake 3.28+ and is compatible with generators supporting C++20 modules (Ninja, Visual Studio 17.4+).

Tested:

  • Clang 22 on Linux with Ninja.

- Add tabulate.cppm module interface file exporting core types
- Extend CMakeLists.txt to conditionally build C++20 module target
- Create USING.md with comprehensive integration guide covering:
  - Header-only usage
  - CMake FetchContent and find_package
  - C++20 modules with detailed examples
  - Single header usage
- Add USE_CPP20 CMake option for C++20 standard support
- Add TABULATE_BUILD_MODULE option to control module building
- Install module files alongside headers
- Update README.md with link to integration guide

The module support requires CMake 3.28+ and is compatible with
generators supporting C++20 modules (Ninja, Visual Studio 17.4+).

Tested:
 - Clang 22 on Linux with Ninja.
@kaladron kaladron mentioned this pull request Dec 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant