forked from Xilinx/mlir-air
-
Notifications
You must be signed in to change notification settings - Fork 1
114 lines (94 loc) · 3.54 KB
/
generateDocs.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# Copyright (C) 2022, Advanced Micro Devices, Inc. All rights reserved.
# SPDX-License-Identifier: MIT
name: Generate Github Pages
on:
push:
branches:
- main
workflow_dispatch:
jobs:
build-docs:
name: Generate Documentation
runs-on: ubuntu-20.04
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment
permissions:
contents: write
steps:
- name: Configure Environment
run: echo "$GITHUB_WORKSPACE/llvm/install/bin" >> $GITHUB_PATH
# Clone the repo and its submodules. Do shallow clone to save clone
# time.
- name: Get repo
uses: actions/checkout@v2
with:
fetch-depth: 2
submodules: "true"
- name: Install pip packages
run: sudo pip install psutil pybind11 numpy
- name: Install Ninja
uses: llvm/actions/install-ninja@55d844821959226fab4911f96f37071c1d4c3268
- name: Get Submodule Hash
id: get-submodule-hash
run: echo "::set-output name=hash::$(md5sum $(echo utils/clone-llvm.sh))"
shell: bash
- name: Ccache for C++ compilation
uses: hendrikmuhs/ccache-action@4687d037e4d7cf725512d9b819137a3af34d39b3
with:
key: ${{ runner.os }}-clangreleaseasserts-${{ steps.get-submodule-hash.outputs.hash }}
max-size: 1G
- name: Get cmakeModules
id: clone-cmakeModules
run: git clone --depth 1 https://github.com/Xilinx/cmakeModules.git
shell: bash
- name: Get LLVM
id: clone-llvm
run: utils/clone-llvm.sh
shell: bash
- name: Rebuild and Install LLVM
run: utils/github-build-llvm.sh
- name: Get mlir-aie
id: clone-mlir-aie
run: utils/clone-mlir-aie.sh
shell: bash
- name: Rebuild and Install libxaie
run: utils/github-clone-build-libxaie.sh
- name: Rebuild and Install mlir-aie
run: utils/github-build-mlir-aie.sh
# Build the repo test target in release mode to build and test.
- name: Build Docs
run: |
mkdir build_release
pushd build_release
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_ASSERTIONS=OFF \
-DCMAKE_MODULE_PATH=`pwd`/../cmakeModules \
-DMLIR_DIR=../llvm/install/lib/cmake/mlir/ \
-DLLVM_DIR=../llvm/install/lib/cmake/llvm/ \
-DAIE_DIR=`pwd`/../mlir-aie/install/lib/cmake/aie/ \
-DCMAKE_LINKER=lld \
-DCMAKE_C_COMPILER=clang-12 \
-DCMAKE_CXX_COMPILER=clang++-12 \
-DLLVM_EXTERNAL_LIT=`pwd`/../llvm/build/bin/llvm-lit \
-DAIR_BUILD_RUNTIME=OFF
make docs
popd
cp -r docs/* build_release/docs
for file in `find platforms/xilinx* -maxdepth 1 -name 'README.md'`
do
platform=`echo $file | cut -d'/' -f2`
mkdir -p build_release/docs/platforms/$platform
cp platforms/$platform/*.md build_release/docs/platforms/$platform
done
- name: Save LLVM Version
run: |
cd llvm; set VER=`git rev-parse HEAD`
echo "{" > ../build_release/docs/build_info.json
echo "llvm-version: \"$(VER)\"," >> ../build_release/docs/build_info.json
echo "}" > ../build_release/docs/build_info.json
- name: Publish to github-pages
uses: peaceiris/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build_release/docs
enable_jekyll: true