2009-04-14 Bean <bean123ch@gmail.com>
* Makefile.in (pkglib_DATA): Add handler.lst. (handler.lst): New rule. * conf/i386-pc.rmk (normal_mod_SOURCES): Add normal/handler.c. * conf/i386-coreboot.rmk: Likewise. * conf/i386-ieee1275.rmk: Likewise. * conf/i386-efi.rmk: Likewise. * conf/x86_64-efi.rmk: Likewise. * conf/powerpc-ieee1275.rmk: Likewise. * conf/sparc64-ieee1275.rmk: Likewise. * genhandlerlist.sh: New file. * genmk.rb: Add rules to generate handler.lst. * include/grub/normal.h (grub_file_getline): New function definition. (read_handler_list): Likewise. (free_handler_list): Likewise. * include/grub/term.h (grub_term_register_input): Add name parameter for auto generation of handler.lst. (grub_term_register_output): Likewise. * normal/handler.c: New file. * normal/main.c (get_line): Renamed to grub_file_getline. (read_config_file): Use the newly renamed grub_file_getline. (read_command_list): Likewise. (read_fs_list): Likewise. (grub_normal_execute): Call read_handler_list to parse handler.lst. (GRUB_MOD_FINI): Call free_handler_list to free handler list. * term/efi/console.c (grub_console_init): Add name parameter for auto generation of handler.lst. * term/gfxterm.c: Likewise. * term/i386/pc/at_keyboard.c: Likewise. * term/i386/pc/console.c: Likewise. * term/i386/pc/serial.c: Likewise. * term/i386/pc/vesafb.c: Likewise. * term/i386/pc/vga.c: Likewise. * term/i386/pc/vga_text.c: Likewise. * term/ieee1275/ofconsole.c: Likewise. * term/usb_keyboard.c: Likewise.
This commit is contained in:
parent
33c846be29
commit
d05f0df3eb
26 changed files with 352 additions and 34 deletions
|
@ -37,8 +37,8 @@ static grub_fs_module_list_t fs_module_list = 0;
|
|||
#define GRUB_DEFAULT_HISTORY_SIZE 50
|
||||
|
||||
/* Read a line from the file FILE. */
|
||||
static char *
|
||||
get_line (grub_file_t file)
|
||||
char *
|
||||
grub_file_getline (grub_file_t file)
|
||||
{
|
||||
char c;
|
||||
int pos = 0;
|
||||
|
@ -310,7 +310,7 @@ read_config_file (const char *config, int nested)
|
|||
{
|
||||
currline++;
|
||||
|
||||
*line = get_line (file);
|
||||
*line = grub_file_getline (file);
|
||||
if (! *line)
|
||||
return grub_errno;
|
||||
|
||||
|
@ -343,7 +343,7 @@ read_config_file (const char *config, int nested)
|
|||
int startline;
|
||||
char *cmdline;
|
||||
|
||||
cmdline = get_line (file);
|
||||
cmdline = grub_file_getline (file);
|
||||
if (!cmdline)
|
||||
break;
|
||||
|
||||
|
@ -475,7 +475,7 @@ read_command_list (void)
|
|||
grub_command_t cmd;
|
||||
int prio = 0;
|
||||
|
||||
buf = get_line (file);
|
||||
buf = grub_file_getline (file);
|
||||
|
||||
if (! buf)
|
||||
break;
|
||||
|
@ -594,7 +594,7 @@ read_fs_list (void)
|
|||
char *q;
|
||||
grub_fs_module_list_t fs_mod;
|
||||
|
||||
buf = get_line (file);
|
||||
buf = grub_file_getline (file);
|
||||
if (! buf)
|
||||
break;
|
||||
|
||||
|
@ -650,6 +650,7 @@ grub_normal_execute (const char *config, int nested, int batch)
|
|||
|
||||
read_command_list ();
|
||||
read_fs_list ();
|
||||
read_handler_list ();
|
||||
|
||||
if (config)
|
||||
{
|
||||
|
@ -754,4 +755,5 @@ GRUB_MOD_FINI(normal)
|
|||
{
|
||||
grub_set_history (0);
|
||||
grub_unregister_command (cmd_normal);
|
||||
free_handler_list ();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue