]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* conf/Makefile.common (CPPFLAGS_KERNEL): Add -DGRUB_KERNEL=1.
authorVladimir Serbinenko <phcoder@gmail.com>
Fri, 25 Oct 2013 14:07:01 +0000 (16:07 +0200)
committerVladimir Serbinenko <phcoder@gmail.com>
Fri, 25 Oct 2013 14:07:01 +0000 (16:07 +0200)
* include/grub/dl.h (GRUB_MOD_INIT), (GRUB_MOD_FINI): Define
functions when compiling for kernel.

13 files changed:
ChangeLog
conf/Makefile.common
grub-core/commands/boot.c
grub-core/commands/keylayouts.c
grub-core/term/at_keyboard.c
grub-core/term/gfxterm.c
grub-core/term/i386/pc/vga_text.c
grub-core/term/serial.c
grub-core/term/terminfo.c
grub-core/video/radeon_fuloong2e.c
grub-core/video/sis315pro.c
grub-core/video/sm712.c
include/grub/dl.h

index 6ee59001f82bdd812f047d74d166bc08eed68eaa..dd5d28063b4c28bc94c48f72a47f676ae2dfb11b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * conf/Makefile.common (CPPFLAGS_KERNEL): Add -DGRUB_KERNEL=1.
+       * include/grub/dl.h (GRUB_MOD_INIT), (GRUB_MOD_FINI): Define
+       functions when compiling for kernel.
+
 2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * grub-core/lib/progress.c (grub_file_progress_hook_real): Cast to
index 91e313dc91d89bc4dad9682257f90e456556eb48..3877b0b9349c716df8fac80e52227a5ebc5b7ae2 100644 (file)
@@ -74,7 +74,7 @@ endif
 
 CFLAGS_KERNEL = $(CFLAGS_CPU) $(CFLAGS_PLATFORM) -ffreestanding
 LDFLAGS_KERNEL = $(LDFLAGS_CPU) $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -static-libgcc
-CPPFLAGS_KERNEL = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM)
+CPPFLAGS_KERNEL = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -DGRUB_KERNEL=1
 CCASFLAGS_KERNEL = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM)
 if COND_CYGWIN
 STRIPFLAGS_KERNEL = -F elf32-i386 -R .rel.dyn -R .reginfo -R .note -R .comment -R .drectve -R .note.gnu.gold-version
index 91ec87d809492c90a53dc6c3fe8667e394004164..e0148c7f61c0de7d20df5e8425745bfb1e7d644d 100644 (file)
@@ -183,22 +183,14 @@ grub_cmd_boot (struct grub_command *cmd __attribute__ ((unused)),
 
 static grub_command_t cmd_boot;
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_boot_init (void)
-#else
 GRUB_MOD_INIT(boot)
-#endif
 {
   cmd_boot =
     grub_register_command ("boot", grub_cmd_boot,
                           0, N_("Boot an operating system."));
 }
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_boot_fini (void)
-#else
 GRUB_MOD_FINI(boot)
-#endif
 {
   grub_unregister_command (cmd_boot);
 }
index b93ddf164c2af5a3f66ce853a08d5206587b993b..da04389e31712f5e5363f25d20ffa6c803a4f3c5 100644 (file)
@@ -293,21 +293,13 @@ grub_cmd_keymap (struct grub_command *cmd __attribute__ ((unused)),
 
 static grub_command_t cmd;
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_keylayouts_init (void)
-#else
 GRUB_MOD_INIT(keylayouts)
-#endif
 {
   cmd = grub_register_command ("keymap", grub_cmd_keymap,
                               0, N_("Load a keyboard layout."));
 }
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_keylayouts_fini (void)
-#else
 GRUB_MOD_FINI(keylayouts)
-#endif
 {
   grub_unregister_command (cmd);
 }
index 2bfa5c8153578340bd6bd30ef9ed961d27569e37..822ca7477ac6cb1c0e078bfd79b807d4690b4f9f 100644 (file)
@@ -646,22 +646,14 @@ static struct grub_term_input grub_at_keyboard_term =
     .getkey = grub_at_keyboard_getkey
   };
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_at_keyboard_init (void)
-#else
 GRUB_MOD_INIT(at_keyboard)
-#endif
 {
   grub_term_register_input ("at_keyboard", &grub_at_keyboard_term);
   grub_loader_register_preboot_hook (grub_at_fini_hw, grub_at_restore_hw,
                                     GRUB_LOADER_PREBOOT_HOOK_PRIO_CONSOLE);
 }
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_at_keyboard_fini (void)
-#else
 GRUB_MOD_FINI(at_keyboard)
-#endif
 {
   grub_keyboard_controller_fini (NULL);
   grub_term_unregister_input (&grub_at_keyboard_term);
index ce0bce7050a6d7f9c17472758c1782b059ced49b..de5479a51acfb7a3cf47d75cd44b59b21d1d2031 100644 (file)
@@ -1132,20 +1132,12 @@ grub_gfxterm_get_dimensions (unsigned *width, unsigned *height)
   *height = window.height;
 }
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_COREBOOT)
-void grub_gfxterm_init (void)
-#else
 GRUB_MOD_INIT(gfxterm)
