Skip to content

Commit 52e5739

Browse files
committed
fix: Fix Doxygen warnings from README
Since the inception of the project, we have used the repository’s README as the main page for our generated Doxygen documentation. Doxygen doesn’t understand the HTML we use in our README, though, so it generates warnings on every build. This patch adds a very simple main page to our Doxygen documentation, written in Doxygen’s native format (a file with the extension `.dox` that contains a Doxygen-style C++ comment). This new main page replaces our README only in the generated API documentation, not on our GitHub repo. After applying this patch, there should be no warnings when generating our API documentation. Signed-off-by: Patrick M. Niedzielski <[email protected]>
1 parent a91210c commit 52e5739

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

CMakeLists.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,6 @@ if(DOXYGEN_FOUND)
266266
set(DOXYGEN_PROJECT_BRIEF
267267
"C++ SDK for BlazingMQ clients and plugins"
268268
)
269-
set(DOXYGEN_USE_MDFILE_AS_MAINPAGE ./README.md)
270269
set(DOXYGEN_REFERENCED_BY_RELATION YES)
271270
set(DOXYGEN_REFERENCES YES)
272271
set(DOXYGEN_ALPHABETICAL_INDEX NO)
@@ -277,10 +276,10 @@ if(DOXYGEN_FOUND)
277276
)
278277
doxygen_add_docs(
279278
apidocs
279+
docs/mainpage.dox
280280
src/groups/bmq/bmqa
281281
src/groups/bmq/bmqt
282282
src/groups/bmq/bmqpi
283-
README.md
284283
COMMENT "Generate public Doxygen documentation for libbmq"
285284
)
286285
add_dependencies(docs apidocs)

docs/mainpage.dox

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/**
2+
3+
\mainpage BlazingMQ C++ SDK API Documentation
4+
5+
\image html blazingmq_logo_label.svg width=50%
6+
7+
[BlazingMQ](https://bloomberg.github.io/blazingmq) is an open source
8+
distributed message queueing framework, which focuses on efficiency,
9+
reliability, and a rich feature set for modern-day workflows.
10+
11+
At its core, BlazingMQ provides durable, fault-tolerant, highly performant, and
12+
highly available queues, along with features like various message routing
13+
strategies (e.g., work queues, priority, fan-out, broadcast, etc.),
14+
compression, strong consistency, poison pill detection, etc.
15+
16+
These pages are the API documentation for the BlazingMQ C++ SDK for client
17+
applications and plugins.
18+
19+
\section mainpage-license License
20+
21+
The BlazingMQ C++ SDK and documentation are Apache 2.0 licensed.
22+
23+
\section mainpage-quickstart Quickstart
24+
25+
Authors of client application should look in the \ref src/groups/bmq/bmqa "bmqa"
26+
package for an API with which to build producers and consumers.
27+
28+
Plugin authors should look in the \ref src/groups/bmq/bmqpi "bmqpi" package for
29+
the pure abstract interfaces which broker plugins need to implement.
30+
31+
*/

0 commit comments

Comments
 (0)