--- grub-0.96.orig/grub/asmstub.c +++ grub-0.96/grub/asmstub.c @@ -90,7 +90,7 @@ static jmp_buf env_for_exit; /* The current color for console. */ -static int console_current_color = A_NORMAL; +int console_current_color = A_NORMAL; /* The file descriptor for a serial device. */ static int serial_fd = -1; @@ -115,7 +115,7 @@ /* We need a nested function so that we get a clean stack frame, regardless of how the code is optimized. */ - static volatile void doit () + volatile void doit () { /* Make sure our stack lives in the simulated memory area. */ asm volatile ("movl %%esp, %0\n\tmovl %1, %%esp\n" --- grub-0.96.orig/lib/device.c +++ grub-0.96/lib/device.c @@ -493,12 +493,12 @@ static int read_device_map (FILE *fp, char **map, const char *map_file) { - static void show_error (int no, const char *msg) + void show_error (int no, const char *msg) { fprintf (stderr, "%s:%d: error: %s\n", map_file, no, msg); } - static void show_warning (int no, const char *msg, ...) + void show_warning (int no, const char *msg, ...) { va_list ap; --- grub-0.96.orig/stage2/builtins.c +++ grub-0.96/stage2/builtins.c @@ -143,7 +143,7 @@ /* Collect contiguous blocks into one entry as many as possible, and print the blocklist notation on the screen. */ - static void disk_read_blocklist_func (int sector, int offset, int length) + void disk_read_blocklist_func (int sector, int offset, int length) { if (num_sectors > 0) { @@ -590,7 +590,7 @@ }; /* Convert the color name STR into the magical number. */ - static int color_number (char *str) + int color_number (char *str) { char *ptr; int i; @@ -1907,7 +1907,7 @@ #endif /* GRUB_UTIL */ /* Save the first sector of Stage2 in STAGE2_SECT. */ - static void disk_read_savesect_func (int sector, int offset, int length) + void disk_read_savesect_func (int sector, int offset, int length) { if (debug) printf ("[%d]", sector); @@ -1923,7 +1923,7 @@ /* Write SECTOR to INSTALLLIST, and update INSTALLADDR and INSTALLSECT. */ - static void disk_read_blocklist_func (int sector, int offset, int length) + void disk_read_blocklist_func (int sector, int offset, int length) { if (debug) printf("[%d]", sector); @@ -3742,7 +3742,7 @@ int to_code, from_code; int map_in_interrupt = 0; - static int find_key_code (char *key) + int find_key_code (char *key) { int i; @@ -3759,7 +3759,7 @@ return 0; } - static int find_ascii_code (char *key) + int find_ascii_code (char *key) { int i; --- grub-0.96.orig/stage2/char_io.c +++ grub-0.96/stage2/char_io.c @@ -1206,7 +1206,7 @@ memcheck (int addr, int len) { #ifdef GRUB_UTIL - static int start_addr (void) + int start_addr (void) { int ret; # if defined(HAVE_START_SYMBOL) @@ -1217,7 +1217,7 @@ return ret; } - static int end_addr (void) + int end_addr (void) { int ret; # if defined(HAVE_END_SYMBOL) --- grub-0.96.orig/stage2/smp-imps.h +++ grub-0.96/stage2/smp-imps.h @@ -178,40 +178,6 @@ }; -/* - * Exported globals here. - */ - -/* - * "imps_any_new_apics" is non-zero if any of the APICS (local or I/O) - * are *not* an 82489DX. This is useful to determine if more than 15 - * CPUs can be supported (true if zero). - */ -extern int imps_any_new_apics; - -/* - * "imps_enabled" is non-zero if the probe sequence found IMPS - * information and was successful. - */ -extern int imps_enabled; - -/* - * This contains the local APIC hardware address. - */ -extern unsigned imps_lapic_addr; - -/* - * This represents the number of CPUs found. - */ -extern int imps_num_cpus; - -/* - * These map from virtual cpu numbers to APIC id's and back. - */ -extern unsigned char imps_cpu_apic_map[IMPS_MAX_CPUS]; -extern unsigned char imps_apic_cpu_map[IMPS_MAX_CPUS]; - - /* * This is the primary function for probing for Intel MPS 1.1/1.4 * compatible hardware and BIOS information. While probing the CPUs