[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[1964] 2009-01-31 Colin D Bennett <address@hidden>
From: |
Vesa Jääskeläinen |
Subject: |
[1964] 2009-01-31 Colin D Bennett <address@hidden> |
Date: |
Sat, 31 Jan 2009 09:15:44 +0000 |
Revision: 1964
http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=1964
Author: chaac
Date: 2009-01-31 09:15:43 +0000 (Sat, 31 Jan 2009)
Log Message:
-----------
2009-01-31 Colin D Bennett <address@hidden>
* normal/main.c: Add include to grub/menu_viewer.h.
(free_menu_entry_classes): Added.
(grub_normal_menu_addentry): Added class property handling.
(grub_normal_execute): Changed to use new menu viewer for menu viewing.
(GRUB_MOD_INIT(normal)): Added register for text based menu viewer.
* normal/menu_viewer.c: New file.
* normal/menu.c (run_menu_entry): Renamed to ...
(grub_menu_execute_entry): ... this and made it as global.
(grub_menu_run): Renamed to ...
(show_text_menu): ... this and made it local.
(show_text_menu): Adapt to new function names.
(grub_normal_terminal_menu_viewer): New global variable.
* include/grub/menu.h: New file.
* include/grub/menu_viewer.h: New file.
* include/grub/normal.h: Added include to grub/menu.h.
(grub_menu_entry): Moved to include/grub/menu.h.
(grub_menu_entry_t): Likewise.
(grub_menu): Likewise.
(grub_menu_t): Likewise.
(grub_normal_terminal_menu_viewer): Added.
(grub_menu_execute_entry): Likewise.
(grub_menu_run): Removed.
* DISTLIST: Added include/grub/menu.h.
Added include/grub/menu_viewer.h.
Added normal/menu_viewer.c.
2009-01-31 Vesa J?\195?\164?\195?\164skel?\195?\164inen <address@hidden>
* normal/execute.c (grub_script_execute_menuentry): Changed to use
arglist for menutitle arguments.
* normal/main.c (grub_normal_menu_addentry): Likewise.
* normal/parser.y (menuentry): Likewise.
* normal/script.c (grub_script_create_cmdmenu): Likewise.
* include/grub/script.h (grub_script_cmd_menuentry): Likewise.
(grub_script_create_cmdmenu): Likewise.
* include/grub/normal.h (grub_normal_menu_addentry): Likewise.
* conf/i386-pc.rmk (normal_mod_SOURCES): Adapt Colin D Bennett's
changes.
* conf/x86_64-efi.rmk (normal_mod_SOURCES): Likewise.
* conf/i386-coreboot.rmk (normal_mod_SOURCES): Likewise.
* conf/i386-efi.rmk (normal_mod_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (normal_mod_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (normal_mod_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (normal_mod_SOURCES): Likewise.
Modified Paths:
--------------
trunk/grub2/ChangeLog
trunk/grub2/DISTLIST
trunk/grub2/conf/i386-coreboot.mk
trunk/grub2/conf/i386-coreboot.rmk
trunk/grub2/conf/i386-efi.mk
trunk/grub2/conf/i386-efi.rmk
trunk/grub2/conf/i386-ieee1275.mk
trunk/grub2/conf/i386-ieee1275.rmk
trunk/grub2/conf/i386-pc.mk
trunk/grub2/conf/i386-pc.rmk
trunk/grub2/conf/powerpc-ieee1275.mk
trunk/grub2/conf/powerpc-ieee1275.rmk
trunk/grub2/conf/sparc64-ieee1275.mk
trunk/grub2/conf/sparc64-ieee1275.rmk
trunk/grub2/conf/x86_64-efi.mk
trunk/grub2/conf/x86_64-efi.rmk
trunk/grub2/include/grub/normal.h
trunk/grub2/include/grub/script.h
trunk/grub2/normal/execute.c
trunk/grub2/normal/main.c
trunk/grub2/normal/menu.c
trunk/grub2/normal/parser.y
trunk/grub2/normal/script.c
Added Paths:
-----------
trunk/grub2/include/grub/menu.h
trunk/grub2/include/grub/menu_viewer.h
trunk/grub2/normal/menu_viewer.c
Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/ChangeLog 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,3 +1,68 @@
+2009-01-31 Colin D Bennett <address@hidden>
+
+ * normal/main.c: Add include to grub/menu_viewer.h.
+ (free_menu_entry_classes): Added.
+ (grub_normal_menu_addentry): Added class property handling.
+ (grub_normal_execute): Changed to use new menu viewer for menu viewing.
+ (GRUB_MOD_INIT(normal)): Added register for text based menu viewer.
+
+ * normal/menu_viewer.c: New file.
+
+ * normal/menu.c (run_menu_entry): Renamed to ...
+ (grub_menu_execute_entry): ... this and made it as global.
+ (grub_menu_run): Renamed to ...
+ (show_text_menu): ... this and made it local.
+ (show_text_menu): Adapt to new function names.
+ (grub_normal_terminal_menu_viewer): New global variable.
+
+ * include/grub/menu.h: New file.
+
+ * include/grub/menu_viewer.h: New file.
+
+ * include/grub/normal.h: Added include to grub/menu.h.
+ (grub_menu_entry): Moved to include/grub/menu.h.
+ (grub_menu_entry_t): Likewise.
+ (grub_menu): Likewise.
+ (grub_menu_t): Likewise.
+ (grub_normal_terminal_menu_viewer): Added.
+ (grub_menu_execute_entry): Likewise.
+ (grub_menu_run): Removed.
+
+ * DISTLIST: Added include/grub/menu.h.
+ Added include/grub/menu_viewer.h.
+ Added normal/menu_viewer.c.
+
+2009-01-31 Vesa Jääskeläinen <address@hidden>
+
+ * normal/execute.c (grub_script_execute_menuentry): Changed to use
+ arglist for menutitle arguments.
+
+ * normal/main.c (grub_normal_menu_addentry): Likewise.
+
+ * normal/parser.y (menuentry): Likewise.
+
+ * normal/script.c (grub_script_create_cmdmenu): Likewise.
+
+ * include/grub/script.h (grub_script_cmd_menuentry): Likewise.
+ (grub_script_create_cmdmenu): Likewise.
+
+ * include/grub/normal.h (grub_normal_menu_addentry): Likewise.
+
+ * conf/i386-pc.rmk (normal_mod_SOURCES): Adapt Colin D Bennett's
+ changes.
+
+ * conf/x86_64-efi.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-coreboot.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (normal_mod_SOURCES): Likewise.
+
2009-01-30 Christian Franke <address@hidden>
* normal/arg.c (grub_arg_show_help): Add indentation if '\n' appears
Modified: trunk/grub2/DISTLIST
===================================================================
--- trunk/grub2/DISTLIST 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/DISTLIST 2009-01-31 09:15:43 UTC (rev 1964)
@@ -152,6 +152,8 @@
include/grub/kernel.h
include/grub/loader.h
include/grub/lvm.h
+include/grub/menu.h
+include/grub/menu_viewer.h
include/grub/misc.h
include/grub/mm.h
include/grub/multiboot.h
@@ -391,6 +393,7 @@
normal/main.c
normal/menu.c
normal/menu_entry.c
+normal/menu_viewer.c
normal/misc.c
normal/parser.y
normal/script.c
Modified: trunk/grub2/conf/i386-coreboot.mk
===================================================================
--- trunk/grub2/conf/i386-coreboot.mk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-coreboot.mk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -696,18 +696,28 @@
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S normal/color.c
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o und-normal.lst
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d normal_mod-normal_color.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -716,9 +726,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -906,6 +916,44 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_color.d
+
+CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
+COMMANDFILES += cmd-normal_mod-normal_color.lst
+FSFILES += fs-normal_mod-normal_color.lst
+PARTMAPFILES += partmap-normal_mod-normal_color.lst
+
+cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
@@ -1001,25 +1049,6 @@
set -e; $(TARGET_CC) -Inormal/i386 -I$(srcdir)/normal/i386
$(TARGET_CPPFLAGS) $(TARGET_ASFLAGS) $(normal_mod_ASFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_color.d
-
-CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
-COMMANDFILES += cmd-normal_mod-normal_color.lst
-FSFILES += fs-normal_mod-normal_color.lst
-PARTMAPFILES += partmap-normal_mod-normal_color.lst
-
-cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
-
-fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
-
-partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-
-
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/i386-coreboot.rmk
===================================================================
--- trunk/grub2/conf/i386-coreboot.rmk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-coreboot.rmk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -111,12 +111,22 @@
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S normal/color.c
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/i386-efi.mk
===================================================================
--- trunk/grub2/conf/i386-efi.mk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-efi.mk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -731,18 +731,28 @@
kernel_syms.lst: $(addprefix include/grub/,$(kernel_mod_HEADERS)) config.h
genkernsyms.sh
/bin/sh genkernsyms.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
- normal/completion.c normal/execute.c \
+ normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S normal/color.c
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o und-normal.lst
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d normal_mod-normal_color.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -751,9 +761,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -941,6 +951,44 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_color.d
+
+CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
+COMMANDFILES += cmd-normal_mod-normal_color.lst
+FSFILES += fs-normal_mod-normal_color.lst
+PARTMAPFILES += partmap-normal_mod-normal_color.lst
+
+cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
@@ -1036,25 +1084,6 @@
set -e; $(TARGET_CC) -Inormal/i386 -I$(srcdir)/normal/i386
$(TARGET_CPPFLAGS) $(TARGET_ASFLAGS) $(normal_mod_ASFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_color.d
-
-CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
-COMMANDFILES += cmd-normal_mod-normal_color.lst
-FSFILES += fs-normal_mod-normal_color.lst
-PARTMAPFILES += partmap-normal_mod-normal_color.lst
-
-cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
-
-fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
-
-partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-
-
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/i386-efi.rmk
===================================================================
--- trunk/grub2/conf/i386-efi.rmk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-efi.rmk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -108,12 +108,22 @@
kernel_syms.lst: $(addprefix include/grub/,$(kernel_mod_HEADERS)) config.h
genkernsyms.sh
/bin/sh genkernsyms.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
- normal/completion.c normal/execute.c \
+ normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S normal/color.c
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/i386-ieee1275.mk
===================================================================
--- trunk/grub2/conf/i386-ieee1275.mk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-ieee1275.mk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -590,18 +590,28 @@
_linux.mod nand.mod memdisk.mod pci.mod lspci.mod datetime.mod \
date.mod datehook.mod lsmmap.mod
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S normal/color.c
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o und-normal.lst
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d normal_mod-normal_color.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -610,9 +620,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
normal_mod-normal_color.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -800,6 +810,44 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_color.d
+
+CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
+COMMANDFILES += cmd-normal_mod-normal_color.lst
+FSFILES += fs-normal_mod-normal_color.lst
+PARTMAPFILES += partmap-normal_mod-normal_color.lst
+
+cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
@@ -895,25 +943,6 @@
set -e; $(TARGET_CC) -Inormal/i386 -I$(srcdir)/normal/i386
$(TARGET_CPPFLAGS) $(TARGET_ASFLAGS) $(normal_mod_ASFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_color.d
-
-CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
-COMMANDFILES += cmd-normal_mod-normal_color.lst
-FSFILES += fs-normal_mod-normal_color.lst
-PARTMAPFILES += partmap-normal_mod-normal_color.lst
-
-cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
-
-fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
-
-partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-
-
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/i386-ieee1275.rmk
===================================================================
--- trunk/grub2/conf/i386-ieee1275.rmk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-ieee1275.rmk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -101,12 +101,22 @@
_linux.mod nand.mod memdisk.mod pci.mod lspci.mod datetime.mod \
date.mod datehook.mod lsmmap.mod
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S normal/color.c
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/i386-pc.mk
===================================================================
--- trunk/grub2/conf/i386-pc.mk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-pc.mk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1216,19 +1216,28 @@
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
normal/color.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_entry.o normal_mod-normal_misc.o
normal_mod-grub_script_tab.o normal_mod-normal_script.o
normal_mod-normal_i386_setjmp.o und-normal.lst
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_entry.d
normal_mod-normal_misc.d normal_mod-grub_script_tab.d
normal_mod-normal_script.d normal_mod-normal_i386_setjmp.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_i386_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -1237,9 +1246,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_entry.o normal_mod-normal_misc.o
normal_mod-grub_script_tab.o normal_mod-normal_script.o
normal_mod-normal_i386_setjmp.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_entry.o normal_mod-normal_misc.o
normal_mod-grub_script_tab.o normal_mod-normal_script.o
normal_mod-normal_i386_setjmp.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_i386_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -1446,6 +1455,25 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
Modified: trunk/grub2/conf/i386-pc.rmk
===================================================================
--- trunk/grub2/conf/i386-pc.rmk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/i386-pc.rmk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -191,13 +191,22 @@
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
normal/color.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/i386/setjmp.S
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/i386/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/powerpc-ieee1275.mk
===================================================================
--- trunk/grub2/conf/powerpc-ieee1275.mk 2009-01-30 21:10:17 UTC (rev
1963)
+++ trunk/grub2/conf/powerpc-ieee1275.mk 2009-01-31 09:15:43 UTC (rev
1964)
@@ -704,18 +704,28 @@
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/powerpc/setjmp.S normal/color.c
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_powerpc_setjmp.o
normal_mod-normal_color.o und-normal.lst
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/powerpc/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_powerpc_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_powerpc_setjmp.d normal_mod-normal_color.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_powerpc_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -724,9 +734,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_powerpc_setjmp.o
normal_mod-normal_color.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_powerpc_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_powerpc_setjmp.o
normal_mod-normal_color.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_powerpc_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -914,6 +924,44 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_color.d
+
+CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
+COMMANDFILES += cmd-normal_mod-normal_color.lst
+FSFILES += fs-normal_mod-normal_color.lst
+PARTMAPFILES += partmap-normal_mod-normal_color.lst
+
+cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
@@ -1009,28 +1057,9 @@
set -e; $(TARGET_CC) -Inormal/powerpc
-I$(srcdir)/normal/powerpc $(TARGET_CPPFLAGS) $(TARGET_ASFLAGS)
$(normal_mod_ASFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh normal > $@
|| (rm -f $@; exit 1)
-normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_color.d
-
-CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
-COMMANDFILES += cmd-normal_mod-normal_color.lst
-FSFILES += fs-normal_mod-normal_color.lst
-PARTMAPFILES += partmap-normal_mod-normal_color.lst
-
-cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
-
-fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
-
-partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-
-
normal_mod_CFLAGS = $(COMMON_CFLAGS)
+normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
# For suspend.mod
suspend_mod_SOURCES = commands/ieee1275/suspend.c
Modified: trunk/grub2/conf/powerpc-ieee1275.rmk
===================================================================
--- trunk/grub2/conf/powerpc-ieee1275.rmk 2009-01-30 21:10:17 UTC (rev
1963)
+++ trunk/grub2/conf/powerpc-ieee1275.rmk 2009-01-31 09:15:43 UTC (rev
1964)
@@ -121,15 +121,25 @@
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/powerpc/setjmp.S normal/color.c
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/powerpc/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
+normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
# For suspend.mod
suspend_mod_SOURCES = commands/ieee1275/suspend.c
Modified: trunk/grub2/conf/sparc64-ieee1275.mk
===================================================================
--- trunk/grub2/conf/sparc64-ieee1275.mk 2009-01-30 21:10:17 UTC (rev
1963)
+++ trunk/grub2/conf/sparc64-ieee1275.mk 2009-01-31 09:15:43 UTC (rev
1964)
@@ -781,19 +781,28 @@
#linux_mod_CFLAGS = $(COMMON_CFLAGS)
#linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
- normal/completion.c normal/execute.c \
+ normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c normal/script.c \
- normal/sparc64/setjmp.S \
- grub_script.tab.c
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-normal_script.o
normal_mod-normal_sparc64_setjmp.o normal_mod-grub_script_tab.o und-normal.lst
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/sparc64/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_sparc64_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-normal_script.d normal_mod-normal_sparc64_setjmp.d
normal_mod-grub_script_tab.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_sparc64_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -802,9 +811,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-normal_script.o
normal_mod-normal_sparc64_setjmp.o normal_mod-grub_script_tab.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_sparc64_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-normal_script.o
normal_mod-normal_sparc64_setjmp.o normal_mod-grub_script_tab.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_sparc64_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -992,6 +1001,44 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_color.d
+
+CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
+COMMANDFILES += cmd-normal_mod-normal_color.lst
+FSFILES += fs-normal_mod-normal_color.lst
+PARTMAPFILES += partmap-normal_mod-normal_color.lst
+
+cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
@@ -1030,6 +1077,25 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-grub_script_tab.o: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES)
+ $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS) $(TARGET_CFLAGS)
$(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-grub_script_tab.d
+
+CLEANFILES += cmd-normal_mod-grub_script_tab.lst
fs-normal_mod-grub_script_tab.lst partmap-normal_mod-grub_script_tab.lst
+COMMANDFILES += cmd-normal_mod-grub_script_tab.lst
+FSFILES += fs-normal_mod-grub_script_tab.lst
+PARTMAPFILES += partmap-normal_mod-grub_script_tab.lst
+
+cmd-normal_mod-grub_script_tab.lst: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-grub_script_tab.lst: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-grub_script_tab.lst: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_script.o: normal/script.c $(normal/script.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_script.d
@@ -1068,25 +1134,6 @@
set -e; $(TARGET_CC) -Inormal/sparc64
-I$(srcdir)/normal/sparc64 $(TARGET_CPPFLAGS) $(TARGET_ASFLAGS)
$(normal_mod_ASFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh normal > $@
|| (rm -f $@; exit 1)
-normal_mod-grub_script_tab.o: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES)
- $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS) $(TARGET_CFLAGS)
$(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-grub_script_tab.d
-
-CLEANFILES += cmd-normal_mod-grub_script_tab.lst
fs-normal_mod-grub_script_tab.lst partmap-normal_mod-grub_script_tab.lst
-COMMANDFILES += cmd-normal_mod-grub_script_tab.lst
-FSFILES += fs-normal_mod-grub_script_tab.lst
-PARTMAPFILES += partmap-normal_mod-grub_script_tab.lst
-
-cmd-normal_mod-grub_script_tab.lst: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
-
-fs-normal_mod-grub_script_tab.lst: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
-
-partmap-normal_mod-grub_script_tab.lst: grub_script.tab.c
$(grub_script.tab.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-
-
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/sparc64-ieee1275.rmk
===================================================================
--- trunk/grub2/conf/sparc64-ieee1275.rmk 2009-01-30 21:10:17 UTC (rev
1963)
+++ trunk/grub2/conf/sparc64-ieee1275.rmk 2009-01-31 09:15:43 UTC (rev
1964)
@@ -154,13 +154,22 @@
#linux_mod_CFLAGS = $(COMMON_CFLAGS)
#linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
- normal/completion.c normal/execute.c \
+ normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c normal/script.c \
- normal/sparc64/setjmp.S \
- grub_script.tab.c
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/sparc64/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/x86_64-efi.mk
===================================================================
--- trunk/grub2/conf/x86_64-efi.mk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/x86_64-efi.mk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -738,18 +738,28 @@
kernel_syms.lst: $(addprefix include/grub/,$(kernel_mod_HEADERS)) config.h
genkernsyms.sh
/bin/sh genkernsyms.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
- normal/completion.c normal/execute.c \
+ normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/x86_64/setjmp.S normal/color.c
-CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_x86_64_setjmp.o
normal_mod-normal_color.o und-normal.lst
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/x86_64/setjmp.S
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.o
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_x86_64_setjmp.o und-normal.lst
ifneq ($(normal_mod_EXPORTS),no)
CLEANFILES += def-normal.lst
DEFSYMFILES += def-normal.lst
endif
-MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_x86_64_setjmp.d normal_mod-normal_color.d
+MOSTLYCLEANFILES += normal_mod-normal_arg.d normal_mod-normal_cmdline.d
normal_mod-normal_command.d normal_mod-normal_completion.d
normal_mod-normal_execute.d normal_mod-normal_function.d
normal_mod-normal_lexer.d normal_mod-normal_main.d normal_mod-normal_menu.d
normal_mod-normal_color.d normal_mod-normal_menu_viewer.d
normal_mod-normal_menu_entry.d normal_mod-normal_misc.d
normal_mod-grub_script_tab.d normal_mod-normal_script.d
normal_mod-normal_x86_64_setjmp.d
UNDSYMFILES += und-normal.lst
normal.mod: pre-normal.o mod-normal.o $(TARGET_OBJ2ELF)
@@ -758,9 +768,9 @@
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f
$@; exit 1); fi
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K
_grub_mod_init -K _grub_mod_fini -R .note -R .comment $@
-pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_x86_64_setjmp.o
normal_mod-normal_color.o
+pre-normal.o: $(normal_mod_DEPENDENCIES) normal_mod-normal_arg.o
normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_x86_64_setjmp.o
-rm -f $@
- $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_x86_64_setjmp.o
normal_mod-normal_color.o
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@
normal_mod-normal_arg.o normal_mod-normal_cmdline.o normal_mod-normal_command.o
normal_mod-normal_completion.o normal_mod-normal_execute.o
normal_mod-normal_function.o normal_mod-normal_lexer.o normal_mod-normal_main.o
normal_mod-normal_menu.o normal_mod-normal_color.o
normal_mod-normal_menu_viewer.o normal_mod-normal_menu_entry.o
normal_mod-normal_misc.o normal_mod-grub_script_tab.o
normal_mod-normal_script.o normal_mod-normal_x86_64_setjmp.o
mod-normal.o: mod-normal.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS)
-c -o $@ $<
@@ -948,6 +958,44 @@
set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_color.d
+
+CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
+COMMANDFILES += cmd-normal_mod-normal_color.lst
+FSFILES += fs-normal_mod-normal_color.lst
+PARTMAPFILES += partmap-normal_mod-normal_color.lst
+
+cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
+normal_mod-normal_menu_viewer.o: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES)
+ $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
+-include normal_mod-normal_menu_viewer.d
+
+CLEANFILES += cmd-normal_mod-normal_menu_viewer.lst
fs-normal_mod-normal_menu_viewer.lst partmap-normal_mod-normal_menu_viewer.lst
+COMMANDFILES += cmd-normal_mod-normal_menu_viewer.lst
+FSFILES += fs-normal_mod-normal_menu_viewer.lst
+PARTMAPFILES += partmap-normal_mod-normal_menu_viewer.lst
+
+cmd-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
+
+fs-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
+
+partmap-normal_mod-normal_menu_viewer.lst: normal/menu_viewer.c
$(normal/menu_viewer.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
+
+
normal_mod-normal_menu_entry.o: normal/menu_entry.c
$(normal/menu_entry.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_menu_entry.d
@@ -1043,25 +1091,6 @@
set -e; $(TARGET_CC) -Inormal/x86_64
-I$(srcdir)/normal/x86_64 $(TARGET_CPPFLAGS) $(TARGET_ASFLAGS)
$(normal_mod_ASFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh normal >
$@ || (rm -f $@; exit 1)
-normal_mod-normal_color.o: normal/color.c $(normal/color.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS)
$(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_color.d
-
-CLEANFILES += cmd-normal_mod-normal_color.lst fs-normal_mod-normal_color.lst
partmap-normal_mod-normal_color.lst
-COMMANDFILES += cmd-normal_mod-normal_color.lst
-FSFILES += fs-normal_mod-normal_color.lst
-PARTMAPFILES += partmap-normal_mod-normal_color.lst
-
-cmd-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
gencmdlist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/gencmdlist.sh normal > $@ || (rm -f $@; exit 1)
-
-fs-normal_mod-normal_color.lst: normal/color.c $(normal/color.c_DEPENDENCIES)
genfslist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genfslist.sh normal > $@ || (rm -f $@; exit 1)
-
-partmap-normal_mod-normal_color.lst: normal/color.c
$(normal/color.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Inormal -I$(srcdir)/normal
$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -E $< | sh
$(srcdir)/genpartmaplist.sh normal > $@ || (rm -f $@; exit 1)
-
-
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Modified: trunk/grub2/conf/x86_64-efi.rmk
===================================================================
--- trunk/grub2/conf/x86_64-efi.rmk 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/conf/x86_64-efi.rmk 2009-01-31 09:15:43 UTC (rev 1964)
@@ -110,12 +110,22 @@
kernel_syms.lst: $(addprefix include/grub/,$(kernel_mod_HEADERS)) config.h
genkernsyms.sh
/bin/sh genkernsyms.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
-# For normal.mod.
+#
+# Only arch dependant part of normal.mod will be here. Common part for
+# all architecures of normal.mod is at start and should be kept at sync
+# with other makefiles.
+#
+# Please put arch dependant part of normal.mod at the end of list to
+# keep it simpler to update to different architectures.
+#
normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c \
- normal/completion.c normal/execute.c \
+ normal/completion.c normal/execute.c \
normal/function.c normal/lexer.c normal/main.c normal/menu.c \
- normal/menu_entry.c normal/misc.c grub_script.tab.c \
- normal/script.c normal/x86_64/setjmp.S normal/color.c
+ normal/color.c \
+ normal/menu_viewer.c normal/menu_entry.c \
+ normal/misc.c grub_script.tab.c \
+ normal/script.c \
+ normal/x86_64/setjmp.S
normal_mod_CFLAGS = $(COMMON_CFLAGS)
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
Added: trunk/grub2/include/grub/menu.h
===================================================================
--- trunk/grub2/include/grub/menu.h (rev 0)
+++ trunk/grub2/include/grub/menu.h 2009-01-31 09:15:43 UTC (rev 1964)
@@ -0,0 +1,63 @@
+/* menu.h - Menu and menu entry model declarations. */
+/*
+ * GRUB -- GRand Unified Bootloader
+ * Copyright (C) 2009 Free Software Foundation, Inc.
+ *
+ * GRUB is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GRUB is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GRUB. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef GRUB_MENU_HEADER
+#define GRUB_MENU_HEADER 1
+
+struct grub_menu_entry_class
+{
+ char *name;
+ struct grub_menu_entry_class *next;
+};
+
+/* The menu entry. */
+struct grub_menu_entry
+{
+ /* The title name. */
+ const char *title;
+
+ /* The classes associated with the menu entry:
+ used to choose an icon or other style attributes.
+ This is a dummy head node for the linked list, so for an entry E,
+ E.classes->next is the first class if it is not NULL. */
+ struct grub_menu_entry_class *classes;
+
+ /* The commands associated with this menu entry. */
+ struct grub_script *commands;
+
+ /* The sourcecode of the menu entry, used by the editor. */
+ const char *sourcecode;
+
+ /* The next element. */
+ struct grub_menu_entry *next;
+};
+typedef struct grub_menu_entry *grub_menu_entry_t;
+
+/* The menu. */
+struct grub_menu
+{
+ /* The size of a menu. */
+ int size;
+
+ /* The list of menu entries. */
+ grub_menu_entry_t entry_list;
+};
+typedef struct grub_menu *grub_menu_t;
+
+#endif /* GRUB_MENU_HEADER */
Property changes on: trunk/grub2/include/grub/menu.h
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: trunk/grub2/include/grub/menu_viewer.h
===================================================================
--- trunk/grub2/include/grub/menu_viewer.h (rev 0)
+++ trunk/grub2/include/grub/menu_viewer.h 2009-01-31 09:15:43 UTC (rev
1964)
@@ -0,0 +1,43 @@
+/* menu_viewer.h - Interface to menu viewer implementations. */
+/*
+ * GRUB -- GRand Unified Bootloader
+ * Copyright (C) 2009 Free Software Foundation, Inc.
+ *
+ * GRUB is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GRUB is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GRUB. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef GRUB_MENU_VIEWER_HEADER
+#define GRUB_MENU_VIEWER_HEADER 1
+
+#include <grub/err.h>
+#include <grub/symbol.h>
+#include <grub/types.h>
+#include <grub/menu.h>
+
+struct grub_menu_viewer
+{
+ /* The menu viewer name. */
+ const char *name;
+
+ grub_err_t (*show_menu) (grub_menu_t menu, int nested);
+
+ struct grub_menu_viewer *next;
+};
+typedef struct grub_menu_viewer *grub_menu_viewer_t;
+
+void grub_menu_viewer_register (grub_menu_viewer_t viewer);
+
+grub_err_t grub_menu_viewer_show_menu (grub_menu_t menu, int nested);
+
+#endif /* GRUB_MENU_VIEWER_HEADER */
Property changes on: trunk/grub2/include/grub/menu_viewer.h
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/grub2/include/grub/normal.h
===================================================================
--- trunk/grub2/include/grub/normal.h 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/include/grub/normal.h 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,7 +1,7 @@
/* normal.h - prototypes for the normal mode */
/*
* GRUB -- GRand Unified Bootloader
- * Copyright (C) 2002,2003,2005,2006,2007,2008 Free Software Foundation, Inc.
+ * Copyright (C) 2002,2003,2005,2006,2007,2008,2009 Free Software
Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -25,6 +25,7 @@
#include <grub/err.h>
#include <grub/arg.h>
#include <grub/env.h>
+#include <grub/menu.h>
/* The maximum size of a command-line. */
#define GRUB_MAX_CMDLINE 1600
@@ -84,34 +85,6 @@
};
typedef struct grub_command *grub_command_t;
-/* The menu entry. */
-struct grub_menu_entry
-{
- /* The title name. */
- const char *title;
-
- /* The commands associated with this menu entry. */
- struct grub_script *commands;
-
- /* The sourcecode of the menu entry, used by the editor. */
- const char *sourcecode;
-
- /* The next element. */
- struct grub_menu_entry *next;
-};
-typedef struct grub_menu_entry *grub_menu_entry_t;
-
-/* The menu. */
-struct grub_menu
-{
- /* The size of a menu. */
- int size;
-
- /* The list of menu entries. */
- grub_menu_entry_t entry_list;
-};
-typedef struct grub_menu *grub_menu_t;
-
/* This is used to store the names of filesystem modules for auto-loading. */
struct grub_fs_module_list
{
@@ -123,10 +96,12 @@
/* To exit from the normal mode. */
extern grub_jmp_buf grub_exit_env;
+extern struct grub_menu_viewer grub_normal_terminal_menu_viewer;
+
void grub_enter_normal_mode (const char *config);
void grub_normal_execute (const char *config, int nested);
-void grub_menu_run (grub_menu_t menu, int nested);
void grub_menu_entry_run (grub_menu_entry_t entry);
+void grub_menu_execute_entry(grub_menu_entry_t entry);
void grub_cmdline_run (int nested);
int grub_cmdline_get (const char *prompt, char cmdline[], unsigned max_len,
int echo_char, int readline);
@@ -152,7 +127,7 @@
char *grub_normal_do_completion (char *buf, int *restore,
void (*hook) (const char *item,
grub_completion_type_t type, int count));
grub_err_t grub_normal_print_device_info (const char *name);
-grub_err_t grub_normal_menu_addentry (const char *title,
+grub_err_t grub_normal_menu_addentry (int argc, const char **args,
struct grub_script *script,
const char *sourcecode);
char *grub_env_write_color_normal (struct grub_env_var *var, const char *val);
Modified: trunk/grub2/include/grub/script.h
===================================================================
--- trunk/grub2/include/grub/script.h 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/include/grub/script.h 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,7 +1,7 @@
/* script.h */
/*
* GRUB -- GRand Unified Bootloader
- * Copyright (C) 2005,2007 Free Software Foundation, Inc.
+ * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -113,8 +113,8 @@
{
struct grub_script_cmd cmd;
- /* The title of the menu entry. */
- struct grub_script_arg *title;
+ /* The arguments for this menu entry. */
+ struct grub_script_arglist *arglist;
/* The sourcecode the entry will be generated from. */
const char *sourcecode;
@@ -204,7 +204,7 @@
struct grub_script_cmd *
grub_script_create_cmdmenu (struct grub_parser_param *state,
- struct grub_script_arg *title,
+ struct grub_script_arglist *arglist,
char *sourcecode,
int options);
Modified: trunk/grub2/normal/execute.c
===================================================================
--- trunk/grub2/normal/execute.c 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/normal/execute.c 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,7 +1,7 @@
/* execute.c -- Execute a GRUB script. */
/*
* GRUB -- GRand Unified Bootloader
- * Copyright (C) 2005,2007,2008 Free Software Foundation, Inc.
+ * Copyright (C) 2005,2007,2008,2009 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -148,11 +148,11 @@
parser = (struct grub_arg_option *) grubcmd->options;
while (parser && (parser++)->doc)
maxargs++;
-
+
/* Set up the option state. */
state = grub_malloc (sizeof (struct grub_arg_list) * maxargs);
grub_memset (state, 0, sizeof (struct grub_arg_list) * maxargs);
-
+
/* Start the command. */
if (! (grubcmd->flags & GRUB_COMMAND_FLAG_NO_ARG_PARSE))
{
@@ -161,7 +161,7 @@
}
else
ret = (grubcmd->func) (state, argcount, args);
-
+
grub_free (state);
}
else
@@ -178,7 +178,7 @@
return ret;
}
-/* Execute a block of one or more commands. */
+/* Execute a block of one or more commands. */
grub_err_t
grub_script_execute_cmdblock (struct grub_script_cmd *cmd)
{
@@ -216,33 +216,54 @@
grub_script_execute_menuentry (struct grub_script_cmd *cmd)
{
struct grub_script_cmd_menuentry *cmd_menuentry;
- char *title;
+ struct grub_script_arglist *arglist;
struct grub_script *script;
+ char **args = 0;
+ int argcount = 0;
+ int i = 0;
cmd_menuentry = (struct grub_script_cmd_menuentry *) cmd;
- /* The title can contain variables, parse them and generate a string
- from it. */
- title = grub_script_execute_argument_to_string (cmd_menuentry->title);
- if (! title)
- return grub_errno;
+ if (cmd_menuentry->arglist)
+ {
+ argcount = cmd_menuentry->arglist->argcount;
+ /* Create argv from the arguments. */
+ args = grub_malloc (sizeof (char *) * argcount);
+
+ if (! args)
+ {
+ return grub_errno;
+ }
+
+ for (arglist = cmd_menuentry->arglist; arglist; arglist = arglist->next)
+ {
+ char *str;
+ str = grub_script_execute_argument_to_string (arglist->arg);
+ args[i++] = str;
+ }
+ }
+
/* Parse the menu entry *again*. */
script = grub_script_parse ((char *) cmd_menuentry->sourcecode, 0);
- if (! script)
+ /* Add new menu entry. */
+ if (script)
{
- grub_free (title);
- return grub_errno;
+ grub_normal_menu_addentry (argcount, (const char **)args,
+ script, cmd_menuentry->sourcecode);
}
- /* XXX: When this fails, the memory should be freed? */
- return grub_normal_menu_addentry (title, script,
- cmd_menuentry->sourcecode);
+ /* Free arguments. */
+ for (i = 0; i < argcount; i++)
+ grub_free (args[i]);
+ grub_free (args);
+
+ return grub_errno;
}
-
+
/* Execute any GRUB pre-parsed command or script. */
grub_err_t
grub_script_execute (struct grub_script *script)
Modified: trunk/grub2/normal/main.c
===================================================================
--- trunk/grub2/normal/main.c 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/normal/main.c 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,7 +1,7 @@
/* main.c - the normal mode main routine */
/*
* GRUB -- GRand Unified Bootloader
- * Copyright (C) 2000,2001,2002,2003,2005,2006,2007,2008 Free Software
Foundation, Inc.
+ * Copyright (C) 2000,2001,2002,2003,2005,2006,2007,2008,2009 Free Software
Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -28,6 +28,7 @@
#include <grub/env.h>
#include <grub/parser.h>
#include <grub/script.h>
+#include <grub/menu_viewer.h>
grub_jmp_buf grub_exit_env;
@@ -147,15 +148,42 @@
grub_env_unset_data_slot ("menu");
}
+static void
+free_menu_entry_classes (struct grub_menu_entry_class *head)
+{
+ /* Free all the classes. */
+ while (head)
+ {
+ struct grub_menu_entry_class *next;
+
+ grub_free (head->name);
+ next = head->next;
+ grub_free (head);
+ head = next;
+ }
+}
+
grub_err_t
-grub_normal_menu_addentry (const char *title, struct grub_script *script,
+grub_normal_menu_addentry (int argc, const char **args, struct grub_script
*script,
const char *sourcecode)
{
- const char *menutitle;
+ const char *menutitle = 0;
const char *menusourcecode;
grub_menu_t menu;
grub_menu_entry_t *last;
+ int failed = 0;
+ int i;
+ struct grub_menu_entry_class *classes_head; /* Dummy head node for list. */
+ struct grub_menu_entry_class *classes_tail;
+ /* Allocate dummy head node for class list. */
+ classes_head = grub_malloc (sizeof (struct grub_menu_entry_class));
+ if (! classes_head)
+ return grub_errno;
+ classes_head->name = 0;
+ classes_head->next = 0;
+ classes_tail = classes_head;
+
menu = grub_env_get_data_slot("menu");
if (! menu)
return grub_error (GRUB_ERR_MENU, "no menu context");
@@ -166,10 +194,81 @@
if (! menusourcecode)
return grub_errno;
- menutitle = grub_strdup (title);
- if (! menutitle)
+ /* Parse menu arguments. */
+ for (i = 0; i < argc; i++)
{
+ /* Capture arguments. */
+ if (grub_strncmp ("--", args[i], 2) == 0)
+ {
+ const char *arg = &args[i][2];
+
+ /* Handle menu class. */
+ if (grub_strcmp(arg, "class") == 0)
+ {
+ char *class_name;
+ struct grub_menu_entry_class *new_class;
+
+ i++;
+ class_name = grub_strdup (args[i]);
+ if (! class_name)
+ {
+ failed = 1;
+ break;
+ }
+
+ /* Create a new class and add it at the tail of the list. */
+ new_class = grub_malloc (sizeof (struct grub_menu_entry_class));
+ if (! new_class)
+ {
+ grub_free (class_name);
+ failed = 1;
+ break;
+ }
+ /* Fill in the new class node. */
+ new_class->name = class_name;
+ new_class->next = 0;
+ /* Link the tail to it, and make it the new tail. */
+ classes_tail->next = new_class;
+ classes_tail = new_class;
+ continue;
+ }
+ else
+ {
+ /* Handle invalid argument. */
+ failed = 1;
+ grub_error (GRUB_ERR_MENU, "invalid argument for menuentry: %s",
args[i]);
+ break;
+ }
+ }
+
+ /* Capture title. */
+ if (! menutitle)
+ {
+ menutitle = grub_strdup (args[i]);
+ }
+ else
+ {
+ failed = 1;
+ grub_error (GRUB_ERR_MENU, "too many titles for menuentry: %s",
args[i]);
+ break;
+ }
+ }
+
+ /* Validate arguments. */
+ if ((! failed) && (! menutitle))
+ {
+ grub_error (GRUB_ERR_MENU, "menuentry is missing title");
+ failed = 1;
+ }
+
+ /* If argument parsing failed, free any allocated resources. */
+ if (failed)
+ {
+ free_menu_entry_classes (classes_head);
+ grub_free ((void *) menutitle);
grub_free ((void *) menusourcecode);
+
+ /* Here we assume that grub_error has been used to specify failure
details. */
return grub_errno;
}
@@ -180,6 +279,7 @@
*last = grub_malloc (sizeof (**last));
if (! *last)
{
+ free_menu_entry_classes (classes_head);
grub_free ((void *) menutitle);
grub_free ((void *) menusourcecode);
return grub_errno;
@@ -187,6 +287,7 @@
(*last)->commands = script;
(*last)->title = menutitle;
+ (*last)->classes = classes_head;
(*last)->next = 0;
(*last)->sourcecode = menusourcecode;
@@ -476,7 +577,7 @@
if (menu && menu->size)
{
- grub_menu_run (menu, nested);
+ grub_menu_viewer_show_menu (menu, nested);
if (nested)
free_menu (menu);
}
@@ -519,6 +620,8 @@
if (mod)
grub_dl_ref (mod);
+ grub_menu_viewer_register (&grub_normal_terminal_menu_viewer);
+
grub_set_history (GRUB_DEFAULT_HISTORY_SIZE);
/* Register a command "normal" for the rescue mode. */
Modified: trunk/grub2/normal/menu.c
===================================================================
--- trunk/grub2/normal/menu.c 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/normal/menu.c 2009-01-31 09:15:43 UTC (rev 1964)
@@ -24,6 +24,7 @@
#include <grub/time.h>
#include <grub/env.h>
#include <grub/script.h>
+#include <grub/menu_viewer.h>
static grub_uint8_t grub_color_menu_normal;
static grub_uint8_t grub_color_menu_highlight;
@@ -41,9 +42,9 @@
draw_border (void)
{
unsigned i;
-
+
grub_setcolorstate (GRUB_TERM_COLOR_NORMAL);
-
+
grub_gotoxy (GRUB_TERM_MARGIN, GRUB_TERM_TOP_BORDER_Y);
grub_putcode (GRUB_TERM_DISP_UL);
for (i = 0; i < (unsigned) GRUB_TERM_BORDER_WIDTH - 2; i++)
@@ -97,7 +98,7 @@
grub_printf ("\n\
ESC to return previous menu.");
}
-
+
}
static grub_menu_entry_t
@@ -128,7 +129,7 @@
if (! unicode_title)
/* XXX How to show this error? */
return;
-
+
len = grub_utf8_to_ucs4 (unicode_title, title_len,
(grub_uint8_t *) title, -1, 0);
if (len < 0)
@@ -157,7 +158,7 @@
grub_ssize_t width;
width = grub_getcharwidth (unicode_title[i]);
-
+
if (x + width > (GRUB_TERM_LEFT_BORDER_X + GRUB_TERM_BORDER_WIDTH
- GRUB_TERM_MARGIN - 1))
grub_putcode (GRUB_TERM_DISP_RIGHT);
@@ -187,7 +188,7 @@
{
grub_menu_entry_t e;
int i;
-
+
grub_gotoxy (GRUB_TERM_LEFT_BORDER_X + GRUB_TERM_BORDER_WIDTH,
GRUB_TERM_FIRST_ENTRY_Y);
@@ -248,13 +249,13 @@
{
char *val;
int timeout;
-
+
val = grub_env_get ("timeout");
if (! val)
return -1;
-
+
grub_error_push ();
-
+
timeout = (int) grub_strtoul (val, 0, 0);
/* If the value is invalid, unset the variable. */
@@ -266,7 +267,7 @@
}
grub_error_pop ();
-
+
return timeout;
}
@@ -278,7 +279,7 @@
if (timeout > 0)
{
char buf[16];
-
+
grub_sprintf (buf, "%d", timeout);
grub_env_set ("timeout", buf);
}
@@ -290,13 +291,13 @@
{
char *val;
int entry;
-
+
val = grub_env_get (name);
if (! val)
return -1;
-
+
grub_error_push ();
-
+
entry = (int) grub_strtoul (val, 0, 0);
if (grub_errno != GRUB_ERR_NONE)
@@ -306,7 +307,7 @@
}
grub_error_pop ();
-
+
return entry;
}
@@ -317,7 +318,7 @@
They are required to clear the line. */
char *msg = " The highlighted entry will be booted automatically in %ds.
";
char *msg_end = grub_strchr (msg, '%');
-
+
grub_gotoxy (second_stage ? (msg_end - msg) : 0, GRUB_TERM_HEIGHT - 3);
grub_printf (second_stage ? msg_end : msg, timeout);
grub_gotoxy (GRUB_TERM_CURSOR_X, GRUB_TERM_FIRST_ENTRY_Y + offset);
@@ -331,9 +332,9 @@
grub_uint64_t saved_time;
int default_entry;
int timeout;
-
+
first = 0;
-
+
default_entry = get_entry_number ("default");
/* If DEFAULT_ENTRY is not within the menu entries, fall back to
@@ -370,7 +371,7 @@
{
int c;
timeout = get_timeout ();
-
+
if (timeout > 0)
{
grub_uint64_t current_time;
@@ -390,11 +391,11 @@
grub_env_unset ("timeout");
return default_entry;
}
-
+
if (grub_checkkey () >= 0 || timeout < 0)
{
c = GRUB_TERM_ASCII_CHAR (grub_getkey ());
-
+
if (timeout >= 0)
{
grub_gotoxy (0, GRUB_TERM_HEIGHT - 3);
@@ -404,7 +405,7 @@
grub_env_unset ("fallback");
grub_gotoxy (GRUB_TERM_CURSOR_X, GRUB_TERM_FIRST_ENTRY_Y +
offset);
}
-
+
switch (c)
{
case GRUB_TERM_HOME:
@@ -439,7 +440,7 @@
print_entries (menu, first, offset);
}
break;
-
+
case GRUB_TERM_DOWN:
case 'v':
if (menu->size > first + offset + 1)
@@ -459,7 +460,7 @@
}
}
break;
-
+
case GRUB_TERM_PPAGE:
if (first == 0)
{
@@ -490,12 +491,12 @@
else
{
first += GRUB_TERM_NUM_ENTRIES;
-
+
if (first + offset >= menu->size)
{
first -= GRUB_TERM_NUM_ENTRIES;
offset += GRUB_TERM_NUM_ENTRIES;
-
+
if (offset > menu->size - 1 ||
offset > GRUB_TERM_NUM_ENTRIES - 1)
{
@@ -510,13 +511,13 @@
}
print_entries (menu, first, offset);
break;
-
+
case '\n':
case '\r':
case 6:
grub_setcursor (1);
return first + offset;
-
+
case '\e':
if (nested)
{
@@ -524,7 +525,7 @@
return -1;
}
break;
-
+
case 'c':
grub_cmdline_run (1);
goto refresh;
@@ -536,11 +537,11 @@
grub_menu_entry_run (e);
}
goto refresh;
-
+
default:
break;
}
-
+
grub_refresh ();
}
}
@@ -550,25 +551,25 @@
}
/* Run a menu entry. */
-static void
-run_menu_entry (grub_menu_entry_t entry)
+void
+grub_menu_execute_entry(grub_menu_entry_t entry)
{
grub_script_execute (entry->commands);
-
+
if (grub_errno == GRUB_ERR_NONE && grub_loader_is_loaded ())
/* Implicit execution of boot, only if something is loaded. */
grub_command_execute ("boot", 0);
}
-void
-grub_menu_run (grub_menu_t menu, int nested)
+static grub_err_t
+show_text_menu (grub_menu_t menu, int nested)
{
while (1)
{
int boot_entry;
grub_menu_entry_t e;
int fallback_entry;
-
+
boot_entry = run_menu (menu, nested);
if (boot_entry < 0)
break;
@@ -576,14 +577,14 @@
e = get_entry (menu, boot_entry);
if (! e)
continue; /* Menu is empty. */
-
+
grub_cls ();
grub_setcursor (1);
grub_printf (" Booting \'%s\'\n\n", e->title);
-
- run_menu_entry (e);
+ grub_menu_execute_entry (e);
+
/* Deal with a fallback entry. */
/* FIXME: Multiple fallback entries like GRUB Legacy. */
fallback_entry = get_entry_number ("fallback");
@@ -591,11 +592,11 @@
{
grub_print_error ();
grub_errno = GRUB_ERR_NONE;
-
+
e = get_entry (menu, fallback_entry);
grub_env_unset ("fallback");
grub_printf ("\n Falling back to \'%s\'\n\n", e->title);
- run_menu_entry (e);
+ grub_menu_execute_entry (e);
}
if (grub_errno != GRUB_ERR_NONE)
@@ -606,4 +607,12 @@
grub_wait_after_message ();
}
}
+
+ return GRUB_ERR_NONE;
}
+
+struct grub_menu_viewer grub_normal_terminal_menu_viewer =
+{
+ .name = "terminal",
+ .show_menu = show_text_menu
+};
Added: trunk/grub2/normal/menu_viewer.c
===================================================================
--- trunk/grub2/normal/menu_viewer.c (rev 0)
+++ trunk/grub2/normal/menu_viewer.c 2009-01-31 09:15:43 UTC (rev 1964)
@@ -0,0 +1,63 @@
+/*
+ * GRUB -- GRand Unified Bootloader
+ * Copyright (C) 2009 Free Software Foundation, Inc.
+ *
+ * GRUB is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GRUB is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GRUB. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <grub/mm.h>
+#include <grub/misc.h>
+#include <grub/env.h>
+#include <grub/menu_viewer.h>
+#include <grub/menu.h>
+
+/* The list of menu viewers. */
+static grub_menu_viewer_t menu_viewer_list;
+
+void
+grub_menu_viewer_register (grub_menu_viewer_t viewer)
+{
+ viewer->next = menu_viewer_list;
+ menu_viewer_list = viewer;
+}
+
+static grub_menu_viewer_t get_current_menu_viewer (void)
+{
+ const char *selected_name = grub_env_get ("menuviewer");
+
+ /* If none selected, pick the last registered one. */
+ if (selected_name == 0)
+ return menu_viewer_list;
+
+ grub_menu_viewer_t cur;
+ for (cur = menu_viewer_list; cur; cur = cur->next)
+ {
+ if (grub_strcmp (cur->name, selected_name) == 0)
+ return cur;
+ }
+
+ /* Fall back to the first entry (or null). */
+ return menu_viewer_list;
+}
+
+grub_err_t
+grub_menu_viewer_show_menu (grub_menu_t menu, int nested)
+{
+ grub_menu_viewer_t cur = get_current_menu_viewer ();
+ if (!cur)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "No menu viewer available.");
+
+ return cur->show_menu (menu, nested);
+}
+
Property changes on: trunk/grub2/normal/menu_viewer.c
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/grub2/normal/parser.y
===================================================================
--- trunk/grub2/normal/parser.y 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/normal/parser.y 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,7 +1,7 @@
/* parser.y - The scripting parser. */
/*
* GRUB -- GRand Unified Bootloader
- * Copyright (C) 2005,2006,2007,2008 Free Software Foundation, Inc.
+ * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -204,7 +204,7 @@
;
/* A menu entry. Carefully save the memory that is allocated. */
-menuentry: "menuentry" argument
+menuentry: "menuentry" arguments
{
grub_script_lexer_ref (state->lexerstate);
} newlines '{'
Modified: trunk/grub2/normal/script.c
===================================================================
--- trunk/grub2/normal/script.c 2009-01-30 21:10:17 UTC (rev 1963)
+++ trunk/grub2/normal/script.c 2009-01-31 09:15:43 UTC (rev 1964)
@@ -1,7 +1,7 @@
/* script.c -- Functions to create an in memory description of the script. */
/*
* GRUB -- GRand Unified Bootloader
- * Copyright (C) 2005,2006,2007 Free Software Foundation, Inc.
+ * Copyright (C) 2005,2006,2007,2009 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -206,7 +206,7 @@
The options for this entry are passed in OPTIONS. */
struct grub_script_cmd *
grub_script_create_cmdmenu (struct grub_parser_param *state,
- struct grub_script_arg *title,
+ struct grub_script_arglist *arglist,
char *sourcecode,
int options)
{
@@ -232,9 +232,9 @@
cmd->cmd.next = 0;
/* XXX: Check if this memory is properly freed. */
cmd->sourcecode = sourcecode;
- cmd->title = title;
+ cmd->arglist = arglist;
cmd->options = options;
-
+
return (struct grub_script_cmd *) cmd;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [1964] 2009-01-31 Colin D Bennett <address@hidden>,
Vesa Jääskeläinen <=