Commit 85999f03 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Jonathan Corbet
Browse files

docs: kernel_feat.py: add build dependencies



Ensure that the feature files will be regenerated if any
changes happen at the Documentation/features files that were
processed by gen_feat.pl.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
Link: https://lore.kernel.org/r/5cdf7a8300019129dcc09d4c2557f75908754445.1648290305.git.mchehab@kernel.org


Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 01096e5c
Loading
Loading
Loading
Loading
+18 −2
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ u"""

import codecs
import os
import re
import subprocess
import sys

@@ -82,7 +83,7 @@ class KernelFeat(Directive):

        env = doc.settings.env
        cwd = path.dirname(doc.current_source)
        cmd = "get_feat.pl rest --dir "
        cmd = "get_feat.pl rest --enable-fname --dir "
        cmd += self.arguments[0]

        if len(self.arguments) > 1:
@@ -102,7 +103,22 @@ class KernelFeat(Directive):
        shell_env["srctree"] = srctree

        lines = self.runCmd(cmd, shell=True, cwd=cwd, env=shell_env)
        nodeList = self.nestedParse(lines, fname)

        line_regex = re.compile("^\.\. FILE (\S+)$")

        out_lines = ""

        for line in lines.split("\n"):
            match = line_regex.search(line)
            if match:
                fname = match.group(1)

                # Add the file to Sphinx build dependencies
                env.note_dependency(os.path.abspath(fname))
            else:
                out_lines += line + "\n"

        nodeList = self.nestedParse(out_lines, fname)
        return nodeList

    def runCmd(self, cmd, **kwargs):