-
Notifications
You must be signed in to change notification settings - Fork 652
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
align with build workflow in docs-spec-template
related to #1448 Signed-off-by: Kevin Broch <[email protected]>
- Loading branch information
1 parent
353e88f
commit 2c44b0b
Showing
36 changed files
with
124 additions
and
1,062 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
.DS_Store | ||
.*.swp | ||
.vscode | ||
src/.asciidoctor | ||
src/diag* | ||
/build/* | ||
/images/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[submodule "docs-resources"] | ||
path = docs-resources | ||
url = https://github.com/riscv/docs-resources |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
# Makefile for RISC-V ISA Manuals | ||
# | ||
# This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 | ||
# International License. To view a copy of this license, visit | ||
# http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to | ||
# Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. | ||
# | ||
# SPDX-License-Identifier: CC-BY-SA-4.0 | ||
# | ||
# Description: | ||
# | ||
# This Makefile is designed to automate the process of building and packaging | ||
# the documentation for RISC-V ISA Manuals. It supports multiple build targets | ||
# for generating documentation in various formats (PDF, HTML, EPUB). | ||
# | ||
# Building with a preinstalled docker container is recommended. | ||
# Install by running: | ||
# | ||
# docker pull riscvintl/riscv-docs-base-container-image:latest | ||
# | ||
|
||
DOCS := \ | ||
riscv-privileged.adoc \ | ||
riscv-unprivileged.adoc | ||
|
||
DATE ?= $(shell date +%Y-%m-%d) | ||
DOCKER_IMG := riscvintl/riscv-docs-base-container-image:latest | ||
ifneq ($(SKIP_DOCKER),true) | ||
DOCKER_CMD := docker run --rm -v ${PWD}:/build -w /build \ | ||
${DOCKER_IMG} \ | ||
/bin/sh -c | ||
DOCKER_QUOTE := " | ||
endif | ||
|
||
SRC_DIR := src | ||
BUILD_DIR := build | ||
|
||
DOCS_PDF := $(DOCS:%.adoc=%.pdf) | ||
DOCS_HTML := $(DOCS:%.adoc=%.html) | ||
DOCS_EPUB := $(DOCS:%.adoc=%.epub) | ||
|
||
XTRA_ADOC_OPTS := | ||
ASCIIDOCTOR_PDF := asciidoctor-pdf | ||
ASCIIDOCTOR_HTML := asciidoctor | ||
ASCIIDOCTOR_EPUB := asciidoctor-epub3 | ||
OPTIONS := --trace \ | ||
-a compress \ | ||
-a mathematical-format=svg \ | ||
-a pdf-fontsdir=docs-resources/fonts \ | ||
-a pdf-theme=docs-resources/themes/riscv-pdf.yml \ | ||
$(XTRA_ADOC_OPTS) \ | ||
-D build \ | ||
--failure-level=ERROR | ||
REQUIRES := --require=asciidoctor-bibtex \ | ||
--require=asciidoctor-diagram \ | ||
--require=asciidoctor-lists \ | ||
--require=asciidoctor-mathematical | ||
|
||
.PHONY: all build clean build-container build-no-container build-docs | ||
|
||
all: build | ||
|
||
build-docs: $(DOCS_PDF) $(DOCS_HTML) $(DOCS_EPUB) | ||
|
||
vpath %.adoc $(SRC_DIR) | ||
|
||
%.pdf: %.adoc | ||
$(DOCKER_CMD) $(DOCKER_QUOTE) $(ASCIIDOCTOR_PDF) $(OPTIONS) $(REQUIRES) $< $(DOCKER_QUOTE) | ||
|
||
%.html: %.adoc | ||
$(DOCKER_CMD) $(DOCKER_QUOTE) $(ASCIIDOCTOR_HTML) $(OPTIONS) $(REQUIRES) $< $(DOCKER_QUOTE) | ||
|
||
%.epub: %.adoc | ||
$(DOCKER_CMD) $(DOCKER_QUOTE) $(ASCIIDOCTOR_EPUB) $(OPTIONS) $(REQUIRES) $< $(DOCKER_QUOTE) | ||
|
||
build: | ||
@echo "Checking if Docker is available..." | ||
@if command -v docker >/dev/null 2>&1 ; then \ | ||
echo "Docker is available, building inside Docker container..."; \ | ||
$(MAKE) build-container; \ | ||
else \ | ||
echo "Docker is not available, building without Docker..."; \ | ||
$(MAKE) build-no-container; \ | ||
fi | ||
|
||
build-container: | ||
@echo "Starting build inside Docker container..." | ||
$(MAKE) build-docs | ||
@echo "Build completed successfully inside Docker container." | ||
|
||
build-no-container: | ||
@echo "Starting build..." | ||
$(MAKE) SKIP_DOCKER=true build-docs | ||
@echo "Build completed successfully." | ||
|
||
# Update docker image to latest | ||
docker-pull-latest: | ||
docker pull ${DOCKER_IMG} | ||
|
||
clean: | ||
@echo "Cleaning up generated files..." | ||
rm -rf $(BUILD_DIR) | ||
@echo "Cleanup completed." |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Submodule docs-resources
added at
7a6cea
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.