-#endif
 {
   grub_term_register_output ("gfxterm", &grub_video_term);
 }
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_COEBOOT)
-void grub_gfxterm_fini (void)
-#else
 GRUB_MOD_FINI(gfxterm)
-#endif
 {
   grub_term_unregister_output (&grub_video_term);
 }
index 1234e6100c17230e09c462f4593957e027c04a58..88fecc5ea530f2f6c7a437196803909177869851 100644 (file)
@@ -270,15 +270,9 @@ static struct grub_term_output grub_vga_text_term =
     .progress_update_divisor = GRUB_PROGRESS_FAST
   };
 
-/* FIXME: this is was too spaghetti.  */
-
 #ifndef MODE_MDA
 
-#if defined (GRUB_MACHINE_COREBOOT) || defined (GRUB_MACHINE_QEMU) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS) || defined (GRUB_MACHINE_MULTIBOOT)
-void grub_vga_text_init (void)
-#else
 GRUB_MOD_INIT(vga_text)
-#endif
 {
 #ifdef GRUB_MACHINE_COREBOOT
   if (!grub_video_coreboot_fbtable)
@@ -286,11 +280,7 @@ GRUB_MOD_INIT(vga_text)
     grub_term_register_output ("vga_text", &grub_vga_text_term);
 }
 
-#if defined (GRUB_MACHINE_COREBOOT) || defined (GRUB_MACHINE_QEMU) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS) || defined (GRUB_MACHINE_MULTIBOOT)
-void grub_vga_text_fini (void)
-#else
 GRUB_MOD_FINI(vga_text)
-#endif
 {
   grub_term_unregister_output (&grub_vga_text_term);
 }
index 1c928fe785623726ef2e3027f2b5ffc2789b00e2..69596404b74cecb110966c3bc7a7d6b5e0578f49 100644 (file)
@@ -379,11 +379,7 @@ grub_serial_unregister_driver (struct grub_serial_driver *driver)
 
 static grub_extcmd_t cmd;
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_serial_init (void)
-#else
 GRUB_MOD_INIT(serial)
-#endif
 {
   cmd = grub_register_extcmd ("serial", grub_cmd_serial, 0,
                              N_("[OPTIONS...]"),
@@ -410,11 +406,7 @@ GRUB_MOD_INIT(serial)
 #endif
 }
 
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
-void grub_serial_fini (void)
-#else
 GRUB_MOD_FINI(serial)
-#endif
 {
   while (grub_serial_ports)
     grub_serial_unregister (grub_serial_ports);
index 001f2400821cec5ab55c0d44820cc85b56d75baa..d83afdc9d448dcb186be8ec16f525cc0f8669162 100644 (file)
@@ -763,13 +763,7 @@ grub_cmd_terminfo (grub_extcmd_context_t ctxt, int argc, char **args)
 
 static grub_extcmd_t cmd;
 
-#if defined (GRUB_MACHINE_IEEE1275) || defined (GRUB_MACHINE_MIPS_LOONGSON) \
-  || defined (GRUB_MACHINE_MIPS_QEMU_MIPS) || defined (GRUB_MACHINE_ARC) \
-  || defined (GRUB_MACHINE_UBOOT)
-void grub_terminfo_init (void)
-#else
 GRUB_MOD_INIT(terminfo)
-#endif
 {
   cmd = grub_register_extcmd ("terminfo", grub_cmd_terminfo, 0,
                              N_("[[-a|-u|-v] [-g WxH] TERM [TYPE]]"),
@@ -777,11 +771,7 @@ GRUB_MOD_INIT(terminfo)
                              options);
 }
 
-#if defined (GRUB_MACHINE_IEEE1275) || defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS) || defined (GRUB_MACHINE_ARC)
-void grub_terminfo_fini (void)
-#else
 GRUB_MOD_FINI(terminfo)
-#endif
 {
   grub_unregister_extcmd (cmd);
 }
index c3d65f10e021911d992884d74569191e140a9359..ddcf9a39e275cd0989df2fa270c69b1a39d6fe2a 100644 (file)
@@ -224,20 +224,12 @@ static struct grub_video_adapter grub_video_radeon_fuloong2e_adapter =
     .next = 0
   };
 
-#ifdef GRUB_MACHINE_MIPS_LOONGSON
-void grub_video_radeon_fuloong2e_init (void)
-#else
 GRUB_MOD_INIT(video_radeon_fuloong2e)
-#endif
 {
   grub_video_register (&grub_video_radeon_fuloong2e_adapter);
 }
 
-#ifdef GRUB_MACHINE_MIPS_LOONGSON
-void grub_video_radeon_fuloong2e_fini (void)
-#else
 GRUB_MOD_FINI(video_radeon_fuloong2e)
-#endif
 {
   grub_video_unregister (&grub_video_radeon_fuloong2e_adapter);
 }
index cf45493a621dbd39d8f31b9a163da86f1c517bf8..c1ae27019c7e53dd03dcb0a622577208b63a4e37 100644 (file)
@@ -437,20 +437,12 @@ static struct grub_video_adapter grub_video_sis315pro_adapter =
     .next = 0
   };
 
