Release version 1.0.0; keep generated documentation source-derived
The project version moves to 1.0.0, which the library soname, the reported version, the test expectations, and the generated document filename all derive from. SOVERSION now matches the major version. The generated reference is built from the source and its documentation comments alone. Prose from docs/ was briefly part of the input and is removed: development notes are written and read on their own, and a generator that reproduces them adds nothing. The reference opens on a front page declared in the public header, followed by the module contract. One target builds it. Both PDF and HTML are produced by default, the finished documents land in the build tree under docs/pdf and docs/html, and the generators work in docs/tmp. The internal namespace is dpm_core, matching the artifact name as closely as a C++ identifier permits.
This commit is contained in:
@@ -320,6 +320,21 @@ DPM_API const char* dpm_last_error(dpm_ctx* ctx);
|
||||
/* Module contract (implemented by modules, called by libdpm-core) */
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
/**
|
||||
* @mainpage libdpm-core.so — API reference
|
||||
*
|
||||
* This is the generated reference for libdpm-core.so, extracted from
|
||||
* the source. It covers the public C API in <dpm/core.h>, the library's
|
||||
* internals, and the module contract.
|
||||
*
|
||||
* Start at core.h for the API a consumer or a module calls, and at
|
||||
* @ref module_contract for what a module implements.
|
||||
*
|
||||
* The project's prose documentation — overview, design, build, module
|
||||
* authoring, and consumer guide — lives in the docs/ directory of the
|
||||
* repository and is read there.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @page module_contract The module contract
|
||||
*
|
||||
|
||||
@@ -62,7 +62,7 @@ struct dpm_ctx {
|
||||
std::string last_error;
|
||||
};
|
||||
|
||||
namespace dpmcore {
|
||||
namespace dpm_core {
|
||||
|
||||
/**
|
||||
* @brief Records a failure reason on the context
|
||||
@@ -82,4 +82,4 @@ void set_error(dpm_ctx* ctx, const std::string& msg);
|
||||
*/
|
||||
void load_config_dir(dpm_ctx* ctx);
|
||||
|
||||
} // namespace dpmcore
|
||||
} // namespace dpm_core
|
||||
|
||||
@@ -64,7 +64,7 @@ struct dpm_cursor {
|
||||
*/
|
||||
void dpm_internal_unload(void* handle);
|
||||
|
||||
namespace dpmcore {
|
||||
namespace dpm_core {
|
||||
|
||||
/**
|
||||
* @brief Runs the full load-time validation sequence against a module
|
||||
@@ -81,4 +81,4 @@ std::unique_ptr<dpm_module> validate_and_load(dpm_ctx* ctx,
|
||||
const std::string& name,
|
||||
std::string& reason);
|
||||
|
||||
} // namespace dpmcore
|
||||
} // namespace dpm_core
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
namespace dpmcore {
|
||||
namespace dpm_core {
|
||||
|
||||
/**
|
||||
* @brief Parses a strict X.Y.Z version string
|
||||
@@ -33,4 +33,4 @@ namespace dpmcore {
|
||||
*/
|
||||
bool parse_version(const char* s, long out[3]);
|
||||
|
||||
} // namespace dpmcore
|
||||
} // namespace dpm_core
|
||||
|
||||
Reference in New Issue
Block a user