Add auto-generation notices for generated files

This directs new devs to look for the source files instead of
wasting time editing generated files.
This commit is contained in:
2026-02-28 13:30:23 -04:00
parent 7ae1fe6b3b
commit 2965f8e582
4 changed files with 34 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
if(NOT DEFINED CPPBESSOT_TARGET_FILE OR "${CPPBESSOT_TARGET_FILE}" STREQUAL "")
message(FATAL_ERROR "CPPBESSOT_TARGET_FILE is required")
endif()
# Some CMake command invocations can pass wrapped quotes through -D values.
set(_target_file "${CPPBESSOT_TARGET_FILE}")
string(REGEX REPLACE "^\"(.*)\"$" "\\1" _target_file "${_target_file}")
if(NOT EXISTS "${_target_file}")
message(FATAL_ERROR "Target file does not exist: ${_target_file}")
endif()
file(READ "${_target_file}" _content)
if(_content MATCHES "AUTO-GENERATED BY CppBeSsot")
return()
endif()
set(_notice "/*\n * AUTO-GENERATED BY CppBeSsot.\n * Direct edits are pointless: this file is regenerated.\n * Update the OpenAPI schema and/or CppBeSsot templates, then regenerate generated-* outputs.\n */\n\n")
file(WRITE "${_target_file}" "${_notice}${_content}")