-#ifdef GRUB_MACHINE_MIPS_LOONGSON
-void grub_video_sis315pro_init (void)
-#else
 GRUB_MOD_INIT(video_sis315pro)
-#endif
 {
   grub_video_register (&grub_video_sis315pro_adapter);
 }
 
-#ifdef GRUB_MACHINE_MIPS_LOONGSON
-void grub_video_sis315pro_fini (void)
-#else
 GRUB_MOD_FINI(video_sis315pro)
-#endif
 {
   grub_video_unregister (&grub_video_sis315pro_adapter);
 }
index fb40d6427491d53fbef56d65576b919b88e2502b..441faabd31da0512e4613bbf4c94ac846e799e5a 100644 (file)
@@ -796,20 +796,12 @@ static struct grub_video_adapter grub_video_sm712_adapter =
     .next = 0
   };
 
-#ifdef GRUB_MACHINE_MIPS_LOONGSON
-void grub_video_sm712_init (void)
-#else
 GRUB_MOD_INIT(video_sm712)
-#endif
 {
   grub_video_register (&grub_video_sm712_adapter);
 }
 
-#ifdef GRUB_MACHINE_MIPS_LOONGSON
-void grub_video_sm712_fini (void)
-#else
 GRUB_MOD_FINI(video_sm712)
-#endif
 {
   grub_video_unregister (&grub_video_sm712_adapter);
 }
index 80aac4979e7a17ec2aaefaffd2193803ce728817..3dc88c75c2b41aaa46f2a4bc95b922f51abf32ea 100644 (file)
  */
 #ifndef ASM_FILE
 
-#if !defined (GRUB_UTIL) && !defined (GRUB_MACHINE_EMU)
-
 #ifndef GRUB_MOD_INIT
+
+#if !defined (GRUB_UTIL) && !defined (GRUB_MACHINE_EMU) && !defined (GRUB_KERNEL)
+
 #define GRUB_MOD_INIT(name)    \
 static void grub_mod_init (grub_dl_t mod __attribute__ ((unused))) __attribute__ ((used)); \
 static void \
 grub_mod_init (grub_dl_t mod __attribute__ ((unused)))
-#endif
 
-#ifndef GRUB_MOD_FINI
 #define GRUB_MOD_FINI(name)    \
 static void grub_mod_fini (void) __attribute__ ((used)); \
 static void \
 grub_mod_fini (void)
-#endif
+
+#elif defined (GRUB_KERNEL)
+
+#define GRUB_MOD_INIT(name)    \
+static void grub_mod_init (grub_dl_t mod __attribute__ ((unused))) __attribute__ ((used)); \
+void \
+grub_##name##_init (void) { grub_mod_init (0); } \
+static void \
+grub_mod_init (grub_dl_t mod __attribute__ ((unused)))
+
+#define GRUB_MOD_FINI(name)    \
+static void grub_mod_fini (void) __attribute__ ((used)); \
+void \
+grub_##name##_fini (void) { grub_mod_fini (); } \
+static void \
+grub_mod_fini (void)
 
 #else
 
-#ifndef GRUB_MOD_INIT
 #define GRUB_MOD_INIT(name)    \
 static void grub_mod_init (grub_dl_t mod __attribute__ ((unused))) __attribute__ ((used)); \
 void grub_##name##_init (void); \
@@ -61,9 +74,7 @@ void \
 grub_##name##_init (void) { grub_mod_init (0); } \
 static void \
 grub_mod_init (grub_dl_t mod __attribute__ ((unused)))
-#endif
 
-#ifndef GRUB_MOD_FINI
 #define GRUB_MOD_FINI(name)    \
 static void grub_mod_fini (void) __attribute__ ((used)); \
 void grub_##name##_fini (void); \
@@ -71,6 +82,7 @@ void \
 grub_##name##_fini (void) { grub_mod_fini (); } \
 static void \
 grub_mod_fini (void)
+
 #endif
 
 #endif