| # SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause |
| TOOL=$(dirname $(realpath $0))/ynl-gen-c.py |
| -p ) search=$2; shift 2 ;; |
| * ) echo "Unrecognized option '$1'"; exit 1 ;; |
| KDIR=$(dirname $(dirname $(dirname $(dirname $(realpath $0))))) |
| pushd ${search:-$KDIR} >>/dev/null |
| files=$(git grep --files-with-matches '^/\* YNL-GEN \(kernel\|uapi\|user\)') |
| # $YAML YNL-GEN kernel $mode |
| params=( $(git grep -B1 -h '/\* YNL-GEN' $f | sed 's@/\*\(.*\)\*/@\1@') ) |
| args=$(sed -n 's@/\* YNL-ARG \(.*\) \*/@\1@p' $f) |
| if [ $f -nt ${params[0]} -a -z "$force" ]; then |
| echo -e "\tGEN ${params[2]}\t$f" |
| $TOOL --cmp-out --mode ${params[2]} --${params[3]} \ |
| --spec $KDIR/${params[0]} $args -o $f |