# LLVM Documentation CI
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

name: "Test documentation build"

permissions:
  contents: read

on:
  push:
    branches:
      - 'main'
    paths:
      - 'llvm/docs/**'
      - 'clang/docs/**'
      - 'clang/include/clang/Basic/AttrDocs.td'
      - 'clang/include/clang/Driver/ClangOptionDocs.td'
      - 'clang/include/clang/Basic/DiagnosticDocs.td'
      - 'clang-tools-extra/docs/**'
      - 'lldb/docs/**'
      - 'libunwind/docs/**'
      - 'libcxx/docs/**'
      - 'libc/docs/**'
      - 'lld/docs/**'
      - 'openmp/docs/**'
      - 'polly/docs/**'
      - 'flang/docs/**'
      - 'flang/include/flang/Optimizer/Dialect/FIROps.td'
      - '.github/workflows/docs.yml'
  pull_request:
    paths:
      - 'llvm/docs/**'
      - 'clang/docs/**'
      - 'clang/include/clang/Basic/AttrDocs.td'
      - 'clang/include/clang/Driver/ClangOptionDocs.td'
      - 'clang/include/clang/Basic/DiagnosticDocs.td'
      - 'clang-tools-extra/docs/**'
      - 'lldb/docs/**'
      - 'libunwind/docs/**'
      - 'libcxx/docs/**'
      - 'libc/docs/**'
      - 'lld/docs/**'
      - 'openmp/docs/**'
      - 'polly/docs/**'
      - 'flang/docs/**'
      - 'flang/include/flang/Optimizer/Dialect/FIROps.td'
      - '.github/workflows/docs.yml'

jobs:
  check-docs-build:
    name: "Test documentation build"
    runs-on: ubuntu-latest
    if: github.repository == 'llvm/llvm-project'
    steps:
      # Don't fetch before checking for file changes to force the file changes
      # action to use the Github API in pull requests. If it's a push to a
      # branch we can't use the Github API to get the diff, so we need to have
      # a local checkout beforehand.
      - name: Fetch LLVM sources (Push)
        if: ${{ github.event_name == 'push' }}
        uses: actions/checkout@v4
        with:
          fetch-depth: 1
      - name: Get subprojects that have doc changes
        id: docs-changed-subprojects
        uses: tj-actions/changed-files@v39
        with:
          files_yaml: |
            llvm:
              - 'llvm/docs/**'
            clang:
              - 'clang/docs/**'
              - 'clang/include/clang/Basic/AttrDocs.td'
              - 'clang/include/clang/Driver/ClangOptionDocs.td'
              - 'clang/include/clang/Basic/DiagnosticDocs.td'
            clang-tools-extra:
              - 'clang-tools-extra/docs/**'
            lldb:
              - 'lldb/docs/**'
            libunwind:
              - 'libunwind/docs/**'
            libcxx:
              - 'libcxx/docs/**'
            libc:
              - 'libc/docs/**'
            lld:
              - 'lld/docs/**'
            openmp:
              - 'openmp/docs/**'
            polly:
              - 'polly/docs/**'
            flang:
              - 'flang/docs/**'
              - 'flang/include/flang/Optimizer/Dialect/FIROps.td'
            workflow:
              - '.github/workflows/docs.yml'
      - name: Fetch LLVM sources (PR)
        if: ${{ github.event_name == 'pull_request' }}
        uses: actions/checkout@v4
        with:
          fetch-depth: 1
      - name: Setup Python env
        uses: actions/setup-python@v5
        with:
          python-version: '3.11'
          cache: 'pip'
          cache-dependency-path: 'llvm/docs/requirements-hashed.txt'
      - name: Install python dependencies
        run: pip install -r llvm/docs/requirements-hashed.txt
      - name: Install system dependencies
        run: |
          sudo apt-get update
          # swig and graphviz are lldb specific dependencies
          sudo apt-get install -y cmake ninja-build swig graphviz
      - name: Setup output folder
        run: mkdir built-docs
      - name: Build LLVM docs
        if: |
          steps.docs-changed-subprojects.outputs.llvm_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B llvm-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C llvm-build docs-llvm-html docs-llvm-man
          mkdir built-docs/llvm
          cp -r llvm-build/docs/* built-docs/llvm/
      - name: Build Clang docs
        if: |
          steps.docs-changed-subprojects.outputs.clang_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B clang-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C clang-build docs-clang-html docs-clang-man
          mkdir built-docs/clang
          cp -r clang-build/docs/* built-docs/clang/
      - name: Build clang-tools-extra docs
        if: |
          steps.docs-changed-subprojects.outputs.clang-tools-extra_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B clang-tools-extra-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C clang-tools-extra-build docs-clang-tools-html docs-clang-tools-man
          mkdir built-docs/clang-tools-extra
          cp -r clang-tools-extra-build/docs/* built-docs/clang-tools-extra/
      - name: Build LLDB docs
        if: |
          steps.docs-changed-subprojects.outputs.lldb_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B lldb-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;lldb" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C lldb-build docs-lldb-html docs-lldb-man
          mkdir built-docs/lldb
          cp -r lldb-build/docs/* built-docs/lldb/
      - name: Build libunwind docs
        if: |
          steps.docs-changed-subprojects.outputs.libunwind_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B libunwind-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="libunwind" -DLLVM_ENABLE_SPHINX=ON ./runtimes
          TZ=UTC ninja -C libunwind-build docs-libunwind-html
          mkdir built-docs/libunwind
          cp -r libunwind-build/libunwind/docs/* built-docs/libunwind
      - name: Build libcxx docs
        if: |
          steps.docs-changed-subprojects.outputs.libcxx_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B libcxx-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="libcxxabi;libcxx;libunwind" -DLLVM_ENABLE_SPHINX=ON ./runtimes
          TZ=UTC ninja -C libcxx-build docs-libcxx-html
          mkdir built-docs/libcxx
          cp -r libcxx-build/libcxx/docs/* built-docs/libcxx/
      - name: Build libc docs
        if: |
          steps.docs-changed-subprojects.outputs.libc_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B libc-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="libc" -DLLVM_ENABLE_SPHINX=ON ./runtimes
          TZ=UTC ninja -C libc-build docs-libc-html
          mkdir built-docs/libc
          cp -r libc-build/libc/docs/* built-docs/libc/
      - name: Build LLD docs
        if: |
          steps.docs-changed-subprojects.outputs.lld_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B lld-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="lld" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C lld-build docs-lld-html
          mkdir built-docs/lld
          cp -r lld-build/docs/* built-docs/lld/
      - name: Build OpenMP docs
        if: |
          steps.docs-changed-subprojects.outputs.openmp_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B openmp-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;openmp" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C openmp-build docs-openmp-html
          mkdir built-docs/openmp
          cp -r openmp-build/docs/* built-docs/openmp/
      - name: Build Polly docs
        if: |
          steps.docs-changed-subprojects.outputs.polly_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B polly-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="polly" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C polly-build docs-polly-html docs-polly-man
          mkdir built-docs/polly
          cp -r polly-build/docs/* built-docs/polly/
      - name: Build Flang docs
        if: |
          steps.docs-changed-subprojects.outputs.flang_any_changed == 'true' ||
          steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
        run: |
          cmake -B flang-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;mlir;flang" -DLLVM_ENABLE_SPHINX=ON ./llvm
          TZ=UTC ninja -C flang-build docs-flang-html
          mkdir built-docs/flang
          cp -r flang-build/docs/* built-docs/flang/
      - name: Upload docs
        uses: actions/upload-artifact@v4
        with:
          name: docs-output
          path: built-docs/
