// SPDX-License-Identifier: MIT // SPDX-FileCopyrightText: 2026 Martino Ferrari // Template for : configure_file() expands it into // /include/plot/version.hpp at configure time, and that generated file // -- not this one -- is a public header. The umbrella names it, and the // install rules place it under include/plot/ with the rest of the surface, so // a consumer can ask what it compiled against: the macros for a preprocessor // test, the plot::version constants for everything else. Both come from the // project() version, so there is exactly one place a release edits. #pragma once #define PLOT_VERSION_MAJOR @plot_VERSION_MAJOR@ #define PLOT_VERSION_MINOR @plot_VERSION_MINOR@ #define PLOT_VERSION_PATCH @plot_VERSION_PATCH@ #define PLOT_VERSION_STRING "@plot_VERSION@" namespace plot::version { /// The library version: one component per constant, and the whole thing as the /// string the project() declares (e.g. "0.1.0"). inline constexpr int major = PLOT_VERSION_MAJOR; inline constexpr int minor = PLOT_VERSION_MINOR; inline constexpr int patch = PLOT_VERSION_PATCH; inline constexpr const char* string = PLOT_VERSION_STRING; } // namespace plot::version