19 lines · bash
1#!/bin/sh2# SPDX-License-Identifier: LGPL-2.13 4if [ $# -ne 1 ] ; then5 linux_header_dir=tools/include/uapi/linux6else7 linux_header_dir=$18fi9 10linux_mman=${linux_header_dir}/mman.h11 12printf "static const char *mremap_flags[] = {\n"13regex='^[[:space:]]*#[[:space:]]*define[[:space:]]+MREMAP_([[:alnum:]_]+)[[:space:]]+((0x)?[[:xdigit:]]+)[[:space:]]*.*'14grep -E -q $regex ${linux_mman} && \15(grep -E $regex ${linux_mman} | \16 sed -r "s/$regex/\2 \1 \1 \1 \2/g" | \17 xargs printf "\t[ilog2(%s) + 1] = \"%s\",\n#ifndef MREMAP_%s\n#define MREMAP_%s %s\n#endif\n")18printf "};\n"19