diff options
author | Michal Marek <mmarek@suse.cz> | 2011-10-08 01:18:35 +0200 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2011-10-11 12:00:39 +0200 |
commit | 2c5925d6b7fedc8f1c325f4f85451f505ec69aca (patch) | |
tree | 4b27c58e2487842385e9a736331d97a3c3a9afee /scripts/genksyms/lex.l | |
parent | b06fcd6c83c231f51a86448bb33c4cd717fefee8 (diff) | |
download | linux-2c5925d6b7fedc8f1c325f4f85451f505ec69aca.tar.bz2 |
genksyms: Do not expand internal types
Consider structures, unions and enums defined in the source file as
internal and do not expand them. This way, changes to e.g. struct
serial_private in drivers/tty/serial/8250_pci.c will not affect the
checksum of the pciserial_* exports.
Diffstat (limited to 'scripts/genksyms/lex.l')
-rw-r--r-- | scripts/genksyms/lex.l | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/scripts/genksyms/lex.l b/scripts/genksyms/lex.l index 400ae06a70df..f770071719cb 100644 --- a/scripts/genksyms/lex.l +++ b/scripts/genksyms/lex.l @@ -116,6 +116,7 @@ MC_TOKEN ([~%^&*+=|<>/-]=)|(&&)|("||")|(->)|(<<)|(>>) cur_node->tag = \ find_symbol(cur_node->string, SYM_ENUM_CONST, 1)?\ SYM_ENUM_CONST : SYM_NORMAL ; \ + cur_node->in_source_file = in_source_file; \ } while (0) #define APP _APP(yytext, yyleng) @@ -166,6 +167,13 @@ repeat: cur_filename = memcpy(xmalloc(e-file+1), file, e-file+1); cur_line = atoi(yytext+2); + if (!source_file) { + source_file = xstrdup(cur_filename); + in_source_file = 1; + } else { + in_source_file = (strcmp(cur_filename, source_file) == 0); + } + goto repeat; } |