*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> genksyms (8)              
Title
Content
Arch
Section
 

GENKSYMS(8)

Contents


NAME    [Toc]    [Back]

       genksyms - generate symbol version information

SYNOPSIS    [Toc]    [Back]

       genksyms [-wq] [-dD] [-V] [-k version] [-p string] [output directory]

DESCRIPTION    [Toc]    [Back]

       Genksyms  reads	(on  standard input) the output from "gcc -E source.c"
       and generates a file containing version information.

       Depending on the output format indicated by the -k option,  the	output
       will either be written to a .ver file in the named output directory, or
       to the standard output.

       Genksyms normally looks for explicit symbol table  definitions  in  the
       source	 file.	   All	 definitions   and   declarations   of	 type-
       def, struct, union and enum will be saved for later  expansion.	 Every
       global  symbol  will  also  be  saved, together with pointers that will
       enable a full expansion later on.

       When a symbol table is found in the source, the symbol will be expanded
       to  its	full definition, where all structs, unions, enums and typedefs
       will be expanded down to their basic  part,  recursively.   This  final
       string  will then be used as input to a CRC algorithm that will give an
       integer that will change as soon as any	of  the  included  definitions
       changes, for this symbol.

       The  version  information  in  the  kernel  normally  looks  like: sym-
       bol_R12345678, where 12345678 is the hexadecimal representation of  the
       CRC.

OPTIONS    [Toc]    [Back]

       -d, --debug
	      Output  debugging  information;  repeating this option increases
	      the verbosity.  Debug level  1  generates  moderate  information
	      about  the  actions  being  taken;  debug level 2 enables parser
	      recognition output; debug level 3 enables lexical analysis  output.


       -D, --dump
	      Dump  expanded  symbol definitions to stderr.  For debugging use
	      only.

       -h, --help
	      Display a summary of options and immediately exit.

       -k version, --kernel version
	      Select the version of the kernel for which to  generate  output.
	      Omitting	this  option  assumes a version below 2.1.0.  Versions
	      below 2.1.18 use checksum version 1, and produce their output in
	      the  directory  given  on the command line.  Versions 2.1.18 and
	      above use checksum version 2 and produce their output on stdout.

       -p string, --prefix string
	      Prepend  the given string to the CRCs generated for all symbols.
	      This is intended for use with, e.g., SMP	kernels,  wherein  the
	      modules  are  not  compatible at a level below that described by
	      the data types.  This is primarily  caused  by  inline  function
	      expansions in the module code itself.

       -q, --quiet
	      Quiet warnings, i.e. reverse the -w option.

       -V, --version
	      Display the version of genksyms.

       -w, --warnings
	      Enable  warnings	due  to  unrecognized  syntax and declared but
	      undefined structures.  These warnings are normally suppressed.

SEE ALSO    [Toc]    [Back]

      
      
       insmod(8), modprobe(8)

BUGS    [Toc]    [Back]

       The -h option is broken; --help is fine.
       genksyms [-V | --version] should display version information  and  then
       exit  immediately.   Instead,  it  prints  the  version information and
       behaves as if no options were given.

HISTORY    [Toc]    [Back]

       This versioning concept is a result from discussions, not at  least  on
       the KERNEL-channel, with a lot of people.

       The   genksyms	utility   was	created   in   1994  by  Bjorn	Ekwall
       <[email protected]> being mostly inspired by  Jacques  Gelinas  <[email protected]>
 and Jeremy Fitzhardinge <[email protected]>

       It was rewritten in 1996 by Richard Henderson to use a proper lexer and
       parser.



Linux			       January 30, 2002 		   GENKSYMS(8)
[ Back ]
 Similar pages
Name OS Title
getksym HP-UX get information for a global kernel symbol
strip HP-UX strip symbol and line number information from an object file
nis HP-UX a new version of the network information name service
nis+ HP-UX a new version of the network information name service
NIS+ HP-UX a new version of the network information name service
st_pp_find_tag Tru64 access and modify optimization symbol table information in an object file
st_pp_append Tru64 access and modify optimization symbol table information in an object file
st_obj_pt_setup Tru64 access and modify optimization symbol table information in an object file
st_ppod_print Tru64 access and modify optimization symbol table information in an object file
st_obj_proc_has_ppod Tru64 access and modify optimization symbol table information in an object file
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service