From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965651AbcAZMLQ (ORCPT ); Tue, 26 Jan 2016 07:11:16 -0500 Received: from mga02.intel.com ([134.134.136.20]:60829 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965252AbcAZMJQ (ORCPT ); Tue, 26 Jan 2016 07:09:16 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,350,1449561600"; d="scan'208";a="901340233" From: Jani Nikula To: Jonathan Corbet , linux-doc@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Jani Nikula , Daniel Vetter Subject: [RFC 07/10] scripts: add tool for generating asciidoc dependencies and rules Date: Tue, 26 Jan 2016 14:08:52 +0200 Message-Id: <05a5bccbc72f5e7a2fc1ba018c507e3fb56a779b.1453809420.git.jani.nikula@intel.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: References: <1453764522-29030-1-git-send-email-corbet@lwn.net> In-Reply-To: References: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Given a list of special format filenames, generate dependencies and rules for kernel-doc invocation on those files, to be included in to Makefiles. Signed-off-by: Jani Nikula --- scripts/kernel-doc-deps | 66 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100755 scripts/kernel-doc-deps diff --git a/scripts/kernel-doc-deps b/scripts/kernel-doc-deps new file mode 100755 index 000000000000..c348863b9354 --- /dev/null +++ b/scripts/kernel-doc-deps @@ -0,0 +1,66 @@ +#!/bin/bash + +SRCTREE= +DSTTREE= +DEP= +KERNELDOC= +TOOL=kernel-doc-helper + +while getopts "k:t:s:d:m:" opt; do + case "$opt" in + k) + KERNELDOC="$OPTARG" + ;; + t) + TOOL="$OPTARG" + ;; + s) + SRCTREE="$OPTARG/" + ;; + d) + DSTTREE="$OPTARG/" + ;; + m) + DEP="$OPTARG" + ;; + *) + echo "fail" + exit 1 + esac +done +shift `expr $OPTIND - 1` + +ACTION="\tmkdir \$()\n\t${TOOL} -w \$@ \$^ > \$@" + +# $1 = filename +# $2 = for what type +print_rule() +{ + echo "$1: $2" + echo -e "\tmkdir -p \$(dir \$@)" + echo -e "\t${TOOL} -k ${KERNELDOC} -w \$@ \$^ > \$@" + echo "$DEP: $1" +} + +# given a list of filenames with special notation, generate deps + +while read file; do + case $file in + # all of these are C/H source files + *,export) + print_rule "${DSTTREE}$file" "${SRCTREE}${file%,export}" + ;; + *,internal) + print_rule "${DSTTREE}$file" "${SRCTREE}${file%,internal}" + ;; + *,function,*) + print_rule "${DSTTREE}$file" "${SRCTREE}${file%,function,*}" + ;; + *,doc,*) + print_rule "${DSTTREE}$file" "${SRCTREE}${file%,doc,*}" + ;; + *) + print_rule "${DSTTREE}/${file%,txt,} " "${SRCTREE}${file%,F,*}" + ;; + esac +done -- 2.1.4