Skip to content

Add unified feature_flags headers #224

Description

@kcenon

Summary

Add unified feature flag headers and normalize compiler/stdlib feature detection in common_system.

5W1H Specification

  • Who: common_system maintainers
  • What: Implement unified headers + KCENON_* macro exports
  • Where: include/kcenon/common/config/ and config helpers
  • When: TBD
  • Why: Single source of truth for feature detection and integration flags
  • How: New headers + CMake export + legacy aliases

Parent Issue

#223

Tasks

  • Add feature_flags.h, feature_detection.h, feature_flags_core.h, feature_system_deps.h
  • Guard __has_include usage and keep a fallback path
  • Detect jthread via __cpp_lib_jthread / __cpp_lib_stop_token
  • Export KCENON_* compile definitions via features.cmake or helper
  • Provide legacy aliases behind a migration flag

Acceptance Criteria

  • Unified headers compile standalone in common_system
  • KCENON_HAS_SOURCE_LOCATION and KCENON_HAS_JTHREAD are accurate across compilers
  • Legacy aliases do not override explicit 0 values

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions