Author: jhb
Date: Mon Feb 20 20:37:25 2017
New Revision: 313999
URL: https://svnweb.freebsd.org/changeset/base/313999
Log:
Consolidate statements to initialize files.
Previously, the first lines of various generated files from system call
tables were generated in two sections. Some of the initialization was
done in BEGIN, and the rest was done when the first line was encountered.
The main reason for this split before r313564 was that most of the
initialization done in the second section depended on the $FreeBSD$ tag
extracted from the system call table. Now that the $FreeBSD$ tag is no
longer used, consolidate all of the file initialization in the BEGIN
section.
This change was tested by confirming that the content of generated files
did not change.
Modified:
head/sys/kern/makesyscalls.sh
Modified: head/sys/kern/makesyscalls.sh
==============================================================================
--- head/sys/kern/makesyscalls.sh Mon Feb 20 20:16:11 2017
(r313998)
+++ head/sys/kern/makesyscalls.sh Mon Feb 20 20:37:25 2017
(r313999)
@@ -116,6 +116,9 @@ sed -e '
split(capenabled_string, capenabled, ",");
+ printf "\n/* The casts are bogus but will do for now. */\n" >
sysent
+ printf "struct sysent %s[] = {\n",switchname > sysent
+
printf "/*\n * System call switch table.\n *\n" > syssw
printf " * DO NOT EDIT-- this file is automatically
generated.\n" > syssw
printf " * $%s$\n", "FreeBSD" > syssw
@@ -125,35 +128,6 @@ sed -e '
printf " * DO NOT EDIT-- this file is automatically
generated.\n" > sysarg
printf " * $%s$\n", "FreeBSD" > sysarg
printf " */\n\n" > sysarg
-
- printf "\n#ifdef %s\n\n", compat > syscompat
- printf "\n#ifdef %s\n\n", compat4 > syscompat4
- printf "\n#ifdef %s\n\n", compat6 > syscompat6
- printf "\n#ifdef %s\n\n", compat7 > syscompat7
- printf "\n#ifdef %s\n\n", compat10 > syscompat10
-
- printf "/*\n * System call names.\n *\n" > sysnames
- printf " * DO NOT EDIT-- this file is automatically
generated.\n" > sysnames
- printf " * $%s$\n", "FreeBSD" > sysnames
- printf " */\n\n" > sysnames
-
- printf "/*\n * System call numbers.\n *\n" > syshdr
- printf " * DO NOT EDIT-- this file is automatically
generated.\n" > syshdr
- printf " * $%s$\n", "FreeBSD" > syshdr
- printf " */\n\n" > syshdr
-
- printf "# FreeBSD system call object files.\n" > sysmk
- printf "# DO NOT EDIT-- this file is automatically
generated.\n" > sysmk
- printf "# $%s$\n", "FreeBSD" > sysmk
-
- printf "/*\n * System call argument to DTrace register array
converstion.\n *\n" > systrace
- printf " * DO NOT EDIT-- this file is automatically
generated.\n" > systrace
- printf " * $%s$\n", "FreeBSD" > systrace
- }
- NR == 1 {
- printf "\n/* The casts are bogus but will do for now. */\n" >
sysent
- printf "struct sysent %s[] = {\n",switchname > sysent
-
printf "#ifndef %s\n", sysproto_h > sysarg
printf "#define\t%s\n\n", sysproto_h > sysarg
printf "#include <sys/signal.h>\n" > sysarg
@@ -176,10 +150,31 @@ sed -e '
printf "#define\tPADR_(t)\t0\n" > sysarg
printf "#endif\n\n" > sysarg
+ printf "\n#ifdef %s\n\n", compat > syscompat
+ printf "\n#ifdef %s\n\n", compat4 > syscompat4
+ printf "\n#ifdef %s\n\n", compat6 > syscompat6
+ printf "\n#ifdef %s\n\n", compat7 > syscompat7
+ printf "\n#ifdef %s\n\n", compat10 > syscompat10
+
+ printf "/*\n * System call names.\n *\n" > sysnames
+ printf " * DO NOT EDIT-- this file is automatically
generated.\n" > sysnames
+ printf " * $%s$\n", "FreeBSD" > sysnames
+ printf " */\n\n" > sysnames
printf "const char *%s[] = {\n", namesname > sysnames
+ printf "/*\n * System call numbers.\n *\n" > syshdr
+ printf " * DO NOT EDIT-- this file is automatically
generated.\n" > syshdr
+ printf " * $%s$\n", "FreeBSD" > syshdr
+ printf " */\n\n" > syshdr
+
+ printf "# FreeBSD system call object files.\n" > sysmk
+ printf "# DO NOT EDIT-- this file is automatically
generated.\n" > sysmk
+ printf "# $%s$\n", "FreeBSD" > sysmk
printf "MIASM = " > sysmk
+ printf "/*\n * System call argument to DTrace register array
converstion.\n *\n" > systrace
+ printf " * DO NOT EDIT-- this file is automatically
generated.\n" > systrace
+ printf " * $%s$\n", "FreeBSD" > systrace
printf " * This file is part of the DTrace syscall provider.\n
*/\n\n" > systrace
printf "static void\nsystrace_args(int sysnum, void *params,
uint64_t *uarg, int *n_args)\n{\n" > systrace
printf "\tint64_t *iarg = (int64_t *) uarg;\n" > systrace
@@ -190,7 +185,8 @@ sed -e '
printf "static void\nsystrace_return_setargdesc(int sysnum, int
ndx, char *desc, size_t descsz)\n{\n\tconst char *p = NULL;\n" > systraceret
printf "\tswitch (sysnum) {\n" > systraceret
-
+ }
+ NR == 1 {
next
}
NF == 0 || $1 ~ /^;/ {
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"