• Wolfgang Denk's avatar
    include/asm-offsets.h: automatically generate assembler constants · 16a354f9
    Wolfgang Denk authored
    
    
    A recurrent issue is that certain C level constructs like sizeof() or
    offsetof() cannot be used in assembler files, which is inconvenient
    when such constructs are used in the definition of macro names etc.
    
    To avoid duplication of such definitions (and thus another cause of
    problems), we adapt the Linux way to automatically generate the
    respective definitions from the respective C header files.
    
    In Linux, this is implemented in include/linux/kbuild.h, Kbuild, and
    arch/*/kernel/asm-offsets.c; we adapt the code from the Linux v2.6.36
    kernel tree.
    
    We also copy the concept of the include/generated/ directory which can
    be used to hold other automatically generated files as well.
    
    We start with an architecture-independent lib/asm-offsets.c which
    generates include/generated/generic-asm-offsets.h (included by
    include/asm-offsets.h, which is what will be referred to in the actual
    source code).  Later this may be extended by architecture-specific
    arch/*/lib/asm-offsets.c files that will generate a
    include/generated/asm-offsets.h.
    
    Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
    Acked-by: default avatarKumar Gala <galak@kernel.crashing.org>
    16a354f9