GENASSYM.SH(8) BSD System Manager's Manual GENASSYM.SH(8)NAMEgenassym.sh - emit an assym.h file
SYNOPSIS
sh genassym.sh [-c] C compiler invocation
DESCRIPTIONgenassym.sh is a shell script normally used during the kernel build pro-
cess to create an assym.h file. This file defines a number of cpp con-
stants derived from the configuration information genassym.sh reads from
stdin. The generated file is used by kernel sources written in assembler
to gain access to information (e.g. structure offsets and sizes) normally
only known to the C compiler.
genassym.sh resides in the /sys/kern directory. Arguments to genassym.sh
are usually of the form ${CC} ${CFLAGS} ${CPPFLAGS} where ${CC} is the C
compiler used to compile the kernel, while ${CFLAGS} and ${CPPFLAGS} are
flag arguments to the C compiler. The script creates a C source file from
its input. Then the C compiler is called according to the script's argu-
ments to compile this file.
Normally genassym.sh instructs the C compiler to create an assembler
source from the constructed C source. The resulting file is then pro-
cessed to extract the information needed to create the assym.h file. The
-c flag instructs genassym.sh to create slightly different code, generate
an executable from this code and run it. In both cases the assym.h file
is written to stdout.
DIAGNOSTICS
Either self-explanatory, or generated by one of the programs called from
the script. The script will exit with the return code from the compiler,
or, in the -c case, with the return code from the generated executable.
SEE ALSOgenassym.cf(5)HISTORY
The genassym.sh script first appeared in OpenBSD 2.2.
MirOS BSD #10-current January 25, 1997 1