mirror of
https://github.com/Xahau/xahaud.git
synced 2025-11-04 18:55:49 +00:00
Improve the Doxygen Workflow
* Use official build environment Docker image * Update documentation and Doxygen website URLs
This commit is contained in:
committed by
Nik Bougalis
parent
6477bdf3e8
commit
858e93c7f8
14
.github/workflows/doxygen.yml
vendored
14
.github/workflows/doxygen.yml
vendored
@@ -7,17 +7,19 @@ on:
|
||||
jobs:
|
||||
job:
|
||||
runs-on: ubuntu-18.04
|
||||
container:
|
||||
image: docker://rippleci/rippled-ci-builder:2944b78d22db
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v2
|
||||
- name: set OUTPUT_DIRECTORY
|
||||
run: echo 'OUTPUT_DIRECTORY = html' >> docs/Doxyfile
|
||||
- name: build
|
||||
uses: mattnotmitt/doxygen-action@v1
|
||||
with:
|
||||
doxyfile-path: 'docs/Doxyfile'
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DBoost_NO_BOOST_CMAKE=ON ..
|
||||
cmake --build . --target docs --parallel $(nproc)
|
||||
- name: publish
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
publish_dir: ./html
|
||||
publish_dir: build/docs/html
|
||||
|
||||
@@ -76,9 +76,3 @@ add_custom_command (
|
||||
add_custom_target (docs
|
||||
DEPENDS "${doxygen_index_file}"
|
||||
SOURCES "${dependencies}")
|
||||
if (is_multiconfig)
|
||||
set_property (
|
||||
SOURCE ${dependencies}
|
||||
APPEND PROPERTY
|
||||
HEADER_FILE_ONLY true)
|
||||
endif ()
|
||||
|
||||
@@ -56,6 +56,7 @@ git-subtree. See those directories' README files for more details.
|
||||
* [XRP Ledger Dev Portal](https://developers.ripple.com/)
|
||||
* [XRP News](https://ripple.com/category/xrp/)
|
||||
* [Setup and Installation](https://developers.ripple.com/install-rippled.html)
|
||||
* [Doxygen](https://ripple.github.io/rippled)
|
||||
|
||||
To learn about how Ripple is transforming global payments, visit
|
||||
<https://ripple.com/contact/>.
|
||||
|
||||
@@ -1,75 +1,63 @@
|
||||
# Building documentation
|
||||
|
||||
## Install Dependencies
|
||||
|
||||
### Windows
|
||||
## Dependencies
|
||||
|
||||
Install these dependencies:
|
||||
|
||||
1. Install [Doxygen](http://www.stack.nl/~dimitri/doxygen/download.html)
|
||||
- [Doxygen](http://www.doxygen.nl): All major platforms have [official binary
|
||||
distributions](http://www.doxygen.nl/download.html#srcbin), or you can
|
||||
build from [source](http://www.doxygen.nl/download.html#srcbin).
|
||||
|
||||
### MacOS
|
||||
- MacOS: We recommend installing via Homebrew: `brew install doxygen`.
|
||||
The executable will be installed in `/usr/local/bin` which is already
|
||||
in the default `PATH`.
|
||||
|
||||
1. Install doxygen:
|
||||
* Use homebrew to install: `brew install doxygen`. The executable will be
|
||||
installed in `/usr/local/bin` which is already in your path.
|
||||
* Alternatively, install from here: [doxygen](http://www.stack.nl/~dimitri/doxygen/download.html).
|
||||
You'll then need to make doxygen available to your command line. You can
|
||||
do this by adding a symbolic link from `/usr/local/bin` to the doxygen
|
||||
executable. For example, `$ ln -s /Applications/Doxygen.app/Contents/Resources/doxygen /usr/local/bin/doxygen`
|
||||
If you use the official binary distribution, then you'll need to make
|
||||
Doxygen available to your command line. You can do this by adding
|
||||
a symbolic link from `/usr/local/bin` to the `doxygen` executable. For
|
||||
example,
|
||||
|
||||
### Linux
|
||||
```
|
||||
$ ln -s /Applications/Doxygen.app/Contents/Resources/doxygen /usr/local/bin/doxygen
|
||||
```
|
||||
|
||||
1. Install doxygen using your package manager OR from source using the links above.
|
||||
- [PlantUML](http://plantuml.com):
|
||||
|
||||
### [Optional] Install Plantuml (all platforms)
|
||||
1. Install a functioning Java runtime, if you don't already have one.
|
||||
2. Download [`plantuml.jar`](http://sourceforge.net/projects/plantuml/files/plantuml.jar/download).
|
||||
|
||||
Doxygen supports the optional use of [plantuml](http://plantuml.com) to
|
||||
generate diagrams from `@startuml` sections. We don't currently rely on this
|
||||
functionality for docs, so it's largely optional. Requirements:
|
||||
- [Graphviz](https://www.graphviz.org):
|
||||
|
||||
1. Download/install a functioning java runtime, if you don't already have one.
|
||||
2. Download [plantuml](http://plantuml.com) from
|
||||
[here](http://sourceforge.net/projects/plantuml/files/plantuml.jar/download).
|
||||
Set a system environment variable named `DOXYGEN_PLANTUML_JAR_PATH` to
|
||||
the absolute path of the `plantuml.jar` file you downloaded.
|
||||
- Linux: Install from your package manager.
|
||||
- Windows: Use an [official installer](https://graphviz.gitlab.io/_pages/Download/Download_windows.html).
|
||||
- MacOS: Install via Homebrew: `brew install graphviz`.
|
||||
|
||||
|
||||
## Configure
|
||||
|
||||
You should set these environment variables:
|
||||
|
||||
- `DOXYGEN_OUTPUT_DIRECTORY`
|
||||
- `DOXYGEN_PLANTUML_JAR_PATH`
|
||||
|
||||
## Build
|
||||
|
||||
From the rippled root folder:
|
||||
|
||||
```
|
||||
doxygen docs/Doxyfile
|
||||
```
|
||||
|
||||
The output will be wherever you chose for `DOXYGEN_OUTPUT_DIRECTORY`.
|
||||
|
||||
## Docker
|
||||
|
||||
(applicable to all platforms)
|
||||
|
||||
Instead of installing the doxygen tools locally, you can use the provided `Dockerfile` to create
|
||||
an ubuntu based image for running the tools:
|
||||
Instead of installing the above dependencies locally, you can use the official
|
||||
build environment Docker image, which has all of them installed already.
|
||||
|
||||
1. Install [Docker](https://docs.docker.com/engine/installation/)
|
||||
2. Build Docker image. From the rippled root folder:
|
||||
2. Pull the image:
|
||||
```
|
||||
sudo docker pull rippleci/rippled-ci-builder:2944b78d22db
|
||||
```
|
||||
3. Run the image from the project folder:
|
||||
```
|
||||
sudo docker run -v $PWD:/opt/rippled --rm rippleci/rippled-ci-builder:2944b78d22db
|
||||
```
|
||||
|
||||
|
||||
## Build
|
||||
|
||||
There is a `docs` target in the CMake configuration.
|
||||
|
||||
```
|
||||
sudo docker build -t rippled-docs docs/
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
cmake --build . --target docs
|
||||
```
|
||||
|
||||
Then to run the image, from the rippled root folder:
|
||||
|
||||
```
|
||||
sudo docker run -v $PWD:/opt/rippled --rm rippled-docs
|
||||
```
|
||||
|
||||
The output will be in `html`.
|
||||
The output will be in `build/docs/html`.
|
||||
|
||||
Reference in New Issue
Block a user