1706f2543Smrg#!/bin/sh
2706f2543Smrghfile=../../../include/Xatom.h
3706f2543Smrgcfile=initatoms.c
4706f2543Smrgrm -f $hfile $cfile
5706f2543Smrgumask 222
6706f2543Smrgawk '
7706f2543SmrgBEGIN {
8706f2543Smrg	hfile = "'$hfile'";
9706f2543Smrg	cfile = "'$cfile'";
10706f2543Smrg	hformat = "#define XA_%s ((Atom) %d)\n";
11706f2543Smrg	printf("#ifndef XATOM_H\n") > hfile;
12706f2543Smrg	printf("#define XATOM_H 1\n\n") > hfile;
13706f2543Smrg	printf("/* THIS IS A GENERATED FILE\n") > hfile;
14706f2543Smrg	printf(" *\n") > hfile;
15706f2543Smrg	printf(" * Do not change!  Changing this file implies a protocol change!\n") > hfile;
16706f2543Smrg	printf(" */\n\n") > hfile;
17706f2543Smrg
18706f2543Smrg	printf("/* THIS IS A GENERATED FILE\n") > cfile;
19706f2543Smrg	printf(" *\n") > cfile;
20706f2543Smrg	printf(" * Do not change!  Changing this file implies a protocol change!\n") > cfile;
21706f2543Smrg	printf(" */\n\n") > cfile;
22706f2543Smrg	printf("#include \"X.h\"\n") > cfile;
23706f2543Smrg	printf("#include \"Xatom.h\"\n") > cfile;
24706f2543Smrg	printf("#include \"misc.h\"\n") > cfile;
25706f2543Smrg	printf("#include \"dix.h\"\n") > cfile;
26706f2543Smrg	printf("void MakePredeclaredAtoms()\n") > cfile;
27706f2543Smrg	printf("{\n") > cfile;
28706f2543Smrg
29706f2543Smrg	}
30706f2543Smrg
31706f2543SmrgNF == 2 && $2 == "@" {
32706f2543Smrg	printf(hformat, $1, ++atomno) > hfile ;
33706f2543Smrg	printf("    if (MakeAtom(\"%s\", %d, 1) != XA_%s) AtomError();\n", $1, length($1), $1) > cfile ;
34706f2543Smrg	}
35706f2543Smrg
36706f2543SmrgEND {
37706f2543Smrg	printf("\n") > hfile;
38706f2543Smrg	printf(hformat, "LAST_PREDEFINED", atomno) > hfile ;
39706f2543Smrg	printf("#endif /* XATOM_H */\n") > hfile;
40706f2543Smrg	printf("}\n") > cfile ;
41706f2543Smrg	}
42706f2543Smrg' BuiltInAtoms
43706f2543Smrgexit 0
44