diff options
author | Andrew Hsieh <andrewhsieh@google.com> | 2012-03-23 23:07:36 +0800 |
---|---|---|
committer | Andrew Hsieh <andrewhsieh@google.com> | 2012-03-23 23:07:36 +0800 |
commit | 126601dd3f5303b50033dcb88945d928aa764aa4 (patch) | |
tree | 36f80c2aaa18e794fc65cd4a756a28146bd50b5e /libc/kernel/tools/clean_header.py | |
parent | eaae81082cb76efa43a2c3fb57997b28ca270634 (diff) |
Fixed to #include correct 32-bit headers; Refreshed libc/kernel headers
This patch fixes an issue where 64-bit hreaders are incorrectly included
in kernel headers. For example, file "libc/kernel/arch-x86/asm/io.h"
incorreclty includes "io_64.h" (missing, BTW) instead of "io_32.h".
The reason is because CONFIG_X86_32 isn't considered pre-defined in
"kernel_default_arch_macros" for x86, and clean_header.py doesn't
look at it at all anyway (ie. __i386__ is also ignored, but it's
okay since x86 cross compiler defines it back)
Fixed 2 tools/*py, README.TXT, and refreshed libc/kernel headers
Change-Id: Iac834cc8b3548f055d3f2a214af36072dd679fe8
Diffstat (limited to 'libc/kernel/tools/clean_header.py')
-rwxr-xr-x | libc/kernel/tools/clean_header.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libc/kernel/tools/clean_header.py b/libc/kernel/tools/clean_header.py index 22e62aa5c..01569fc80 100755 --- a/libc/kernel/tools/clean_header.py +++ b/libc/kernel/tools/clean_header.py @@ -62,8 +62,11 @@ def cleanupFile( path, original_path): sys.stderr.write( "error: can't parse '%s'" % path ) sys.exit(1) + macros = kernel_known_macros.copy() + if arch and arch in kernel_default_arch_macros: + macros.update(kernel_default_arch_macros[arch]) - blocks.optimizeMacros( kernel_known_macros ) + blocks.optimizeMacros( macros ) blocks.optimizeIf01() blocks.removeVarsAndFuncs( statics ) blocks.replaceTokens( kernel_token_replacements ) |