xref: /netbsd-src/sys/external/bsd/drm2/prepare-import.sh (revision f0c86e26bffdbc568e9fa601a2fb51a4f1e45713)
1#!/bin/sh
2
3#	$NetBSD: prepare-import.sh,v 1.2 2021/12/19 10:20:38 riastradh Exp $
4#
5# $ /path/to/prepare-import.sh
6#
7# Run from the directory that will be imported as
8# sys/external/bsd/drm2/dist.  Be sure to also run drm/drm2netbsd and
9# nouveau/nouveau2netbsd in their respective directories.
10
11set -Ceu
12
13find . -name '*.h' \
14| while read f; do
15	cleantags "$f"
16	(printf '/*\t%c%s%c\t*/\n\n' '$' NetBSD '$' && cat -- "$f") > "$f".tmp
17	mv -f -- "$f".tmp "$f"
18done
19
20find . -name '*.c' \
21| while read f; do
22        # Probably not necessary -- Linux tends not to have RCS ids --
23        # but a precaution out of paranoia.
24	cleantags "$f"
25	# Heuristically apply NetBSD RCS ids: a comment at the top of
26	# the file, and a __KERNEL_RCSID before the first cpp line,
27	# which, with any luck, should be the first non-comment line
28	# and lie between the copyright notice and the header.
29	awk '
30		BEGIN {
31			done = 0
32			printf("/*\t%c%s%c\t*/\n\n", "$","NetBSD","$")
33		}
34		/^#/ && !done {
35			printf("#include <sys/cdefs.h>\n")
36			printf("__KERNEL_RCSID(0, \"%c%s%c\");\n",
37			    "$","NetBSD","$")
38			printf("\n")
39			done = 1
40		}
41		{
42			print
43		}
44	' < "$f" > "$f".tmp
45	mv -f -- "$f".tmp "$f"
46done
47