+2009-03-21 Bean <bean123ch@gmail.com>
+
+ * commands/blocklist.c: Add include file <grub/command.h>, remove
+ <grub/normal.h> and <grub/arg.h>.
+ (grub_cmd_blocklist): Use the new command interface.
+ (GRUB_MOD_INIT): Likewise.
+ (GRUB_MOD_FINI): Likewise.
+ * commands/boot.c: Likewise.
+ * commands/cat.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/configfile.c: Likewise.
+ * commands/crc.c: Likewise.
+ * commands/echo.c: Likewise.
+ * commands/halt.c: Likewise.
+ * commands/handler.c: Likewise.
+ * commands/hdparm.c: Likewise.
+ * commands/help.c: Likewise.
+ * commands/hexdump.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/lsmmap.c: Likewise.
+ * commands/lspci.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/read.c: Likewise.
+ * commands/reboot.c: Likewise.
+ * commands/search.c: Likewise.
+ * commands/sleep.c: Likewise.
+ * commands/test.c: Likewise.
+ * commands/usbtest.c: Likewise.
+ * commands/videotest.c: Likewise.
+ * commands/i386/cpuid.c: Likewise.
+ * commands/i386/pc/halt.c: Likewise.
+ * commands/i386/pc/play.c: Likewise.
+ * commands/i386/pc/pxecmd.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/i386/pc/vbetest.c: Likewise.
+ * commands/ieee1275/suspend.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * font/font_cmd.c: Likewise.
+ * hello/hello.c: Likewise.
+ * loader/efi/appleloader.c: Likewise.
+ * loader/efi/chainloader.c: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/i386/efi/linux.c: Likewise.
+ * loader/i386/ieee1275/linux.c: Likewise.
+ * loader/i386/linux.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/terminfo.c: Likewise.
+
+ * term/i386/pc/vesafb.c: Removed <grub/arg.h>.
+ * term/i386/pc/vga.c: Likewise.
+ * video/readers/jpeg.c: Likewise.
+ * video/readers/png.c: Likewise.
+ * video/readers/tga.c: Likewise.
+
+ * util/grub-fstest (cmd_loopback): Removed.
+ (cmd_blocklist): Likewise.
+ (cmd_ls): Likewise.
+ (grub_register_command): Likewise.
+ (grub_unregister_command): Likewise.
+ (execute_command): Use grub_command_find to locate command and execute
+ it.
+
+ * include/grub/efi/chainloader.h: Removed.
+ * loader/efi/chainloader_normal.c: Likewise.
+ * loader/i386/bsd_normal.c: Likewise.
+ * loader/i386/pc/chainloader_normal.c: Likewise.
+ * loader/i386/pc/multiboot_normal.c: Likewise.
+ * loader/linux_normal.c: Likewise.
+ * loader/multiboot_loader_normal.c: Likewise.
+ * loader/powerpc/ieee1275/linux_normal.c: Likewise.
+
+ * gencmdlist.sh: Scan new registration command grub_register_extcmd
+ and grub_register_command_p1.
+
+ * conf/common.rmk (grub_fstest_SOURCES): Add kern/list.c,
+ kern/command.c, lib/arg.c and commands/extcmd.c.
+ (pkglib_MODULES): Remove boot.mod, and minicmd.mod and extcmd.mod.
+ (minicmd_mod_SOURCES): New variable.
+ (minicmd_mod_CFLAGS): Likewise.
+ (minicmd_mod_LDFLAGS): Likewise.
+ (extcmd_mod_SOURCES): Likewise.
+ (extcmd_mod_CFLAGS): Likewise.
+ (extcmd_mod_LDFLAGS): Likewise.
+ (boot_mod_SOURCES): Removed.
+ (boot_mod_CFLAGS): Likewise.
+ (boot_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/command.c and
+ kern/corecmd.c.
+ (kernel_img_HEADERS): Add command.h.
+ (grub_emu_SOURCES): Remove commands/boot.c and normal/arg.c, add
+ commands/minicmd.c, kern/command.c, kern/corecmd.c, commands/extcmd.c
+ and lib/arg.c.
+ (pkglib_MODULES): Change _linux.mod, _chain.mod, _bsd.mod and
+ _multiboot.mod as linux.mod, chain.mod, bsd.mod and multiboot.mod,
+ remove the corresponding normal mode command.
+ (normal_mod_SOURCES): Remove normal/arg.c.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+ * include/grub/arg.h: Move from here ...
+ * include/grub/lib/arg.h: ... to here.
+
+ * normal/arg.c: Move from here ...
+ * lib/arg.c: ... to here.
+
+ * commands/extcmd.c: New file.
+ * commands/minicmd.c: Likewise.
+ * include/grub/command.h: Likewise.
+ * include/grub/extcmd.h: Likewise.
+ * kern/command.c: Likewise.
+ * kern/corecmd.c: Likewise.
+
+ * kern/list.c (grub_list_iterate): Return int instead of void.
+ (grub_list_insert): New function.
+ (grub_prio_list_insert): Likewise.
+
+ * kern/rescue.c (grub_rescue_command): Removed.
+ (grub_rescue_command_list): Likewise.
+ (grub_rescue_register_command): Likewise.
+ (grub_rescue_unregister_command): Likewise.
+ (grub_rescue_cmd_boot): Move to minicmd.c
+ (grub_rescue_cmd_help): Likewise.
+ (grub_rescue_cmd_info): Likewise.
+ (grub_rescue_cmd_boot): Likewise.
+ (grub_rescue_cmd_testload): Likewise.
+ (grub_rescue_cmd_dump): Likewise.
+ (grub_rescue_cmd_rmmod): Likewise.
+ (grub_rescue_cmd_lsmod): Likewise.
+ (grub_rescue_cmd_exit): Likewise.
+ (grub_rescue_print_devices): Moved to corecmd.c.
+ (grub_rescue_print_files): Likewise.
+ (grub_rescue_cmd_ls): Likewise.
+ (grub_rescue_cmd_insmod): Likewise.
+ (grub_rescue_cmd_set): Likewise.
+ (grub_rescue_cmd_unset): Likewise.
+ (attemp_normal_mode): Use grub_command_find to get normal module.
+ (grub_enter_rescue_mode): Use grub_register_core_commands to register
+ commands, remove grub_rescue_regiter_command calls.
+
+ * normal/command.c (grub_regiser_command): Removed.
+ (grub_unregister_command): Likewise.
+ (grub_command_find): Likewise.
+ (grub_iterate_commands): Likewise.
+ (rescue_command): Likewise.
+ (export_command): Moved to corecmd.c.
+ (set_command): Removed.
+ (unset_command): Likewise.
+ (insmod_command): Likewise.
+ (rmmod_command): Likewise.
+ (lsmod_command): Likewise.
+ (grub_command_init): Likewise.
+
+ * normal/completion.c (iterate_command): Use cmd->prio to check for
+ active command.
+ (complete_arguments): Use grub_extcmd_t structure to find options.
+ (grub_normal_do_completion): Change function grub_iterate_commands to
+ grub_command_iterate.
+
+ * normal/execute.c (grub_script_execute_cmd): No need to parse
+ argument here.
+
+ * normal/main.c (grub_dyncmd_dispatcher): New function.
+ (read_command_list): Register unload commands as dyncmd.
+ (grub_cmd_normal): Use new command interface, register rescue,
+ unregister normal at entry, register normal, unregister rescue at exit.
+
+ * include/grub/list.h (grub_list_test_t): New type.
+ (grub_list_iterate): Return int instead of void.
+ (grub_list_insert): New function.
+ (GRUB_AS_NAMED_LIST_P): New macro.
+ (GRUB_AS_PRIO_LIST): Likewise.
+ (GRUB_AS_PRIO_LIST_P): Likewise.
+ (GRUB_PRIO_LIST_PRIO_MASK): New constant.
+ (GRUB_PRIO_LIST_FLAG_ACTIVE): Likewise.
+ (grub_prio_list): New structure.
+ (grub_prio_list_insert): New function.
+ (grub_prio_list_remove): New inline function.
+
+ * include/grub/normal.h: Remove <grub/arg.h>, add <grub/command.h>.
+ (GRUB_COMMAND_FLAG_CMDLINE): Moved to command.h.
+ (GRUB_COMMAND_FLAG_MENU): Likewise.
+ (GRUB_COMMAND_FLAG_BOTH): Likewise.
+ (GRUB_COMMAND_FLAG_TITLE): Likewise.
+ (GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
+ (GRUB_COMMAND_FLAG_NO_ARG_PARSE): Removed.
+ (GRUB_COMMAND_FLAG_NOT_LOADED): Likewise.
+ (grub_command): Likewise.
+ (grub_register_command): Likewise.
+ (grub_command_find): Likewise.
+ (grub_iterate_commands): Likewise.
+ (grub_command_init): Likewise.
+ (grub_arg_parse): Likewise.
+ (grub_arg_show_help): Likewise.
+
+ * include/grub/rescue.h (grub_rescue_register_command): Removed.
+ (grub_rescue_unregister_command): Likewise.
+
+ * include/grub/i386/bsd.h: Remove grub_rescue_cmd_freebsd,
+ grub_rescue_cmd_openbsd, grub_rescue_cmd_netbsd,
+ grub_rescue_cmd_freebsd_loadenv and grub_rescue_cmd_freebsd_module.
+
+ * include/grub/i386/efi/loader.h: Remove grub_rescue_cmd_linux and
+ grub_rescue_cmd_initrd.
+ * include/grub/i386/loader.h: Likewise.
+ * include/grub/x86_64/loader.h: Likewise.
+
+ * include/grub/i386/pc/chainloader.h: Remove grub_chainloader_cmd.
+
2009-03-21 Bean <bean123ch@gmail.com>
* util/hostdisk.c (read_device_map): Use grub_util_get_disk_size
commands/crc.c
commands/date.c
commands/echo.c
+commands/extcmd.c
commands/halt.c
commands/handler.c
commands/hdparm.c
commands/ls.c
commands/lsmmap.c
commands/lspci.c
+commands/minicmd.c
commands/read.c
commands/reboot.c
commands/search.c
include/multiboot2.h
include/grub/acorn_filecore.h
include/grub/aout.h
-include/grub/arg.h
include/grub/ata.h
include/grub/bitmap.h
include/grub/boot.h
include/grub/bufio.h
include/grub/cache.h
+include/grub/command.h
include/grub/device.h
include/grub/disk.h
include/grub/dl.h
include/grub/elfload.h
include/grub/env.h
include/grub/err.h
+include/grub/extcmd.h
include/grub/file.h
include/grub/font.h
include/grub/fs.h
include/grub/usbtrans.h
include/grub/video.h
include/grub/efi/api.h
-include/grub/efi/chainloader.h
include/grub/efi/console.h
include/grub/efi/console_control.h
include/grub/efi/disk.h
include/grub/lib/LzmaDec.h
include/grub/lib/LzmaEnc.h
include/grub/lib/LzmaTypes.h
+include/grub/lib/arg.h
include/grub/lib/crc.h
include/grub/lib/datetime.h
include/grub/lib/envblk.h
include/grub/x86_64/efi/time.h
io/bufio.c
io/gzio.c
+kern/command.c
+kern/corecmd.c
kern/device.c
kern/disk.c
kern/dl.c
lib/LzFind.c
lib/LzmaDec.c
lib/LzmaEnc.c
+lib/arg.c
lib/crc.c
lib/datetime.c
lib/envblk.c
lib/efi/datetime.c
lib/i386/datetime.c
loader/aout.c
-loader/linux_normal.c
loader/multiboot2.c
loader/multiboot_loader.c
-loader/multiboot_loader_normal.c
loader/efi/appleloader.c
loader/efi/chainloader.c
-loader/efi/chainloader_normal.c
loader/i386/bsd.c
-loader/i386/bsd_normal.c
loader/i386/linux.c
loader/i386/multiboot.c
loader/i386/multiboot_elfxx.c
loader/i386/efi/linux.c
-loader/i386/efi/loadbios.c
loader/i386/ieee1275/linux.c
loader/i386/pc/chainloader.c
-loader/i386/pc/chainloader_normal.c
loader/i386/pc/linux.c
loader/i386/pc/multiboot2.c
-loader/i386/pc/multiboot_normal.c
loader/ieee1275/multiboot2.c
loader/powerpc/ieee1275/linux.c
-loader/powerpc/ieee1275/linux_normal.c
-normal/arg.c
normal/cmdline.c
normal/color.c
normal/command.c
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/file.h>
#include <grub/mm.h>
#include <grub/disk.h>
#include <grub/partition.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_blocklist (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_blocklist (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)
{
grub_file_t file;
return grub_errno;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(blocklist)
{
(void) mod; /* To stop warning. */
- grub_register_command ("blocklist", grub_cmd_blocklist,
- GRUB_COMMAND_FLAG_BOTH,
- "blocklist FILE",
- "Print a block list.", 0);
+ cmd = grub_register_command ("blocklist", grub_cmd_blocklist,
+ "blocklist FILE", "Print a block list.");
}
GRUB_MOD_FINI(blocklist)
{
- grub_unregister_command ("blocklist");
+ grub_unregister_command (cmd);
}
#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/loader.h>
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/file.h>
#include <grub/disk.h>
#include <grub/term.h>
#include <grub/misc.h>
#include <grub/gzio.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_cat (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_cat (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)
{
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(cat)
{
(void) mod; /* To stop warning. */
- grub_register_command ("cat", grub_cmd_cat, GRUB_COMMAND_FLAG_BOTH,
- "cat FILE", "Show the contents of a file.", 0);
+ cmd = grub_register_command_p1 ("cat", grub_cmd_cat,
+ "cat FILE", "Show the contents of a file.");
}
GRUB_MOD_FINI(cat)
{
- grub_unregister_command ("cat");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/file.h>
#include <grub/mm.h>
#include <grub/gzio.h>
+#include <grub/command.h>
#define BUFFER_SIZE 512
static grub_err_t
-grub_cmd_cmp (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_cmp (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)
{
grub_ssize_t rd1, rd2;
return grub_errno;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(cmp)
{
(void) mod; /* To stop warning. */
- grub_register_command ("cmp", grub_cmd_cmp, GRUB_COMMAND_FLAG_BOTH,
- "cmp FILE1 FILE2", "Compare two files.", 0);
+ cmd = grub_register_command ("cmp", grub_cmd_cmp,
+ "cmp FILE1 FILE2", "Compare two files.");
}
GRUB_MOD_FINI(cmp)
{
- grub_unregister_command ("cmp");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/term.h>
-#include <grub/misc.h>
#include <grub/env.h>
+#include <grub/normal.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_configfile (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-
+grub_cmd_source (grub_command_t cmd, int argc, char **args)
{
+ int new_env;
+
if (argc != 1)
return grub_error (GRUB_ERR_BAD_ARGUMENT, "file name required");
- grub_cls ();
- grub_env_context_open ();
- grub_normal_execute (args[0], 1);
- grub_env_context_close ();
-
- return 0;
-}
-
-static grub_err_t
-grub_cmd_source (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
+ new_env = (cmd->name[0] == 'c');
-{
- if (argc != 1)
- return grub_error (GRUB_ERR_BAD_ARGUMENT, "file name required");
+ if (new_env)
+ {
+ grub_cls ();
+ grub_env_context_open ();
+ }
grub_normal_execute (args[0], 1);
+ if (new_env)
+ grub_env_context_close ();
+
return 0;
}
+static grub_command_t cmd_configfile, cmd_source, cmd_dot;
\f
GRUB_MOD_INIT(configfile)
{
(void) mod; /* To stop warning. */
- grub_register_command ("configfile", grub_cmd_configfile,
- GRUB_COMMAND_FLAG_BOTH, "configfile FILE",
- "Load another config file.", 0);
- grub_register_command ("source", grub_cmd_source,
- GRUB_COMMAND_FLAG_BOTH, "source FILE",
- "Load another config file without changing context.",
- 0);
- grub_register_command (".", grub_cmd_source,
- GRUB_COMMAND_FLAG_BOTH, ". FILE",
- "Load another config file without changing context.",
- 0);
+ cmd_configfile =
+ grub_register_command ("configfile", grub_cmd_source,
+ "configfile FILE", "Load another config file.");
+ cmd_source =
+ grub_register_command ("source", grub_cmd_source,
+ "source FILE",
+ "Load another config file without changing context."
+ );
+ cmd_dot =
+ grub_register_command (".", grub_cmd_source,
+ ". FILE",
+ "Load another config file without changing context."
+ );
}
GRUB_MOD_FINI(configfile)
{
- grub_unregister_command ("configfile");
- grub_unregister_command ("source");
- grub_unregister_command (".");
+ grub_unregister_command (cmd_configfile);
+ grub_unregister_command (cmd_source);
+ grub_unregister_command (cmd_dot);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/disk.h>
#include <grub/file.h>
#include <grub/misc.h>
#include <grub/lib/crc.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_crc (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_crc (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)
{
return 0;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(crc)
{
(void) mod; /* To stop warning. */
- grub_register_command ("crc", grub_cmd_crc, GRUB_COMMAND_FLAG_BOTH,
- "crc FILE", "Calculate the crc32 checksum of a file.", 0);
+ cmd = grub_register_command ("crc", grub_cmd_crc,
+ "crc FILE",
+ "Calculate the crc32 checksum of a file.");
}
GRUB_MOD_FINI(crc)
{
- grub_unregister_command ("crc");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/err.h>
#include <grub/misc.h>
#include <grub/lib/datetime.h>
+#include <grub/command.h>
#define GRUB_DATETIME_SET_YEAR 1
#define GRUB_DATETIME_SET_MONTH 2
#define GRUB_DATETIME_SET_SECOND 32
static grub_err_t
-grub_cmd_date (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_date (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)
{
struct grub_datetime datetime;
return grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid datetime");
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(date)
{
(void) mod; /* To stop warning. */
- grub_register_command ("date", grub_cmd_date,
- GRUB_COMMAND_FLAG_BOTH,
- "date [[year-]month-day] [hour:minute[:second]]",
- "Command to display/set current datetime.", 0);
+ cmd =
+ grub_register_command ("date", grub_cmd_date,
+ "date [[year-]month-day] [hour:minute[:second]]",
+ "Command to display/set current datetime.");
}
GRUB_MOD_FINI(date)
{
- grub_unregister_command ("date");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
{0, 0, 0, 0, 0, 0}
};
-
static grub_err_t
-grub_cmd_echo (struct grub_arg_list *state, int argc, char **args)
+grub_cmd_echo (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = cmd->state;
int newline = 1;
int i;
return 0;
}
+static grub_extcmd_t cmd;
\f
GRUB_MOD_INIT(echo)
{
(void) mod; /* To stop warning. */
- grub_register_command ("echo", grub_cmd_echo, GRUB_COMMAND_FLAG_BOTH,
- "echo [-e|-n] FILE", "Display a line of text.",
- options);
+ cmd = grub_register_extcmd ("echo", grub_cmd_echo, GRUB_COMMAND_FLAG_BOTH,
+ "echo [-e|-n] FILE", "Display a line of text.",
+ options);
}
GRUB_MOD_FINI(echo)
{
- grub_unregister_command ("echo");
+ grub_unregister_extcmd (cmd);
}
--- /dev/null
+/* extcmd.c - support extended command */
+/*
+ * 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/list.h>
+#include <grub/misc.h>
+#include <grub/extcmd.h>
+
+static grub_err_t
+grub_extcmd_dispatcher (struct grub_command *cmd,
+ int argc, char **args)
+{
+ int new_argc;
+ char **new_args;
+ struct grub_arg_option *parser;
+ struct grub_arg_list *state;
+ int maxargs = 0;
+ grub_err_t ret;
+ grub_extcmd_t ext;
+
+ ext = cmd->data;
+ parser = (struct grub_arg_option *) ext->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);
+
+ if (grub_arg_parse (ext, argc, args, state, &new_args, &new_argc))
+ {
+ ext->state = state;
+ ret = (ext->func) (ext, new_argc, new_args);
+ grub_free (new_args);
+ }
+ else
+ ret = grub_errno;
+
+ grub_free (state);
+
+ return ret;
+}
+
+grub_extcmd_t
+grub_register_extcmd (const char *name, grub_extcmd_func_t func,
+ unsigned flags, const char *summary,
+ const char *description,
+ const struct grub_arg_option *parser)
+{
+ grub_extcmd_t ext;
+ grub_command_t cmd;
+
+ ext = (grub_extcmd_t) grub_malloc (sizeof (*ext));
+ if (! ext)
+ return 0;
+
+ cmd = grub_register_command_prio (name, grub_extcmd_dispatcher,
+ summary, description, 1);
+ if (! cmd)
+ {
+ grub_free (ext);
+ return 0;
+ }
+
+ cmd->flags = (flags | GRUB_COMMAND_FLAG_EXTCMD);
+ cmd->data = ext;
+
+ ext->cmd = cmd;
+ ext->func = func;
+ ext->options = parser;
+ ext->data = 0;
+
+ return ext;
+}
+
+void
+grub_unregister_extcmd (grub_extcmd_t ext)
+{
+ grub_unregister_command (ext->cmd);
+ grub_free (ext);
+}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
#include <grub/machine/machine.h>
+#include <grub/command.h>
#if defined(GRUB_MACHINE_IEEE1275)
#include <grub/machine/kernel.h>
#endif
static grub_err_t
-grub_cmd_halt (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_halt (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(halt)
{
(void)mod; /* To stop warning. */
- grub_register_command ("halt", grub_cmd_halt, GRUB_COMMAND_FLAG_BOTH,
- "halt", "halts the computer. This command does not"
- " work on all firmware.", 0);
+ cmd = grub_register_command ("halt", grub_cmd_halt,
+ 0, "halts the computer. This command does not"
+ " work on all firmware.");
}
GRUB_MOD_FINI(halt)
{
- grub_unregister_command ("halt");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
#include <grub/err.h>
#include <grub/misc.h>
#include <grub/term.h>
#include <grub/handler.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_handler_generic (int argc, char **args, char *class_name)
+grub_cmd_handler (struct grub_command *cmd,
+ int argc, char **args)
{
- char *find_name;
- void *find_result;
+ char *class_name;
void *curr_item = 0;
grub_handler_class_t head;
return 0;
}
+ class_name = (grub_strcmp (cmd->name, "handler")) ? (char *) cmd->name : 0;
+
head = grub_handler_class_list;
if ((argc == 0) && (class_name == 0))
{
- grub_list_iterate (head, (grub_list_hook_t) list_item);
+ grub_list_iterate (GRUB_AS_LIST (head), (grub_list_hook_t) list_item);
}
else
{
if (argc == 0)
{
curr_item = class->cur_handler;
- grub_list_iterate (class->handler_list,
+ grub_list_iterate (GRUB_AS_LIST (class->handler_list),
(grub_list_hook_t) list_item);
}
else
return 0;
}
-static grub_err_t
-grub_cmd_handler (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- return grub_cmd_handler_generic (argc, args, 0);
-}
-
-static grub_err_t
-grub_cmd_terminal_input (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- return grub_cmd_handler_generic (argc, args, "terminal_input");
-}
-
-static grub_err_t
-grub_cmd_terminal_output (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- return grub_cmd_handler_generic (argc, args, "terminal_output");
-}
+static grub_command_t cmd_handler, cmd_terminal_input, cmd_terminal_output;
GRUB_MOD_INIT(handler)
{
(void)mod; /* To stop warning. */
- grub_register_command ("handler", grub_cmd_handler, GRUB_COMMAND_FLAG_BOTH,
- "handler [class [handler]]",
- "List or select a handler", 0);
- grub_register_command ("terminal_input", grub_cmd_terminal_input,
- GRUB_COMMAND_FLAG_BOTH,
- "terminal_input [handler]",
- "List or select a handler", 0);
- grub_register_command ("terminal_output", grub_cmd_terminal_output,
- GRUB_COMMAND_FLAG_BOTH,
- "terminal_output [handler]",
- "List or select a handler", 0);
+ cmd_handler =
+ grub_register_command ("handler", grub_cmd_handler,
+ "handler [class [handler]]",
+ "List or select a handler");
+ cmd_terminal_input =
+ grub_register_command ("terminal_input", grub_cmd_handler,
+ "terminal_input [handler]",
+ "List or select a handler");
+ cmd_terminal_output =
+ grub_register_command ("terminal_output", grub_cmd_handler,
+ "terminal_output [handler]",
+ "List or select a handler");
}
GRUB_MOD_FINI(handler)
{
- grub_unregister_command ("terminal_input");
- grub_unregister_command ("terminal_output");
- grub_unregister_command ("handler");
+ grub_unregister_command (cmd_handler);
+ grub_unregister_command (cmd_terminal_input);
+ grub_unregister_command (cmd_terminal_output);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/arg.h>
#include <grub/ata.h>
#include <grub/disk.h>
#include <grub/dl.h>
#include <grub/misc.h>
-#include <grub/normal.h>
#include <grub/mm.h>
#include <grub/lib/hexdump.h>
-
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] = {
{"apm", 'B', 0, "set Advanced Power Management\n"
return (state->set ? (int)grub_strtoul (state->arg, 0, 0) : -1);
}
-
static grub_err_t
-grub_cmd_hdparm (struct grub_arg_list *state, int argc, char **args) // state????
+grub_cmd_hdparm (grub_extcmd_t cmd, int argc, char **args) // state????
{
+ struct grub_arg_list *state = cmd->state;
+
/* Check command line. */
if (argc != 1)
return grub_error (GRUB_ERR_BAD_ARGUMENT, "missing device name argument");
return status;
}
+static grub_extcmd_t cmd;
GRUB_MOD_INIT(hdparm)
{
(void) mod;
- grub_register_command ("hdparm", grub_cmd_hdparm, GRUB_COMMAND_FLAG_BOTH,
- "hdparm [OPTIONS] DISK",
- "Get/set ATA disk parameters.", options);
+ cmd = grub_register_extcmd ("hdparm", grub_cmd_hdparm,
+ GRUB_COMMAND_FLAG_BOTH,
+ "hdparm [OPTIONS] DISK",
+ "Get/set ATA disk parameters.", options);
}
GRUB_MOD_FINI(hdparm)
{
- grub_unregister_command ("hdparm");
+ grub_unregister_extcmd (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/term.h>
+#include <grub/extcmd.h>
static grub_err_t
-grub_cmd_help (struct grub_arg_list *state __attribute__ ((unused)), int argc,
+grub_cmd_help (grub_extcmd_t ext __attribute__ ((unused)), int argc,
char **args)
-
{
int cnt = 0;
char *currarg;
int print_command_info (grub_command_t cmd)
{
- if (grub_command_find (cmd->name))
+ if ((cmd->prio & GRUB_PRIO_LIST_FLAG_ACTIVE) &&
+ (cmd->flags & GRUB_COMMAND_FLAG_CMDLINE))
{
- if (cmd->flags & GRUB_COMMAND_FLAG_CMDLINE)
- {
- char description[GRUB_TERM_WIDTH / 2];
- int desclen = grub_strlen (cmd->summary);
-
- /* Make a string with a length of GRUB_TERM_WIDTH / 2 - 1 filled
- with the description followed by spaces. */
- grub_memset (description, ' ', GRUB_TERM_WIDTH / 2 - 1);
- description[GRUB_TERM_WIDTH / 2 - 1] = '\0';
- grub_memcpy (description, cmd->summary,
- (desclen < GRUB_TERM_WIDTH / 2 - 1
- ? desclen : GRUB_TERM_WIDTH / 2 - 1));
-
- grub_printf ("%s%s", description, (cnt++) % 2 ? "\n" : " ");
- }
+ char description[GRUB_TERM_WIDTH / 2];
+ int desclen = grub_strlen (cmd->summary);
+
+ /* Make a string with a length of GRUB_TERM_WIDTH / 2 - 1 filled
+ with the description followed by spaces. */
+ grub_memset (description, ' ', GRUB_TERM_WIDTH / 2 - 1);
+ description[GRUB_TERM_WIDTH / 2 - 1] = '\0';
+ grub_memcpy (description, cmd->summary,
+ (desclen < GRUB_TERM_WIDTH / 2 - 1
+ ? desclen : GRUB_TERM_WIDTH / 2 - 1));
+
+ grub_printf ("%s%s", description, (cnt++) % 2 ? "\n" : " ");
}
return 0;
}
int print_command_help (grub_command_t cmd)
{
- if (grub_command_find (cmd->name))
+ if (cmd->flags & GRUB_PRIO_LIST_FLAG_ACTIVE)
{
if (! grub_strncmp (cmd->name, currarg, grub_strlen (currarg)))
{
if (cnt++ > 0)
grub_printf ("\n\n");
- grub_arg_show_help (cmd);
+ if (cmd->flags & GRUB_COMMAND_FLAG_EXTCMD)
+ grub_arg_show_help ((grub_extcmd_t) cmd->data);
+ else
+ grub_printf ("Usage: %s\n%s\b", cmd->summary,
+ cmd->description);
}
}
return 0;
}
if (argc == 0)
- grub_iterate_commands (print_command_info);
+ grub_command_iterate (print_command_info);
else
{
int i;
for (i = 0; i < argc; i++)
{
currarg = args[i];
- grub_iterate_commands (print_command_help);
+ grub_command_iterate (print_command_help);
}
}
return 0;
}
-
+static grub_extcmd_t cmd;
\f
GRUB_MOD_INIT(help)
{
(void)mod; /* To stop warning. */
- grub_register_command ("help", grub_cmd_help, GRUB_COMMAND_FLAG_CMDLINE,
- "help [PATTERN ...]", "Show a help message.", 0);
+ cmd = grub_register_extcmd ("help", grub_cmd_help,
+ GRUB_COMMAND_FLAG_CMDLINE,
+ "help [PATTERN ...]",
+ "Show a help message.", 0);
}
GRUB_MOD_FINI(help)
{
- grub_unregister_command ("help");
+ grub_unregister_extcmd (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/file.h>
#include <grub/disk.h>
#include <grub/misc.h>
#include <grub/gzio.h>
#include <grub/partition.h>
#include <grub/lib/hexdump.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] = {
{"skip", 's', 0, "skip offset bytes from the beginning of file.", 0,
};
static grub_err_t
-grub_cmd_hexdump (struct grub_arg_list *state, int argc, char **args)
+grub_cmd_hexdump (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = cmd->state;
char buf[GRUB_DISK_SECTOR_SIZE * 4];
grub_ssize_t size, length;
grub_addr_t skip;
return 0;
}
\f
+static grub_extcmd_t cmd;
GRUB_MOD_INIT (hexdump)
{
(void) mod; /* To stop warning. */
- grub_register_command ("hexdump", grub_cmd_hexdump, GRUB_COMMAND_FLAG_BOTH,
- "hexdump [OPTIONS] FILE_OR_DEVICE",
- "Dump the contents of a file or memory.", options);
+ cmd = grub_register_extcmd ("hexdump", grub_cmd_hexdump,
+ GRUB_COMMAND_FLAG_BOTH,
+ "hexdump [OPTIONS] FILE_OR_DEVICE",
+ "Dump the contents of a file or memory.",
+ options);
}
GRUB_MOD_FINI (hexdump)
{
- grub_unregister_command ("hexdump");
+ grub_unregister_extcmd (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/mm.h>
#include <grub/env.h>
+#include <grub/command.h>
#define cpuid(num,a,b,c,d) \
asm volatile ("xchgl %%ebx, %1; cpuid; xchgl %%ebx, %1" \
static unsigned char has_longmode = 0;
-static const struct grub_arg_option options[] =
- {
- {"long-mode", 'l', 0, "check for long mode flag (default)", 0, 0},
- {0, 0, 0, 0, 0, 0}
- };
-
static grub_err_t
-grub_cmd_cpuid (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_cpuid (struct grub_command *cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return !has_longmode;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(cpuid)
{
#ifdef __x86_64__
done:
#endif
- grub_register_command ("cpuid", grub_cmd_cpuid, GRUB_COMMAND_FLAG_CMDLINE,
- "cpuid", "Check for CPU features", options);
+ cmd = grub_register_command ("cpuid", grub_cmd_cpuid,
+ 0, "Check for CPU features");
}
GRUB_MOD_FINI(cpuid)
{
- grub_unregister_command ("cpuid");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/machine/init.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
};
static grub_err_t
-grub_cmd_halt (struct grub_arg_list *state,
+grub_cmd_halt (grub_extcmd_t cmd,
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
+ struct grub_arg_list *state = cmd->state;
int no_apm = 0;
if (state[0].set)
no_apm = 1;
return 0;
}
-
+static grub_extcmd_t cmd;
\f
GRUB_MOD_INIT(halt)
{
(void)mod; /* To stop warning. */
- grub_register_command ("halt", grub_cmd_halt, GRUB_COMMAND_FLAG_BOTH,
- "halt [-n]",
- "Halt the system, if possible using APM", options);
+ cmd = grub_register_extcmd ("halt", grub_cmd_halt, GRUB_COMMAND_FLAG_BOTH,
+ "halt [-n]",
+ "Halt the system, if possible using APM",
+ options);
}
GRUB_MOD_FINI(halt)
{
- grub_unregister_command ("halt");
+ grub_unregister_extcmd (cmd);
}
/* Lots of this file is borrowed from GNU/Hurd generic-speaker driver. */
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/file.h>
#include <grub/disk.h>
#include <grub/term.h>
#include <grub/misc.h>
#include <grub/machine/time.h>
#include <grub/cpu/io.h>
+#include <grub/command.h>
#define BASE_TEMPO 120
}
static grub_err_t
-grub_cmd_play (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_play (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)
{
grub_file_t file;
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(play)
{
(void)mod; /* To stop warning. */
- grub_register_command ("play", grub_cmd_play, GRUB_COMMAND_FLAG_BOTH,
- "play FILE", "Play a tune", 0);
+ cmd = grub_register_command ("play", grub_cmd_play,
+ "play FILE", "Play a tune");
}
GRUB_MOD_FINI(play)
{
- grub_unregister_command ("play");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/err.h>
#include <grub/misc.h>
#include <grub/machine/pxe.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
}
static grub_err_t
-grub_cmd_pxe (struct grub_arg_list *state, int argc __attribute__ ((unused)),
+grub_cmd_pxe (grub_extcmd_t cmd, int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
+ struct grub_arg_list *state = cmd->state;
+
if (! grub_pxe_pxenv)
return grub_error (GRUB_ERR_FILE_NOT_FOUND, "no pxe environment");
return 0;
}
+static grub_extcmd_t cmd;
+
GRUB_MOD_INIT(pxecmd)
{
(void) mod; /* To stop warning. */
- grub_register_command ("pxe", grub_cmd_pxe, GRUB_COMMAND_FLAG_BOTH,
- "pxe [-i|-b|-u]",
- "Command to control the PXE device.", options);
+ cmd = grub_register_extcmd ("pxe", grub_cmd_pxe, GRUB_COMMAND_FLAG_BOTH,
+ "pxe [-i|-b|-u]",
+ "Command to control the PXE device.", options);
}
GRUB_MOD_FINI(pxecmd)
{
- grub_unregister_command ("pxe");
+ grub_unregister_extcmd (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/env.h>
#include <grub/misc.h>
#include <grub/machine/init.h>
#include <grub/machine/vbe.h>
#include <grub/mm.h>
+#include <grub/command.h>
static void *
real2pm (grub_vbe_farptr_t ptr)
}
static grub_err_t
-grub_cmd_vbeinfo (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_vbeinfo (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return err;
grub_printf ("VBE info: version: %d.%d OEM software rev: %d.%d\n",
- controller_info.version >> 8,
+ controller_info.version >> 8,
controller_info.version & 0xFF,
controller_info.oem_software_rev >> 8,
controller_info.oem_software_rev & 0xFF);
grub_printf ("List of compatible video modes:\n");
grub_printf ("Legend: P=Packed pixel, D=Direct color, "
- "mask/pos=R/G/B/reserved\n");
+ "mask/pos=R/G/B/reserved\n");
/* Walk through all video modes listed. */
for (p = saved_video_mode_list; *p != 0xFFFF; p++)
return 0;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(vbeinfo)
{
(void) mod; /* To stop warning. */
- grub_register_command ("vbeinfo",
- grub_cmd_vbeinfo,
- GRUB_COMMAND_FLAG_BOTH,
- "vbeinfo",
- "List compatible VESA BIOS extension video modes.",
- 0);
+ cmd =
+ grub_register_command ("vbeinfo", grub_cmd_vbeinfo, 0,
+ "List compatible VESA BIOS extension video modes.");
}
GRUB_MOD_FINI(vbeinfo)
{
- grub_unregister_command ("vbeinfo");
+ grub_unregister_command (cmd);
}
#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/env.h>
#include <grub/misc.h>
#include <grub/term.h>
#include <grub/err.h>
static grub_err_t
-grub_cmd_vbetest (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_vbetest (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return grub_errno;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(vbetest)
{
(void) mod; /* To stop warning. */
- grub_register_command ("vbetest",
- grub_cmd_vbetest,
- GRUB_COMMAND_FLAG_BOTH,
- "vbetest",
- "Test VESA BIOS Extension 2.0+ support",
- 0);
+ cmd = grub_register_command ("vbetest", grub_cmd_vbetest,
+ 0, "Test VESA BIOS Extension 2.0+ support");
}
GRUB_MOD_FINI(vbetest)
{
- grub_unregister_command ("vbetest");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
#include <grub/misc.h>
#include <grub/term.h>
#include <grub/ieee1275/ieee1275.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_suspend (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_suspend (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(ieee1275_suspend)
{
(void)mod; /* To stop warning. */
- grub_register_command ("suspend", grub_cmd_suspend, GRUB_COMMAND_FLAG_BOTH,
- "suspend", "Return to Open Firmware prompt", 0);
+ cmd = grub_register_command ("suspend", grub_cmd_suspend,
+ 0, "Return to Open Firmware prompt");
}
GRUB_MOD_FINI(ieee1275_suspend)
{
- grub_unregister_command ("suspend");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
#include <grub/mm.h>
-#include <grub/arg.h>
#include <grub/file.h>
#include <grub/disk.h>
#include <grub/misc.h>
#include <grub/env.h>
#include <grub/partition.h>
#include <grub/lib/envblk.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
}
static grub_err_t
-grub_cmd_load_env (struct grub_arg_list *state,
- int argc __attribute__ ((unused)), char **args __attribute__ ((unused)))
+grub_cmd_load_env (grub_extcmd_t cmd,
+ int argc __attribute__ ((unused)),
+ char **args __attribute__ ((unused)))
{
+ struct grub_arg_list *state = cmd->state;
grub_file_t file;
auto int hook (char *name, char *value);
}
static grub_err_t
-grub_cmd_list_env (struct grub_arg_list *state,
- int argc __attribute__ ((unused)), char **args __attribute__ ((unused)))
+grub_cmd_list_env (grub_extcmd_t cmd,
+ int argc __attribute__ ((unused)),
+ char **args __attribute__ ((unused)))
{
+ struct grub_arg_list *state = cmd->state;
grub_file_t file;
auto int hook (char *name, char *value);
}
static grub_err_t
-grub_cmd_save_env (struct grub_arg_list *state, int argc, char **args)
+grub_cmd_save_env (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = cmd->state;
grub_file_t file;
grub_disk_t disk;
grub_disk_addr_t addr[GRUB_ENVBLK_MAXLEN >> GRUB_DISK_SECTOR_BITS];
return grub_errno;
}
+static grub_extcmd_t cmd_load, cmd_list, cmd_save;
+
GRUB_MOD_INIT(loadenv)
{
(void) mod;
- grub_register_command ("load_env", grub_cmd_load_env, GRUB_COMMAND_FLAG_BOTH,
- "load_env [-f FILE]", "Load variables from environment block file.", options);
- grub_register_command ("list_env", grub_cmd_list_env, GRUB_COMMAND_FLAG_BOTH,
- "list_env [-f FILE]", "List variables from environment block file.", options);
- grub_register_command ("save_env", grub_cmd_save_env, GRUB_COMMAND_FLAG_BOTH,
- "save_env [-f FILE] variable_name [...]", "Save variables to environment block file.", options);
+
+ cmd_load =
+ grub_register_extcmd ("load_env", grub_cmd_load_env,
+ GRUB_COMMAND_FLAG_BOTH,
+ "load_env [-f FILE]",
+ "Load variables from environment block file.",
+ options);
+ cmd_list =
+ grub_register_extcmd ("list_env", grub_cmd_list_env,
+ GRUB_COMMAND_FLAG_BOTH,
+ "list_env [-f FILE]",
+ "List variables from environment block file.",
+ options);
+ cmd_save =
+ grub_register_extcmd ("save_env", grub_cmd_save_env,
+ GRUB_COMMAND_FLAG_BOTH,
+ "save_env [-f FILE] variable_name [...]",
+ "Save variables to environment block file.",
+ options);
}
GRUB_MOD_FINI(loadenv)
{
- grub_unregister_command ("load_env");
- grub_unregister_command ("list_env");
- grub_unregister_command ("save_env");
+ grub_unregister_extcmd (cmd_load);
+ grub_unregister_extcmd (cmd_list);
+ grub_unregister_extcmd (cmd_save);
}
#include <grub/mm.h>
#include <grub/err.h>
#include <grub/dl.h>
-#include <grub/normal.h>
-#include <grub/arg.h>
#include <grub/disk.h>
#include <grub/device.h>
#include <grub/term.h>
#include <grub/partition.h>
#include <grub/file.h>
+#include <grub/normal.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
}
grub_file_close (file);
- }
+ }
else
grub_printf ("%-12s", "DIR");
}
static grub_err_t
-grub_cmd_ls (struct grub_arg_list *state, int argc, char **args)
+grub_cmd_ls (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = cmd->state;
+
if (argc == 0)
grub_ls_list_devices (state[0].set);
else
return 0;
}
+static grub_extcmd_t cmd;
+
GRUB_MOD_INIT(ls)
{
(void)mod; /* To stop warning. */
- grub_register_command ("ls", grub_cmd_ls, GRUB_COMMAND_FLAG_BOTH,
- "ls [-l|-h|-a] [FILE]",
- "List devices and files.", options);
+ cmd = grub_register_extcmd ("ls", grub_cmd_ls, GRUB_COMMAND_FLAG_BOTH,
+ "ls [-l|-h|-a] [FILE]",
+ "List devices and files.", options);
}
GRUB_MOD_FINI(ls)
{
- grub_unregister_command ("ls");
+ grub_unregister_extcmd (cmd);
}
*/
#include <grub/machine/memory.h>
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_lsmmap (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_lsmmap (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)), char **args __attribute__ ((unused)))
{
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(lsmmap)
{
(void) mod; /* To stop warning. */
- grub_register_command ("lsmmap", grub_cmd_lsmmap, GRUB_COMMAND_FLAG_BOTH,
- "lsmmap", "List memory map provided by firmware.", 0);
+ cmd = grub_register_command ("lsmmap", grub_cmd_lsmmap,
+ 0, "List memory map provided by firmware.");
}
GRUB_MOD_FINI(lsmmap)
{
- grub_unregister_command ("lsmmap");
+ grub_unregister_command (cmd);
}
#include <grub/pci.h>
#include <grub/dl.h>
-#include <grub/normal.h>
#include <grub/misc.h>
+#include <grub/command.h>
struct grub_pci_classname
{
}
static grub_err_t
-grub_cmd_lspci (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_lspci (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return GRUB_ERR_NONE;
}
-
-\f
+static grub_command_t cmd;
GRUB_MOD_INIT(pci)
{
(void) mod; /* To stop warning. */
- grub_register_command ("lspci", grub_cmd_lspci, GRUB_COMMAND_FLAG_BOTH,
- "lspci", "List PCI devices", 0);
+ cmd = grub_register_command ("lspci", grub_cmd_lspci,
+ 0, "List PCI devices");
}
-
GRUB_MOD_FINI(pci)
{
- grub_unregister_command ("lspci");
+ grub_unregister_command (cmd);
}
--- /dev/null
+/* minicmd.c - commands for the rescue mode */
+/*
+ * GRUB -- GRand Unified Bootloader
+ * Copyright (C) 2003,2005,2006,2007 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/dl.h>
+#include <grub/mm.h>
+#include <grub/err.h>
+#include <grub/env.h>
+#include <grub/misc.h>
+#include <grub/file.h>
+#include <grub/disk.h>
+#include <grub/term.h>
+#include <grub/loader.h>
+#include <grub/command.h>
+
+/* boot */
+static grub_err_t
+grub_mini_cmd_boot (struct grub_command *cmd __attribute__ ((unused)),
+ int argc __attribute__ ((unused)),
+ char *argv[] __attribute__ ((unused)))
+{
+ return grub_loader_boot ();
+}
+
+/* cat FILE */
+static grub_err_t
+grub_mini_cmd_cat (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ grub_file_t file;
+ char buf[GRUB_DISK_SECTOR_SIZE];
+ grub_ssize_t size;
+
+ if (argc < 1)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
+
+ file = grub_file_open (argv[0]);
+ if (! file)
+ return grub_errno;
+
+ while ((size = grub_file_read (file, buf, sizeof (buf))) > 0)
+ {
+ int i;
+
+ for (i = 0; i < size; i++)
+ {
+ unsigned char c = buf[i];
+
+ if ((grub_isprint (c) || grub_isspace (c)) && c != '\r')
+ grub_putchar (c);
+ else
+ {
+ grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT);
+ grub_printf ("<%x>", (int) c);
+ grub_setcolorstate (GRUB_TERM_COLOR_STANDARD);
+ }
+ }
+ }
+
+ grub_putchar ('\n');
+ grub_refresh ();
+ grub_file_close (file);
+
+ return 0;
+}
+
+/* help */
+static grub_err_t
+grub_mini_cmd_help (struct grub_command *cmd __attribute__ ((unused)),
+ int argc __attribute__ ((unused)),
+ char *argv[] __attribute__ ((unused)))
+{
+ grub_command_t p;
+
+ for (p = grub_command_list; p; p = p->next)
+ grub_printf ("%s (%d%c)\t%s\n", p->name,
+ p->prio & GRUB_PRIO_LIST_PRIO_MASK,
+ (p->prio & GRUB_PRIO_LIST_FLAG_ACTIVE) ? '+' : '-',
+ p->description);
+
+ return 0;
+}
+
+#if 0
+static void
+grub_rescue_cmd_info (void)
+{
+ extern void grub_disk_cache_get_performance (unsigned long *,
+ unsigned long *);
+ unsigned long hits, misses;
+
+ grub_disk_cache_get_performance (&hits, &misses);
+ grub_printf ("Disk cache: hits = %u, misses = %u ", hits, misses);
+ if (hits + misses)
+ {
+ unsigned long ratio = hits * 10000 / (hits + misses);
+ grub_printf ("(%u.%u%%)\n", ratio / 100, ratio % 100);
+ }
+ else
+ grub_printf ("(N/A)\n");
+}
+#endif
+
+/* root [DEVICE] */
+static grub_err_t
+grub_mini_cmd_root (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ grub_device_t dev;
+ grub_fs_t fs;
+
+ if (argc > 0)
+ {
+ char *device_name = grub_file_get_device_name (argv[0]);
+ if (! device_name)
+ return grub_errno;
+
+ grub_env_set ("root", device_name);
+ grub_free (device_name);
+ }
+
+ dev = grub_device_open (0);
+ if (! dev)
+ return grub_errno;
+
+ fs = grub_fs_probe (dev);
+ if (grub_errno == GRUB_ERR_UNKNOWN_FS)
+ grub_errno = GRUB_ERR_NONE;
+
+ grub_printf ("(%s): Filesystem is %s.\n",
+ grub_env_get ("root"), fs ? fs->name : "unknown");
+
+ grub_device_close (dev);
+
+ return 0;
+}
+
+#if 0
+static void
+grub_rescue_cmd_testload (int argc, char *argv[])
+{
+ grub_file_t file;
+ char *buf;
+ grub_ssize_t size;
+ grub_ssize_t pos;
+ auto void read_func (unsigned long sector, unsigned offset, unsigned len);
+
+ void read_func (unsigned long sector __attribute__ ((unused)),
+ unsigned offset __attribute__ ((unused)),
+ unsigned len __attribute__ ((unused)))
+ {
+ grub_putchar ('.');
+ grub_refresh ();
+ }
+
+ if (argc < 1)
+ {
+ grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
+ return;
+ }
+
+ file = grub_file_open (argv[0]);
+ if (! file)
+ return;
+
+ size = grub_file_size (file) & ~(GRUB_DISK_SECTOR_SIZE - 1);
+ if (size == 0)
+ {
+ grub_file_close (file);
+ return;
+ }
+
+ buf = grub_malloc (size);
+ if (! buf)
+ goto fail;
+
+ grub_printf ("Reading %s sequentially", argv[0]);
+ file->read_hook = read_func;
+ if (grub_file_read (file, buf, size) != size)
+ goto fail;
+ grub_printf (" Done.\n");
+
+ /* Read sequentially again. */
+ grub_printf ("Reading %s sequentially again", argv[0]);
+ if (grub_file_seek (file, 0) < 0)
+ goto fail;
+
+ for (pos = 0; pos < size; pos += GRUB_DISK_SECTOR_SIZE)
+ {
+ char sector[GRUB_DISK_SECTOR_SIZE];
+
+ if (grub_file_read (file, sector, GRUB_DISK_SECTOR_SIZE)
+ != GRUB_DISK_SECTOR_SIZE)
+ goto fail;
+
+ if (grub_memcmp (sector, buf + pos, GRUB_DISK_SECTOR_SIZE) != 0)
+ {
+ grub_printf ("\nDiffers in %d\n", pos);
+ goto fail;
+ }
+ }
+ grub_printf (" Done.\n");
+
+ /* Read backwards and compare. */
+ grub_printf ("Reading %s backwards", argv[0]);
+ pos = size;
+ while (pos > 0)
+ {
+ char sector[GRUB_DISK_SECTOR_SIZE];
+
+ pos -= GRUB_DISK_SECTOR_SIZE;
+
+ if (grub_file_seek (file, pos) < 0)
+ goto fail;
+
+ if (grub_file_read (file, sector, GRUB_DISK_SECTOR_SIZE)
+ != GRUB_DISK_SECTOR_SIZE)
+ goto fail;
+
+ if (grub_memcmp (sector, buf + pos, GRUB_DISK_SECTOR_SIZE) != 0)
+ {
+ int i;
+
+ grub_printf ("\nDiffers in %d\n", pos);
+
+ for (i = 0; i < GRUB_DISK_SECTOR_SIZE; i++)
+ grub_putchar (buf[pos + i]);
+
+ if (i)
+ grub_refresh ();
+
+ goto fail;
+ }
+ }
+ grub_printf (" Done.\n");
+
+ fail:
+
+ grub_file_close (file);
+ grub_free (buf);
+}
+#endif
+
+/* dump ADDRESS [SIZE] */
+static grub_err_t
+grub_mini_cmd_dump (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ grub_uint8_t *addr;
+ grub_size_t size = 4;
+
+ if (argc == 0)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no address specified");
+
+ addr = (grub_uint8_t *) grub_strtoul (argv[0], 0, 0);
+ if (grub_errno)
+ return grub_errno;
+
+ if (argc > 1)
+ size = (grub_size_t) grub_strtoul (argv[1], 0, 0);
+
+ while (size--)
+ {
+ grub_printf ("%x%x ", *addr >> 4, *addr & 0xf);
+ addr++;
+ }
+
+ return 0;
+}
+
+/* rmmod MODULE */
+static grub_err_t
+grub_mini_cmd_rmmod (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ grub_dl_t mod;
+
+ if (argc == 0)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified");
+
+ mod = grub_dl_get (argv[0]);
+ if (! mod)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no such module");
+
+ if (grub_dl_unref (mod) <= 0)
+ grub_dl_unload (mod);
+
+ return 0;
+}
+
+/* lsmod */
+static grub_err_t
+grub_mini_cmd_lsmod (struct grub_command *cmd __attribute__ ((unused)),
+ int argc __attribute__ ((unused)),
+ char *argv[] __attribute__ ((unused)))
+{
+ auto int print_module (grub_dl_t mod);
+
+ int print_module (grub_dl_t mod)
+ {
+ grub_dl_dep_t dep;
+
+ grub_printf ("%s\t%d\t\t", mod->name, mod->ref_count);
+ for (dep = mod->dep; dep; dep = dep->next)
+ {
+ if (dep != mod->dep)
+ grub_putchar (',');
+
+ grub_printf ("%s", dep->mod->name);
+ }
+ grub_putchar ('\n');
+ grub_refresh ();
+
+ return 0;
+ }
+
+ grub_printf ("Name\tRef Count\tDependencies\n");
+ grub_dl_iterate (print_module);
+
+ return 0;
+}
+
+/* exit */
+static grub_err_t
+grub_mini_cmd_exit (struct grub_command *cmd __attribute__ ((unused)),
+ int argc __attribute__ ((unused)),
+ char *argv[] __attribute__ ((unused)))
+{
+ grub_exit ();
+ return 0;
+}
+
+static grub_command_t cmd_boot, cmd_cat, cmd_help, cmd_root;
+static grub_command_t cmd_dump, cmd_rmmod, cmd_lsmod, cmd_exit;
+
+GRUB_MOD_INIT(minicmd)
+{
+ (void) mod; /* To stop warning. */
+
+ cmd_boot =
+ grub_register_command ("boot", grub_mini_cmd_boot,
+ 0, "boot an operating system");
+ cmd_cat =
+ grub_register_command ("cat", grub_mini_cmd_cat,
+ "cat FILE", "show the contents of a file");
+ cmd_help =
+ grub_register_command ("help", grub_mini_cmd_help,
+ 0, "show this message");
+ cmd_root =
+ grub_register_command ("root", grub_mini_cmd_root,
+ "root [DEVICE]", "set the root device");
+ cmd_dump =
+ grub_register_command ("dump", grub_mini_cmd_dump,
+ "dump ADDR", "dump memory");
+ cmd_rmmod =
+ grub_register_command ("rmmod", grub_mini_cmd_rmmod,
+ "rmmod MODULE", "remove a module");
+ cmd_lsmod =
+ grub_register_command ("lsmod", grub_mini_cmd_lsmod,
+ 0, "show loaded modules");
+ cmd_exit =
+ grub_register_command ("exit", grub_mini_cmd_exit,
+ 0, "exit from GRUB");
+}
+
+GRUB_MOD_FINI(minicmd)
+{
+ grub_unregister_command (cmd_boot);
+ grub_unregister_command (cmd_cat);
+ grub_unregister_command (cmd_help);
+ grub_unregister_command (cmd_root);
+ grub_unregister_command (cmd_dump);
+ grub_unregister_command (cmd_rmmod);
+ grub_unregister_command (cmd_lsmod);
+ grub_unregister_command (cmd_exit);
+}
#include <grub/dl.h>
#include <grub/misc.h>
#include <grub/mm.h>
-#include <grub/normal.h>
+#include <grub/env.h>
#include <grub/term.h>
#include <grub/types.h>
+#include <grub/command.h>
static char *
grub_getline (void)
}
static grub_err_t
-grub_cmd_read (struct grub_arg_list *state UNUSED, int argc, char **args)
+grub_cmd_read (grub_command_t cmd UNUSED, int argc, char **args)
{
char *line = grub_getline ();
if (! line)
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(read)
{
- grub_register_command ("read", grub_cmd_read, GRUB_COMMAND_FLAG_CMDLINE,
- "read [ENVVAR]", "Set variable with user input", 0);
+ cmd = grub_register_command ("read", grub_cmd_read,
+ "read [ENVVAR]",
+ "Set variable with user input");
}
GRUB_MOD_FINI(read)
{
- grub_unregister_command ("read");
+ grub_unregister_command (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
#include <grub/machine/machine.h>
+#include <grub/command.h>
#if defined(GRUB_MACHINE_IEEE1275)
#include <grub/machine/kernel.h>
static grub_err_t
-grub_cmd_reboot (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_reboot (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return 0;
}
+static grub_command_t cmd;
\f
GRUB_MOD_INIT(reboot)
{
(void)mod; /* To stop warning. */
- grub_register_command ("reboot", grub_cmd_reboot, GRUB_COMMAND_FLAG_BOTH,
- "reboot", "Reboot the computer", 0);
+ cmd = grub_register_command ("reboot", grub_cmd_reboot,
+ 0, "Reboot the computer");
}
GRUB_MOD_FINI(reboot)
{
- grub_unregister_command ("reboot");
+ grub_unregister_command (cmd);
}
#include <grub/mm.h>
#include <grub/err.h>
#include <grub/dl.h>
-#include <grub/normal.h>
-#include <grub/arg.h>
#include <grub/device.h>
#include <grub/file.h>
#include <grub/env.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
count++;
if (var)
{
- grub_env_set (var, name);
- abort = 1;
+ grub_env_set (var, name);
+ abort = 1;
}
else
grub_printf (" %s", name);
}
static grub_err_t
-grub_cmd_search (struct grub_arg_list *state, int argc, char **args)
+grub_cmd_search (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = cmd->state;
const char *var = 0;
if (argc == 0)
return grub_errno;
}
+static grub_extcmd_t cmd;
+
GRUB_MOD_INIT(search)
{
(void) mod; /* To stop warning. */
- grub_register_command ("search", grub_cmd_search, GRUB_COMMAND_FLAG_BOTH,
- "search [-f|-l|-u|-s] NAME",
- "Search devices by file, filesystem label or filesystem UUID."
- " If --set is specified, the first device found is"
- " set to a variable. If no variable name is"
- " specified, \"root\" is used.",
- options);
+ cmd =
+ grub_register_extcmd ("search", grub_cmd_search,
+ GRUB_COMMAND_FLAG_BOTH,
+ "search [-f|-l|-u|-s] NAME",
+ "Search devices by file, filesystem label or filesystem UUID."
+ " If --set is specified, the first device found is"
+ " set to a variable. If no variable name is"
+ " specified, \"root\" is used.",
+ options);
}
GRUB_MOD_FINI(search)
{
- grub_unregister_command ("search");
+ grub_unregister_extcmd (cmd);
}
#include <grub/time.h>
#include <grub/types.h>
#include <grub/misc.h>
-#include <grub/normal.h>
#include <grub/machine/time.h>
+#include <grub/extcmd.h>
static const struct grub_arg_option options[] =
{
}
static grub_err_t
-grub_cmd_sleep (struct grub_arg_list *state, int argc, char **args)
+grub_cmd_sleep (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = cmd->state;
grub_uint16_t xy;
int n;
return 0;
}
+static grub_extcmd_t cmd;
\f
GRUB_MOD_INIT(sleep)
{
- grub_register_command ("sleep", grub_cmd_sleep, GRUB_COMMAND_FLAG_BOTH,
- "sleep NUMBER_OF_SECONDS", "Wait for a specified number of seconds", options);
+ cmd = grub_register_extcmd ("sleep", grub_cmd_sleep, GRUB_COMMAND_FLAG_BOTH,
+ "sleep NUMBER_OF_SECONDS",
+ "Wait for a specified number of seconds",
+ options);
}
GRUB_MOD_FINI(sleep)
{
- grub_unregister_command ("sleep");
+ grub_unregister_extcmd (cmd);
}
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/mm.h>
#include <grub/env.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_test (struct grub_arg_list *state __attribute__ ((unused)), int argc,
- char **args)
-
+grub_cmd_test (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char **args)
{
char *eq;
char *eqis;
return grub_errno;
}
-
+static grub_command_t cmd_1, cmd_2;
\f
GRUB_MOD_INIT(test)
{
(void)mod; /* To stop warning. */
- grub_register_command ("[", grub_cmd_test, GRUB_COMMAND_FLAG_CMDLINE,
- "[ EXPRESSION ]", "Evaluate an expression", 0);
- grub_register_command ("test", grub_cmd_test, GRUB_COMMAND_FLAG_CMDLINE,
- "test EXPRESSION", "Evaluate an expression", 0);
+ cmd_1 = grub_register_command ("[", grub_cmd_test,
+ "[ EXPRESSION ]", "Evaluate an expression");
+ cmd_2 = grub_register_command ("test", grub_cmd_test,
+ "test EXPRESSION", "Evaluate an expression");
}
GRUB_MOD_FINI(test)
{
- grub_unregister_command ("[");
- grub_unregister_command ("test");
+ grub_unregister_command (cmd_1);
+ grub_unregister_command (cmd_2);
}
#include <grub/mm.h>
#include <grub/err.h>
#include <grub/dl.h>
-#include <grub/normal.h>
#include <grub/usb.h>
+#include <grub/command.h>
static const char *usb_classes[] =
{
}
static grub_err_t
-grub_cmd_usbtest (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_usbtest (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return 0;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(usbtest)
{
(void)mod; /* To stop warning. */
- grub_register_command ("usb", grub_cmd_usbtest, GRUB_COMMAND_FLAG_BOTH,
- "usb", "Test USB support", 0);
+ cmd = grub_register_command ("usb", grub_cmd_usbtest,
+ 0, "Test USB support");
}
GRUB_MOD_FINI(usbtest)
{
- grub_unregister_command ("usb");
+ grub_unregister_command (cmd);
}
#include <grub/types.h>
#include <grub/dl.h>
#include <grub/misc.h>
-#include <grub/normal.h>
-#include <grub/arg.h>
#include <grub/mm.h>
#include <grub/font.h>
#include <grub/term.h>
+#include <grub/command.h>
static grub_err_t
-grub_cmd_videotest (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_videotest (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return grub_errno;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(videotest)
{
- grub_register_command ("videotest",
- grub_cmd_videotest,
- GRUB_COMMAND_FLAG_BOTH,
- "videotest",
- "Test video subsystem",
- 0);
+ cmd = grub_register_command ("videotest", grub_cmd_videotest,
+ 0, "Test video subsystem");
}
GRUB_MOD_FINI(videotest)
{
- grub_unregister_command ("videotest");
+ grub_unregister_command (cmd);
}
util/grub-fstest.c_DEPENDENCIES = grub_fstest_init.h
grub_fstest_SOURCES = util/grub-fstest.c util/hostfs.c util/misc.c \
kern/file.c kern/device.c kern/disk.c kern/err.c kern/misc.c \
- disk/host.c disk/loopback.c normal/arg.c normal/misc.c \
+ disk/host.c disk/loopback.c kern/list.c kern/command.c \
+ lib/arg.c commands/extcmd.c normal/misc.c \
lib/hexdump.c lib/crc.c commands/blocklist.c commands/ls.c \
\
fs/affs.c fs/cpio.c fs/fat.c fs/ext2.c fs/hfs.c \
disk/raid5_recover.c disk/raid6_recover.c \
disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c \
grub_fstest_init.c
-CLEANFILES += grub-fstest$(EXEEXT) grub_fstest-util_grub_fstest.o grub_fstest-util_hostfs.o grub_fstest-util_misc.o grub_fstest-kern_file.o grub_fstest-kern_device.o grub_fstest-kern_disk.o grub_fstest-kern_err.o grub_fstest-kern_misc.o grub_fstest-disk_host.o grub_fstest-disk_loopback.o grub_fstest-normal_arg.o grub_fstest-normal_misc.o grub_fstest-lib_hexdump.o grub_fstest-lib_crc.o grub_fstest-commands_blocklist.o grub_fstest-commands_ls.o grub_fstest-fs_affs.o grub_fstest-fs_cpio.o grub_fstest-fs_fat.o grub_fstest-fs_ext2.o grub_fstest-fs_hfs.o grub_fstest-fs_hfsplus.o grub_fstest-fs_iso9660.o grub_fstest-fs_udf.o grub_fstest-fs_jfs.o grub_fstest-fs_minix.o grub_fstest-fs_ntfs.o grub_fstest-fs_ntfscomp.o grub_fstest-fs_reiserfs.o grub_fstest-fs_sfs.o grub_fstest-fs_ufs.o grub_fstest-fs_xfs.o grub_fstest-fs_afs.o grub_fstest-fs_tar.o grub_fstest-kern_partition.o grub_fstest-partmap_pc.o grub_fstest-partmap_apple.o grub_fstest-partmap_gpt.o grub_fstest-kern_fs.o grub_fstest-kern_env.o grub_fstest-fs_fshelp.o grub_fstest-disk_raid.o grub_fstest-disk_raid5_recover.o grub_fstest-disk_raid6_recover.o grub_fstest-disk_mdraid_linux.o grub_fstest-disk_dmraid_nvidia.o grub_fstest-disk_lvm.o grub_fstest-grub_fstest_init.o
-MOSTLYCLEANFILES += grub_fstest-util_grub_fstest.d grub_fstest-util_hostfs.d grub_fstest-util_misc.d grub_fstest-kern_file.d grub_fstest-kern_device.d grub_fstest-kern_disk.d grub_fstest-kern_err.d grub_fstest-kern_misc.d grub_fstest-disk_host.d grub_fstest-disk_loopback.d grub_fstest-normal_arg.d grub_fstest-normal_misc.d grub_fstest-lib_hexdump.d grub_fstest-lib_crc.d grub_fstest-commands_blocklist.d grub_fstest-commands_ls.d grub_fstest-fs_affs.d grub_fstest-fs_cpio.d grub_fstest-fs_fat.d grub_fstest-fs_ext2.d grub_fstest-fs_hfs.d grub_fstest-fs_hfsplus.d grub_fstest-fs_iso9660.d grub_fstest-fs_udf.d grub_fstest-fs_jfs.d grub_fstest-fs_minix.d grub_fstest-fs_ntfs.d grub_fstest-fs_ntfscomp.d grub_fstest-fs_reiserfs.d grub_fstest-fs_sfs.d grub_fstest-fs_ufs.d grub_fstest-fs_xfs.d grub_fstest-fs_afs.d grub_fstest-fs_tar.d grub_fstest-kern_partition.d grub_fstest-partmap_pc.d grub_fstest-partmap_apple.d grub_fstest-partmap_gpt.d grub_fstest-kern_fs.d grub_fstest-kern_env.d grub_fstest-fs_fshelp.d grub_fstest-disk_raid.d grub_fstest-disk_raid5_recover.d grub_fstest-disk_raid6_recover.d grub_fstest-disk_mdraid_linux.d grub_fstest-disk_dmraid_nvidia.d grub_fstest-disk_lvm.d grub_fstest-grub_fstest_init.d
+CLEANFILES += grub-fstest$(EXEEXT) grub_fstest-util_grub_fstest.o grub_fstest-util_hostfs.o grub_fstest-util_misc.o grub_fstest-kern_file.o grub_fstest-kern_device.o grub_fstest-kern_disk.o grub_fstest-kern_err.o grub_fstest-kern_misc.o grub_fstest-disk_host.o grub_fstest-disk_loopback.o grub_fstest-kern_list.o grub_fstest-kern_command.o grub_fstest-lib_arg.o grub_fstest-commands_extcmd.o grub_fstest-normal_misc.o grub_fstest-lib_hexdump.o grub_fstest-lib_crc.o grub_fstest-commands_blocklist.o grub_fstest-commands_ls.o grub_fstest-fs_affs.o grub_fstest-fs_cpio.o grub_fstest-fs_fat.o grub_fstest-fs_ext2.o grub_fstest-fs_hfs.o grub_fstest-fs_hfsplus.o grub_fstest-fs_iso9660.o grub_fstest-fs_udf.o grub_fstest-fs_jfs.o grub_fstest-fs_minix.o grub_fstest-fs_ntfs.o grub_fstest-fs_ntfscomp.o grub_fstest-fs_reiserfs.o grub_fstest-fs_sfs.o grub_fstest-fs_ufs.o grub_fstest-fs_xfs.o grub_fstest-fs_afs.o grub_fstest-fs_tar.o grub_fstest-kern_partition.o grub_fstest-partmap_pc.o grub_fstest-partmap_apple.o grub_fstest-partmap_gpt.o grub_fstest-kern_fs.o grub_fstest-kern_env.o grub_fstest-fs_fshelp.o grub_fstest-disk_raid.o grub_fstest-disk_raid5_recover.o grub_fstest-disk_raid6_recover.o grub_fstest-disk_mdraid_linux.o grub_fstest-disk_dmraid_nvidia.o grub_fstest-disk_lvm.o grub_fstest-grub_fstest_init.o
+MOSTLYCLEANFILES += grub_fstest-util_grub_fstest.d grub_fstest-util_hostfs.d grub_fstest-util_misc.d grub_fstest-kern_file.d grub_fstest-kern_device.d grub_fstest-kern_disk.d grub_fstest-kern_err.d grub_fstest-kern_misc.d grub_fstest-disk_host.d grub_fstest-disk_loopback.d grub_fstest-kern_list.d grub_fstest-kern_command.d grub_fstest-lib_arg.d grub_fstest-commands_extcmd.d grub_fstest-normal_misc.d grub_fstest-lib_hexdump.d grub_fstest-lib_crc.d grub_fstest-commands_blocklist.d grub_fstest-commands_ls.d grub_fstest-fs_affs.d grub_fstest-fs_cpio.d grub_fstest-fs_fat.d grub_fstest-fs_ext2.d grub_fstest-fs_hfs.d grub_fstest-fs_hfsplus.d grub_fstest-fs_iso9660.d grub_fstest-fs_udf.d grub_fstest-fs_jfs.d grub_fstest-fs_minix.d grub_fstest-fs_ntfs.d grub_fstest-fs_ntfscomp.d grub_fstest-fs_reiserfs.d grub_fstest-fs_sfs.d grub_fstest-fs_ufs.d grub_fstest-fs_xfs.d grub_fstest-fs_afs.d grub_fstest-fs_tar.d grub_fstest-kern_partition.d grub_fstest-partmap_pc.d grub_fstest-partmap_apple.d grub_fstest-partmap_gpt.d grub_fstest-kern_fs.d grub_fstest-kern_env.d grub_fstest-fs_fshelp.d grub_fstest-disk_raid.d grub_fstest-disk_raid5_recover.d grub_fstest-disk_raid6_recover.d grub_fstest-disk_mdraid_linux.d grub_fstest-disk_dmraid_nvidia.d grub_fstest-disk_lvm.d grub_fstest-grub_fstest_init.d
-grub-fstest: $(grub_fstest_DEPENDENCIES) grub_fstest-util_grub_fstest.o grub_fstest-util_hostfs.o grub_fstest-util_misc.o grub_fstest-kern_file.o grub_fstest-kern_device.o grub_fstest-kern_disk.o grub_fstest-kern_err.o grub_fstest-kern_misc.o grub_fstest-disk_host.o grub_fstest-disk_loopback.o grub_fstest-normal_arg.o grub_fstest-normal_misc.o grub_fstest-lib_hexdump.o grub_fstest-lib_crc.o grub_fstest-commands_blocklist.o grub_fstest-commands_ls.o grub_fstest-fs_affs.o grub_fstest-fs_cpio.o grub_fstest-fs_fat.o grub_fstest-fs_ext2.o grub_fstest-fs_hfs.o grub_fstest-fs_hfsplus.o grub_fstest-fs_iso9660.o grub_fstest-fs_udf.o grub_fstest-fs_jfs.o grub_fstest-fs_minix.o grub_fstest-fs_ntfs.o grub_fstest-fs_ntfscomp.o grub_fstest-fs_reiserfs.o grub_fstest-fs_sfs.o grub_fstest-fs_ufs.o grub_fstest-fs_xfs.o grub_fstest-fs_afs.o grub_fstest-fs_tar.o grub_fstest-kern_partition.o grub_fstest-partmap_pc.o grub_fstest-partmap_apple.o grub_fstest-partmap_gpt.o grub_fstest-kern_fs.o grub_fstest-kern_env.o grub_fstest-fs_fshelp.o grub_fstest-disk_raid.o grub_fstest-disk_raid5_recover.o grub_fstest-disk_raid6_recover.o grub_fstest-disk_mdraid_linux.o grub_fstest-disk_dmraid_nvidia.o grub_fstest-disk_lvm.o grub_fstest-grub_fstest_init.o
- $(CC) -o $@ grub_fstest-util_grub_fstest.o grub_fstest-util_hostfs.o grub_fstest-util_misc.o grub_fstest-kern_file.o grub_fstest-kern_device.o grub_fstest-kern_disk.o grub_fstest-kern_err.o grub_fstest-kern_misc.o grub_fstest-disk_host.o grub_fstest-disk_loopback.o grub_fstest-normal_arg.o grub_fstest-normal_misc.o grub_fstest-lib_hexdump.o grub_fstest-lib_crc.o grub_fstest-commands_blocklist.o grub_fstest-commands_ls.o grub_fstest-fs_affs.o grub_fstest-fs_cpio.o grub_fstest-fs_fat.o grub_fstest-fs_ext2.o grub_fstest-fs_hfs.o grub_fstest-fs_hfsplus.o grub_fstest-fs_iso9660.o grub_fstest-fs_udf.o grub_fstest-fs_jfs.o grub_fstest-fs_minix.o grub_fstest-fs_ntfs.o grub_fstest-fs_ntfscomp.o grub_fstest-fs_reiserfs.o grub_fstest-fs_sfs.o grub_fstest-fs_ufs.o grub_fstest-fs_xfs.o grub_fstest-fs_afs.o grub_fstest-fs_tar.o grub_fstest-kern_partition.o grub_fstest-partmap_pc.o grub_fstest-partmap_apple.o grub_fstest-partmap_gpt.o grub_fstest-kern_fs.o grub_fstest-kern_env.o grub_fstest-fs_fshelp.o grub_fstest-disk_raid.o grub_fstest-disk_raid5_recover.o grub_fstest-disk_raid6_recover.o grub_fstest-disk_mdraid_linux.o grub_fstest-disk_dmraid_nvidia.o grub_fstest-disk_lvm.o grub_fstest-grub_fstest_init.o $(LDFLAGS) $(grub_fstest_LDFLAGS)
+grub-fstest: $(grub_fstest_DEPENDENCIES) grub_fstest-util_grub_fstest.o grub_fstest-util_hostfs.o grub_fstest-util_misc.o grub_fstest-kern_file.o grub_fstest-kern_device.o grub_fstest-kern_disk.o grub_fstest-kern_err.o grub_fstest-kern_misc.o grub_fstest-disk_host.o grub_fstest-disk_loopback.o grub_fstest-kern_list.o grub_fstest-kern_command.o grub_fstest-lib_arg.o grub_fstest-commands_extcmd.o grub_fstest-normal_misc.o grub_fstest-lib_hexdump.o grub_fstest-lib_crc.o grub_fstest-commands_blocklist.o grub_fstest-commands_ls.o grub_fstest-fs_affs.o grub_fstest-fs_cpio.o grub_fstest-fs_fat.o grub_fstest-fs_ext2.o grub_fstest-fs_hfs.o grub_fstest-fs_hfsplus.o grub_fstest-fs_iso9660.o grub_fstest-fs_udf.o grub_fstest-fs_jfs.o grub_fstest-fs_minix.o grub_fstest-fs_ntfs.o grub_fstest-fs_ntfscomp.o grub_fstest-fs_reiserfs.o grub_fstest-fs_sfs.o grub_fstest-fs_ufs.o grub_fstest-fs_xfs.o grub_fstest-fs_afs.o grub_fstest-fs_tar.o grub_fstest-kern_partition.o grub_fstest-partmap_pc.o grub_fstest-partmap_apple.o grub_fstest-partmap_gpt.o grub_fstest-kern_fs.o grub_fstest-kern_env.o grub_fstest-fs_fshelp.o grub_fstest-disk_raid.o grub_fstest-disk_raid5_recover.o grub_fstest-disk_raid6_recover.o grub_fstest-disk_mdraid_linux.o grub_fstest-disk_dmraid_nvidia.o grub_fstest-disk_lvm.o grub_fstest-grub_fstest_init.o
+ $(CC) -o $@ grub_fstest-util_grub_fstest.o grub_fstest-util_hostfs.o grub_fstest-util_misc.o grub_fstest-kern_file.o grub_fstest-kern_device.o grub_fstest-kern_disk.o grub_fstest-kern_err.o grub_fstest-kern_misc.o grub_fstest-disk_host.o grub_fstest-disk_loopback.o grub_fstest-kern_list.o grub_fstest-kern_command.o grub_fstest-lib_arg.o grub_fstest-commands_extcmd.o grub_fstest-normal_misc.o grub_fstest-lib_hexdump.o grub_fstest-lib_crc.o grub_fstest-commands_blocklist.o grub_fstest-commands_ls.o grub_fstest-fs_affs.o grub_fstest-fs_cpio.o grub_fstest-fs_fat.o grub_fstest-fs_ext2.o grub_fstest-fs_hfs.o grub_fstest-fs_hfsplus.o grub_fstest-fs_iso9660.o grub_fstest-fs_udf.o grub_fstest-fs_jfs.o grub_fstest-fs_minix.o grub_fstest-fs_ntfs.o grub_fstest-fs_ntfscomp.o grub_fstest-fs_reiserfs.o grub_fstest-fs_sfs.o grub_fstest-fs_ufs.o grub_fstest-fs_xfs.o grub_fstest-fs_afs.o grub_fstest-fs_tar.o grub_fstest-kern_partition.o grub_fstest-partmap_pc.o grub_fstest-partmap_apple.o grub_fstest-partmap_gpt.o grub_fstest-kern_fs.o grub_fstest-kern_env.o grub_fstest-fs_fshelp.o grub_fstest-disk_raid.o grub_fstest-disk_raid5_recover.o grub_fstest-disk_raid6_recover.o grub_fstest-disk_mdraid_linux.o grub_fstest-disk_dmraid_nvidia.o grub_fstest-disk_lvm.o grub_fstest-grub_fstest_init.o $(LDFLAGS) $(grub_fstest_LDFLAGS)
grub_fstest-util_grub_fstest.o: util/grub-fstest.c $(util/grub-fstest.c_DEPENDENCIES)
$(CC) -Iutil -I$(srcdir)/util $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
$(CC) -Idisk -I$(srcdir)/disk $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
-include grub_fstest-disk_loopback.d
-grub_fstest-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
--include grub_fstest-normal_arg.d
+grub_fstest-kern_list.o: kern/list.c $(kern/list.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
+-include grub_fstest-kern_list.d
+
+grub_fstest-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
+-include grub_fstest-kern_command.d
+
+grub_fstest-lib_arg.o: lib/arg.c $(lib/arg.c_DEPENDENCIES)
+ $(CC) -Ilib -I$(srcdir)/lib $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
+-include grub_fstest-lib_arg.d
+
+grub_fstest-commands_extcmd.o: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES)
+ $(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
+-include grub_fstest-commands_extcmd.d
grub_fstest-normal_misc.o: normal/misc.c $(normal/misc.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_fstest_CFLAGS) -MD -c -o $@ $<
scsi_mod_LDFLAGS = $(COMMON_LDFLAGS)
# Commands.
-pkglib_MODULES += hello.mod boot.mod handler.mod ls.mod \
- cmp.mod cat.mod help.mod search.mod \
+pkglib_MODULES += minicmd.mod extcmd.mod hello.mod handler.mod \
+ ls.mod cmp.mod cat.mod help.mod search.mod \
loopback.mod fs_uuid.mod configfile.mod echo.mod \
terminfo.mod test.mod blocklist.mod hexdump.mod \
read.mod sleep.mod loadenv.mod crc.mod
+# For minicmd.mod.
+minicmd_mod_SOURCES = commands/minicmd.c
+CLEANFILES += minicmd.mod mod-minicmd.o mod-minicmd.c pre-minicmd.o minicmd_mod-commands_minicmd.o und-minicmd.lst
+ifneq ($(minicmd_mod_EXPORTS),no)
+CLEANFILES += def-minicmd.lst
+DEFSYMFILES += def-minicmd.lst
+endif
+MOSTLYCLEANFILES += minicmd_mod-commands_minicmd.d
+UNDSYMFILES += und-minicmd.lst
+
+minicmd.mod: pre-minicmd.o mod-minicmd.o $(TARGET_OBJ2ELF)
+ -rm -f $@
+ $(TARGET_CC) $(minicmd_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-minicmd.o mod-minicmd.o
+ 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-minicmd.o: $(minicmd_mod_DEPENDENCIES) minicmd_mod-commands_minicmd.o
+ -rm -f $@
+ $(TARGET_CC) $(minicmd_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ minicmd_mod-commands_minicmd.o
+
+mod-minicmd.o: mod-minicmd.c
+ $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(minicmd_mod_CFLAGS) -c -o $@ $<
+
+mod-minicmd.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
+ sh $(srcdir)/genmodsrc.sh 'minicmd' $< > $@ || (rm -f $@; exit 1)
+
+ifneq ($(minicmd_mod_EXPORTS),no)
+def-minicmd.lst: pre-minicmd.o
+ $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 minicmd/' > $@
+endif
+
+und-minicmd.lst: pre-minicmd.o
+ echo 'minicmd' > $@
+ $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
+
+minicmd_mod-commands_minicmd.o: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(minicmd_mod_CFLAGS) -MD -c -o $@ $<
+-include minicmd_mod-commands_minicmd.d
+
+CLEANFILES += cmd-minicmd_mod-commands_minicmd.lst fs-minicmd_mod-commands_minicmd.lst partmap-minicmd_mod-commands_minicmd.lst
+COMMANDFILES += cmd-minicmd_mod-commands_minicmd.lst
+FSFILES += fs-minicmd_mod-commands_minicmd.lst
+PARTMAPFILES += partmap-minicmd_mod-commands_minicmd.lst
+
+cmd-minicmd_mod-commands_minicmd.lst: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(minicmd_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh minicmd > $@ || (rm -f $@; exit 1)
+
+fs-minicmd_mod-commands_minicmd.lst: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(minicmd_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh minicmd > $@ || (rm -f $@; exit 1)
+
+partmap-minicmd_mod-commands_minicmd.lst: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(minicmd_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh minicmd > $@ || (rm -f $@; exit 1)
+
+
+minicmd_mod_CFLAGS = $(COMMON_CFLAGS)
+minicmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
+
+# For extcmd.mod.
+extcmd_mod_SOURCES = commands/extcmd.c lib/arg.c
+CLEANFILES += extcmd.mod mod-extcmd.o mod-extcmd.c pre-extcmd.o extcmd_mod-commands_extcmd.o extcmd_mod-lib_arg.o und-extcmd.lst
+ifneq ($(extcmd_mod_EXPORTS),no)
+CLEANFILES += def-extcmd.lst
+DEFSYMFILES += def-extcmd.lst
+endif
+MOSTLYCLEANFILES += extcmd_mod-commands_extcmd.d extcmd_mod-lib_arg.d
+UNDSYMFILES += und-extcmd.lst
+
+extcmd.mod: pre-extcmd.o mod-extcmd.o $(TARGET_OBJ2ELF)
+ -rm -f $@
+ $(TARGET_CC) $(extcmd_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-extcmd.o mod-extcmd.o
+ 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-extcmd.o: $(extcmd_mod_DEPENDENCIES) extcmd_mod-commands_extcmd.o extcmd_mod-lib_arg.o
+ -rm -f $@
+ $(TARGET_CC) $(extcmd_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ extcmd_mod-commands_extcmd.o extcmd_mod-lib_arg.o
+
+mod-extcmd.o: mod-extcmd.c
+ $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -c -o $@ $<
+
+mod-extcmd.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
+ sh $(srcdir)/genmodsrc.sh 'extcmd' $< > $@ || (rm -f $@; exit 1)
+
+ifneq ($(extcmd_mod_EXPORTS),no)
+def-extcmd.lst: pre-extcmd.o
+ $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 extcmd/' > $@
+endif
+
+und-extcmd.lst: pre-extcmd.o
+ echo 'extcmd' > $@
+ $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
+
+extcmd_mod-commands_extcmd.o: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -MD -c -o $@ $<
+-include extcmd_mod-commands_extcmd.d
+
+CLEANFILES += cmd-extcmd_mod-commands_extcmd.lst fs-extcmd_mod-commands_extcmd.lst partmap-extcmd_mod-commands_extcmd.lst
+COMMANDFILES += cmd-extcmd_mod-commands_extcmd.lst
+FSFILES += fs-extcmd_mod-commands_extcmd.lst
+PARTMAPFILES += partmap-extcmd_mod-commands_extcmd.lst
+
+cmd-extcmd_mod-commands_extcmd.lst: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh extcmd > $@ || (rm -f $@; exit 1)
+
+fs-extcmd_mod-commands_extcmd.lst: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh extcmd > $@ || (rm -f $@; exit 1)
+
+partmap-extcmd_mod-commands_extcmd.lst: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh extcmd > $@ || (rm -f $@; exit 1)
+
+
+extcmd_mod-lib_arg.o: lib/arg.c $(lib/arg.c_DEPENDENCIES)
+ $(TARGET_CC) -Ilib -I$(srcdir)/lib $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -MD -c -o $@ $<
+-include extcmd_mod-lib_arg.d
+
+CLEANFILES += cmd-extcmd_mod-lib_arg.lst fs-extcmd_mod-lib_arg.lst partmap-extcmd_mod-lib_arg.lst
+COMMANDFILES += cmd-extcmd_mod-lib_arg.lst
+FSFILES += fs-extcmd_mod-lib_arg.lst
+PARTMAPFILES += partmap-extcmd_mod-lib_arg.lst
+
+cmd-extcmd_mod-lib_arg.lst: lib/arg.c $(lib/arg.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Ilib -I$(srcdir)/lib $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh extcmd > $@ || (rm -f $@; exit 1)
+
+fs-extcmd_mod-lib_arg.lst: lib/arg.c $(lib/arg.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Ilib -I$(srcdir)/lib $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh extcmd > $@ || (rm -f $@; exit 1)
+
+partmap-extcmd_mod-lib_arg.lst: lib/arg.c $(lib/arg.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Ilib -I$(srcdir)/lib $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(extcmd_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh extcmd > $@ || (rm -f $@; exit 1)
+
+
+extcmd_mod_CFLAGS = $(COMMON_CFLAGS)
+extcmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
+
# For hello.mod.
hello_mod_SOURCES = hello/hello.c
CLEANFILES += hello.mod mod-hello.o mod-hello.c pre-hello.o hello_mod-hello_hello.o und-hello.lst
hello_mod_CFLAGS = $(COMMON_CFLAGS)
hello_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For boot.mod.
-boot_mod_SOURCES = commands/boot.c
-CLEANFILES += boot.mod mod-boot.o mod-boot.c pre-boot.o boot_mod-commands_boot.o und-boot.lst
-ifneq ($(boot_mod_EXPORTS),no)
-CLEANFILES += def-boot.lst
-DEFSYMFILES += def-boot.lst
-endif
-MOSTLYCLEANFILES += boot_mod-commands_boot.d
-UNDSYMFILES += und-boot.lst
-
-boot.mod: pre-boot.o mod-boot.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(boot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-boot.o mod-boot.o
- 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-boot.o: $(boot_mod_DEPENDENCIES) boot_mod-commands_boot.o
- -rm -f $@
- $(TARGET_CC) $(boot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ boot_mod-commands_boot.o
-
-mod-boot.o: mod-boot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(boot_mod_CFLAGS) -c -o $@ $<
-
-mod-boot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh 'boot' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(boot_mod_EXPORTS),no)
-def-boot.lst: pre-boot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 boot/' > $@
-endif
-
-und-boot.lst: pre-boot.o
- echo 'boot' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-boot_mod-commands_boot.o: commands/boot.c $(commands/boot.c_DEPENDENCIES)
- $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(boot_mod_CFLAGS) -MD -c -o $@ $<
--include boot_mod-commands_boot.d
-
-CLEANFILES += cmd-boot_mod-commands_boot.lst fs-boot_mod-commands_boot.lst partmap-boot_mod-commands_boot.lst
-COMMANDFILES += cmd-boot_mod-commands_boot.lst
-FSFILES += fs-boot_mod-commands_boot.lst
-PARTMAPFILES += partmap-boot_mod-commands_boot.lst
-
-cmd-boot_mod-commands_boot.lst: commands/boot.c $(commands/boot.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(boot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh boot > $@ || (rm -f $@; exit 1)
-
-fs-boot_mod-commands_boot.lst: commands/boot.c $(commands/boot.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(boot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh boot > $@ || (rm -f $@; exit 1)
-
-partmap-boot_mod-commands_boot.lst: commands/boot.c $(commands/boot.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Icommands -I$(srcdir)/commands $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(boot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh boot > $@ || (rm -f $@; exit 1)
-
-
-boot_mod_CFLAGS = $(COMMON_CFLAGS)
-boot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For handler.mod.
handler_mod_SOURCES = commands/handler.c
CLEANFILES += handler.mod mod-handler.o mod-handler.c pre-handler.o handler_mod-commands_handler.o und-handler.lst
util/grub-fstest.c_DEPENDENCIES = grub_fstest_init.h
grub_fstest_SOURCES = util/grub-fstest.c util/hostfs.c util/misc.c \
kern/file.c kern/device.c kern/disk.c kern/err.c kern/misc.c \
- disk/host.c disk/loopback.c normal/arg.c normal/misc.c \
+ disk/host.c disk/loopback.c kern/list.c kern/command.c \
+ lib/arg.c commands/extcmd.c normal/misc.c \
lib/hexdump.c lib/crc.c commands/blocklist.c commands/ls.c \
\
fs/affs.c fs/cpio.c fs/fat.c fs/ext2.c fs/hfs.c \
scsi_mod_LDFLAGS = $(COMMON_LDFLAGS)
# Commands.
-pkglib_MODULES += hello.mod boot.mod handler.mod ls.mod \
- cmp.mod cat.mod help.mod search.mod \
+pkglib_MODULES += minicmd.mod extcmd.mod hello.mod handler.mod \
+ ls.mod cmp.mod cat.mod help.mod search.mod \
loopback.mod fs_uuid.mod configfile.mod echo.mod \
terminfo.mod test.mod blocklist.mod hexdump.mod \
read.mod sleep.mod loadenv.mod crc.mod
+# For minicmd.mod.
+minicmd_mod_SOURCES = commands/minicmd.c
+minicmd_mod_CFLAGS = $(COMMON_CFLAGS)
+minicmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
+
+# For extcmd.mod.
+extcmd_mod_SOURCES = commands/extcmd.c lib/arg.c
+extcmd_mod_CFLAGS = $(COMMON_CFLAGS)
+extcmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
+
# For hello.mod.
hello_mod_SOURCES = hello/hello.c
hello_mod_CFLAGS = $(COMMON_CFLAGS)
hello_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For boot.mod.
-boot_mod_SOURCES = commands/boot.c
-boot_mod_CFLAGS = $(COMMON_CFLAGS)
-boot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For handler.mod.
handler_mod_SOURCES = commands/handler.c
handler_mod_CFLAGS = $(COMMON_CFLAGS)
kern/main.c kern/device.c \
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/dl.c kern/parser.c kern/partition.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/generic/rtc_get_time_ms.c \
term/i386/pc/vga_text.c term/i386/vga_common.c \
term/i386/pc/at_keyboard.c \
symlist.c
-CLEANFILES += kernel.elf kernel_elf-kern_i386_coreboot_startup.o kernel_elf-kern_i386_coreboot_init.o kernel_elf-kern_i386_multiboot_mmap.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_i386_tsc.o kernel_elf-kern_i386_pit.o kernel_elf-kern_generic_rtc_get_time_ms.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_env.o kernel_elf-term_i386_pc_vga_text.o kernel_elf-term_i386_vga_common.o kernel_elf-term_i386_pc_at_keyboard.o kernel_elf-symlist.o
-MOSTLYCLEANFILES += kernel_elf-kern_i386_coreboot_startup.d kernel_elf-kern_i386_coreboot_init.d kernel_elf-kern_i386_multiboot_mmap.d kernel_elf-kern_main.d kernel_elf-kern_device.d kernel_elf-kern_disk.d kernel_elf-kern_dl.d kernel_elf-kern_file.d kernel_elf-kern_fs.d kernel_elf-kern_err.d kernel_elf-kern_misc.d kernel_elf-kern_mm.d kernel_elf-kern_loader.d kernel_elf-kern_rescue.d kernel_elf-kern_term.d kernel_elf-kern_time.d kernel_elf-kern_list.d kernel_elf-kern_handler.d kernel_elf-kern_i386_dl.d kernel_elf-kern_parser.d kernel_elf-kern_partition.d kernel_elf-kern_i386_tsc.d kernel_elf-kern_i386_pit.d kernel_elf-kern_generic_rtc_get_time_ms.d kernel_elf-kern_generic_millisleep.d kernel_elf-kern_env.d kernel_elf-term_i386_pc_vga_text.d kernel_elf-term_i386_vga_common.d kernel_elf-term_i386_pc_at_keyboard.d kernel_elf-symlist.d
+CLEANFILES += kernel.elf kernel_elf-kern_i386_coreboot_startup.o kernel_elf-kern_i386_coreboot_init.o kernel_elf-kern_i386_multiboot_mmap.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_i386_tsc.o kernel_elf-kern_i386_pit.o kernel_elf-kern_generic_rtc_get_time_ms.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_env.o kernel_elf-term_i386_pc_vga_text.o kernel_elf-term_i386_vga_common.o kernel_elf-term_i386_pc_at_keyboard.o kernel_elf-symlist.o
+MOSTLYCLEANFILES += kernel_elf-kern_i386_coreboot_startup.d kernel_elf-kern_i386_coreboot_init.d kernel_elf-kern_i386_multiboot_mmap.d kernel_elf-kern_main.d kernel_elf-kern_device.d kernel_elf-kern_disk.d kernel_elf-kern_dl.d kernel_elf-kern_file.d kernel_elf-kern_fs.d kernel_elf-kern_err.d kernel_elf-kern_misc.d kernel_elf-kern_mm.d kernel_elf-kern_loader.d kernel_elf-kern_rescue.d kernel_elf-kern_term.d kernel_elf-kern_time.d kernel_elf-kern_list.d kernel_elf-kern_handler.d kernel_elf-kern_command.d kernel_elf-kern_corecmd.d kernel_elf-kern_i386_dl.d kernel_elf-kern_parser.d kernel_elf-kern_partition.d kernel_elf-kern_i386_tsc.d kernel_elf-kern_i386_pit.d kernel_elf-kern_generic_rtc_get_time_ms.d kernel_elf-kern_generic_millisleep.d kernel_elf-kern_env.d kernel_elf-term_i386_pc_vga_text.d kernel_elf-term_i386_vga_common.d kernel_elf-term_i386_pc_at_keyboard.d kernel_elf-symlist.d
-kernel.elf: $(kernel_elf_DEPENDENCIES) kernel_elf-kern_i386_coreboot_startup.o kernel_elf-kern_i386_coreboot_init.o kernel_elf-kern_i386_multiboot_mmap.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_i386_tsc.o kernel_elf-kern_i386_pit.o kernel_elf-kern_generic_rtc_get_time_ms.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_env.o kernel_elf-term_i386_pc_vga_text.o kernel_elf-term_i386_vga_common.o kernel_elf-term_i386_pc_at_keyboard.o kernel_elf-symlist.o
- $(TARGET_CC) -o $@ kernel_elf-kern_i386_coreboot_startup.o kernel_elf-kern_i386_coreboot_init.o kernel_elf-kern_i386_multiboot_mmap.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_i386_tsc.o kernel_elf-kern_i386_pit.o kernel_elf-kern_generic_rtc_get_time_ms.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_env.o kernel_elf-term_i386_pc_vga_text.o kernel_elf-term_i386_vga_common.o kernel_elf-term_i386_pc_at_keyboard.o kernel_elf-symlist.o $(TARGET_LDFLAGS) $(kernel_elf_LDFLAGS)
+kernel.elf: $(kernel_elf_DEPENDENCIES) kernel_elf-kern_i386_coreboot_startup.o kernel_elf-kern_i386_coreboot_init.o kernel_elf-kern_i386_multiboot_mmap.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_i386_tsc.o kernel_elf-kern_i386_pit.o kernel_elf-kern_generic_rtc_get_time_ms.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_env.o kernel_elf-term_i386_pc_vga_text.o kernel_elf-term_i386_vga_common.o kernel_elf-term_i386_pc_at_keyboard.o kernel_elf-symlist.o
+ $(TARGET_CC) -o $@ kernel_elf-kern_i386_coreboot_startup.o kernel_elf-kern_i386_coreboot_init.o kernel_elf-kern_i386_multiboot_mmap.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_i386_tsc.o kernel_elf-kern_i386_pit.o kernel_elf-kern_generic_rtc_get_time_ms.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_env.o kernel_elf-term_i386_pc_vga_text.o kernel_elf-term_i386_vga_common.o kernel_elf-term_i386_pc_at_keyboard.o kernel_elf-symlist.o $(TARGET_LDFLAGS) $(kernel_elf_LDFLAGS)
kernel_elf-kern_i386_coreboot_startup.o: kern/i386/coreboot/startup.S $(kern/i386/coreboot/startup.S_DEPENDENCIES)
$(TARGET_CC) -Ikern/i386/coreboot -I$(srcdir)/kern/i386/coreboot $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
$(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_handler.d
+kernel_elf-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
+-include kernel_elf-kern_command.d
+
+kernel_elf-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
+-include kernel_elf-kern_corecmd.d
+
kernel_elf-kern_i386_dl.o: kern/i386/dl.c $(kern/i386/dl.c_DEPENDENCIES)
$(TARGET_CC) -Ikern/i386 -I$(srcdir)/kern/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_i386_dl.d
$(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-symlist.d
-kernel_elf_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_elf_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
machine/boot.h machine/console.h machine/init.h \
- machine/memory.h machine/loader.h list.h handler.h
+ machine/memory.h machine/loader.h list.h handler.h command.h
kernel_elf_CFLAGS = $(COMMON_CFLAGS)
kernel_elf_ASFLAGS = $(COMMON_ASFLAGS)
kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x8200,-Bstatic
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/echo.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/blocklist.c commands/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c\
normal/completion.c normal/main.c normal/menu_text.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/misc.c normal/script.c \
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c \
grub_emu_init.c
-CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
-MOSTLYCLEANFILES += grub_emu-commands_boot.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_echo.d grub_emu-commands_help.d grub_emu-commands_handler.d grub_emu-commands_ls.d grub_emu-commands_test.d grub_emu-commands_search.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_i386_cpuid.d grub_emu-disk_host.d grub_emu-disk_loopback.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-fs_fshelp.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-normal_execute.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-normal_lexer.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-grub_script_tab.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-normal_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_function.d grub_emu-normal_completion.d grub_emu-normal_main.d grub_emu-normal_menu_text.d grub_emu-normal_menu.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-normal_color.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-partmap_gpt.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_i386_pc_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_emu_init.d
+CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
+MOSTLYCLEANFILES += grub_emu-commands_minicmd.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_echo.d grub_emu-commands_help.d grub_emu-commands_handler.d grub_emu-commands_ls.d grub_emu-commands_test.d grub_emu-commands_search.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_i386_cpuid.d grub_emu-disk_host.d grub_emu-disk_loopback.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-fs_fshelp.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-kern_command.d grub_emu-kern_corecmd.d grub_emu-commands_extcmd.d grub_emu-normal_execute.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-normal_lexer.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-grub_script_tab.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-lib_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_function.d grub_emu-normal_completion.d grub_emu-normal_main.d grub_emu-normal_menu_text.d grub_emu-normal_menu.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-normal_color.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-partmap_gpt.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_i386_pc_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_emu_init.d
-grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
- $(CC) -o $@ grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
+grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
+ $(CC) -o $@ grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
-grub_emu-commands_boot.o: commands/boot.c $(commands/boot.c_DEPENDENCIES)
+grub_emu-commands_minicmd.o: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-commands_boot.d
+-include grub_emu-commands_minicmd.d
grub_emu-commands_cat.o: commands/cat.c $(commands/cat.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
$(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-kern_handler.d
+grub_emu-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_command.d
+
+grub_emu-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_corecmd.d
+
+grub_emu-commands_extcmd.o: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES)
+ $(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-commands_extcmd.d
+
grub_emu-normal_execute.o: normal/execute.c $(normal/execute.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-normal_execute.d
$(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-kern_term.d
-grub_emu-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-normal_arg.d
+grub_emu-lib_arg.o: lib/arg.c $(lib/arg.c_DEPENDENCIES)
+ $(CC) -Ilib -I$(srcdir)/lib $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-lib_arg.d
grub_emu-normal_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
# Modules.
-pkglib_MODULES = _linux.mod linux.mod normal.mod \
- _multiboot.mod multiboot.mod aout.mod \
- play.mod serial.mod ata.mod \
+pkglib_MODULES = linux.mod normal.mod multiboot.mod \
+ aout.mod play.mod serial.mod ata.mod \
memdisk.mod pci.mod lspci.mod reboot.mod \
halt.mod datetime.mod date.mod datehook.mod \
lsmmap.mod
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/linux.c
-CLEANFILES += _linux.mod mod-_linux.o mod-_linux.c pre-_linux.o _linux_mod-loader_i386_linux.o und-_linux.lst
-ifneq ($(_linux_mod_EXPORTS),no)
-CLEANFILES += def-_linux.lst
-DEFSYMFILES += def-_linux.lst
-endif
-MOSTLYCLEANFILES += _linux_mod-loader_i386_linux.d
-UNDSYMFILES += und-_linux.lst
-
-_linux.mod: pre-_linux.o mod-_linux.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_linux.o mod-_linux.o
- 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-_linux.o: $(_linux_mod_DEPENDENCIES) _linux_mod-loader_i386_linux.o
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _linux_mod-loader_i386_linux.o
-
-mod-_linux.o: mod-_linux.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -c -o $@ $<
-
-mod-_linux.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_linux' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_linux_mod_EXPORTS),no)
-def-_linux.lst: pre-_linux.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _linux/' > $@
-endif
-
-und-_linux.lst: pre-_linux.o
- echo '_linux' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_linux_mod-loader_i386_linux.o: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -MD -c -o $@ $<
--include _linux_mod-loader_i386_linux.d
-
-CLEANFILES += cmd-_linux_mod-loader_i386_linux.lst fs-_linux_mod-loader_i386_linux.lst partmap-_linux_mod-loader_i386_linux.lst
-COMMANDFILES += cmd-_linux_mod-loader_i386_linux.lst
-FSFILES += fs-_linux_mod-loader_i386_linux.lst
-PARTMAPFILES += partmap-_linux_mod-loader_i386_linux.lst
-
-cmd-_linux_mod-loader_i386_linux.lst: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _linux > $@ || (rm -f $@; exit 1)
-
-fs-_linux_mod-loader_i386_linux.lst: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _linux > $@ || (rm -f $@; exit 1)
-
-partmap-_linux_mod-loader_i386_linux.lst: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _linux > $@ || (rm -f $@; exit 1)
-
-
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
-CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_linux_normal.o und-linux.lst
+linux_mod_SOURCES = loader/i386/linux.c
+CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_i386_linux.o und-linux.lst
ifneq ($(linux_mod_EXPORTS),no)
CLEANFILES += def-linux.lst
DEFSYMFILES += def-linux.lst
endif
-MOSTLYCLEANFILES += linux_mod-loader_linux_normal.d
+MOSTLYCLEANFILES += linux_mod-loader_i386_linux.d
UNDSYMFILES += und-linux.lst
linux.mod: pre-linux.o mod-linux.o $(TARGET_OBJ2ELF)
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-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_linux_normal.o
+pre-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_i386_linux.o
-rm -f $@
- $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_linux_normal.o
+ $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_i386_linux.o
mod-linux.o: mod-linux.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $<
echo 'linux' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-linux_mod-loader_linux_normal.o: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
--include linux_mod-loader_linux_normal.d
+linux_mod-loader_i386_linux.o: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
+-include linux_mod-loader_i386_linux.d
-CLEANFILES += cmd-linux_mod-loader_linux_normal.lst fs-linux_mod-loader_linux_normal.lst partmap-linux_mod-loader_linux_normal.lst
-COMMANDFILES += cmd-linux_mod-loader_linux_normal.lst
-FSFILES += fs-linux_mod-loader_linux_normal.lst
-PARTMAPFILES += partmap-linux_mod-loader_linux_normal.lst
+CLEANFILES += cmd-linux_mod-loader_i386_linux.lst fs-linux_mod-loader_i386_linux.lst partmap-linux_mod-loader_i386_linux.lst
+COMMANDFILES += cmd-linux_mod-loader_i386_linux.lst
+FSFILES += fs-linux_mod-loader_i386_linux.lst
+PARTMAPFILES += partmap-linux_mod-loader_i386_linux.lst
-cmd-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
+cmd-linux_mod-loader_i386_linux.lst: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
-fs-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
+fs-linux_mod-loader_i386_linux.lst: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
-partmap-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
+partmap-linux_mod-loader_i386_linux.lst: loader/i386/linux.c $(loader/i386/linux.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
linux_mod_CFLAGS = $(COMMON_CFLAGS)
# 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_mod_SOURCES = 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_text.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_menu_text.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
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.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_text.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_text.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
+MOSTLYCLEANFILES += 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_text.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)
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_text.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
+pre-normal.o: $(normal_mod_DEPENDENCIES) 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_text.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_text.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
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -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_text.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 $@ $<
echo 'normal' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-normal_mod-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_arg.d
-
-CLEANFILES += cmd-normal_mod-normal_arg.lst fs-normal_mod-normal_arg.lst partmap-normal_mod-normal_arg.lst
-COMMANDFILES += cmd-normal_mod-normal_arg.lst
-FSFILES += fs-normal_mod-normal_arg.lst
-PARTMAPFILES += partmap-normal_mod-normal_arg.lst
-
-cmd-normal_mod-normal_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_cmdline.d
serial_mod_CFLAGS = $(COMMON_CFLAGS)
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod.
-_multiboot_mod_SOURCES = loader/i386/multiboot.c \
+# For multiboot.mod.
+multiboot_mod_SOURCES = loader/i386/multiboot.c \
loader/i386/pc/multiboot2.c \
loader/multiboot2.c \
loader/multiboot_loader.c
-CLEANFILES += _multiboot.mod mod-_multiboot.o mod-_multiboot.c pre-_multiboot.o _multiboot_mod-loader_i386_multiboot.o _multiboot_mod-loader_i386_pc_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o und-_multiboot.lst
-ifneq ($(_multiboot_mod_EXPORTS),no)
-CLEANFILES += def-_multiboot.lst
-DEFSYMFILES += def-_multiboot.lst
+CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_i386_multiboot.o multiboot_mod-loader_i386_pc_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o und-multiboot.lst
+ifneq ($(multiboot_mod_EXPORTS),no)
+CLEANFILES += def-multiboot.lst
+DEFSYMFILES += def-multiboot.lst
endif
-MOSTLYCLEANFILES += _multiboot_mod-loader_i386_multiboot.d _multiboot_mod-loader_i386_pc_multiboot2.d _multiboot_mod-loader_multiboot2.d _multiboot_mod-loader_multiboot_loader.d
-UNDSYMFILES += und-_multiboot.lst
+MOSTLYCLEANFILES += multiboot_mod-loader_i386_multiboot.d multiboot_mod-loader_i386_pc_multiboot2.d multiboot_mod-loader_multiboot2.d multiboot_mod-loader_multiboot_loader.d
+UNDSYMFILES += und-multiboot.lst
-_multiboot.mod: pre-_multiboot.o mod-_multiboot.o $(TARGET_OBJ2ELF)
+multiboot.mod: pre-multiboot.o mod-multiboot.o $(TARGET_OBJ2ELF)
-rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_multiboot.o mod-_multiboot.o
+ $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-multiboot.o mod-multiboot.o
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-_multiboot.o: $(_multiboot_mod_DEPENDENCIES) _multiboot_mod-loader_i386_multiboot.o _multiboot_mod-loader_i386_pc_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
+pre-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_i386_multiboot.o multiboot_mod-loader_i386_pc_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
-rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _multiboot_mod-loader_i386_multiboot.o _multiboot_mod-loader_i386_pc_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
+ $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_i386_multiboot.o multiboot_mod-loader_i386_pc_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
-mod-_multiboot.o: mod-_multiboot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -c -o $@ $<
+mod-multiboot.o: mod-multiboot.c
+ $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $<
-mod-_multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_multiboot' $< > $@ || (rm -f $@; exit 1)
+mod-multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
+ sh $(srcdir)/genmodsrc.sh 'multiboot' $< > $@ || (rm -f $@; exit 1)
-ifneq ($(_multiboot_mod_EXPORTS),no)
-def-_multiboot.lst: pre-_multiboot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _multiboot/' > $@
+ifneq ($(multiboot_mod_EXPORTS),no)
+def-multiboot.lst: pre-multiboot.o
+ $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 multiboot/' > $@
endif
-und-_multiboot.lst: pre-_multiboot.o
- echo '_multiboot' > $@
+und-multiboot.lst: pre-multiboot.o
+ echo 'multiboot' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-_multiboot_mod-loader_i386_multiboot.o: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_i386_multiboot.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_i386_multiboot.lst fs-_multiboot_mod-loader_i386_multiboot.lst partmap-_multiboot_mod-loader_i386_multiboot.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_i386_multiboot.lst
-FSFILES += fs-_multiboot_mod-loader_i386_multiboot.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_i386_multiboot.lst
-
-cmd-_multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
+multiboot_mod-loader_i386_multiboot.o: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_i386_multiboot.d
+CLEANFILES += cmd-multiboot_mod-loader_i386_multiboot.lst fs-multiboot_mod-loader_i386_multiboot.lst partmap-multiboot_mod-loader_i386_multiboot.lst
+COMMANDFILES += cmd-multiboot_mod-loader_i386_multiboot.lst
+FSFILES += fs-multiboot_mod-loader_i386_multiboot.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_i386_multiboot.lst
-_multiboot_mod-loader_i386_pc_multiboot2.o: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_i386_pc_multiboot2.d
+cmd-multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-CLEANFILES += cmd-_multiboot_mod-loader_i386_pc_multiboot2.lst fs-_multiboot_mod-loader_i386_pc_multiboot2.lst partmap-_multiboot_mod-loader_i386_pc_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_i386_pc_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_i386_pc_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_i386_pc_multiboot2.lst
+fs-multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-cmd-_multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
+partmap-multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
-fs-_multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-partmap-_multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
+multiboot_mod-loader_i386_pc_multiboot2.o: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_i386_pc_multiboot2.d
+CLEANFILES += cmd-multiboot_mod-loader_i386_pc_multiboot2.lst fs-multiboot_mod-loader_i386_pc_multiboot2.lst partmap-multiboot_mod-loader_i386_pc_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_i386_pc_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_i386_pc_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_i386_pc_multiboot2.lst
-_multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot2.d
+cmd-multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot2.lst fs-_multiboot_mod-loader_multiboot2.lst partmap-_multiboot_mod-loader_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot2.lst
+fs-multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-cmd-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
+partmap-multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
-fs-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot_loader.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst fs-_multiboot_mod-loader_multiboot_loader.lst partmap-_multiboot_mod-loader_multiboot_loader.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot_loader.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot_loader.lst
-
-cmd-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod.
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
-CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_multiboot_loader_normal.o und-multiboot.lst
-ifneq ($(multiboot_mod_EXPORTS),no)
-CLEANFILES += def-multiboot.lst
-DEFSYMFILES += def-multiboot.lst
-endif
-MOSTLYCLEANFILES += multiboot_mod-loader_multiboot_loader_normal.d
-UNDSYMFILES += und-multiboot.lst
-multiboot.mod: pre-multiboot.o mod-multiboot.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-multiboot.o mod-multiboot.o
- 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 $@
+multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_multiboot2.d
-pre-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_multiboot_loader_normal.o
- -rm -f $@
- $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_multiboot_loader_normal.o
+CLEANFILES += cmd-multiboot_mod-loader_multiboot2.lst fs-multiboot_mod-loader_multiboot2.lst partmap-multiboot_mod-loader_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot2.lst
-mod-multiboot.o: mod-multiboot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $<
+cmd-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-mod-multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh 'multiboot' $< > $@ || (rm -f $@; exit 1)
+fs-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-ifneq ($(multiboot_mod_EXPORTS),no)
-def-multiboot.lst: pre-multiboot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 multiboot/' > $@
-endif
+partmap-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
-und-multiboot.lst: pre-multiboot.o
- echo 'multiboot' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-multiboot_mod-loader_multiboot_loader_normal.o: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES)
+multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
$(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include multiboot_mod-loader_multiboot_loader_normal.d
+-include multiboot_mod-loader_multiboot_loader.d
-CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst fs-multiboot_mod-loader_multiboot_loader_normal.lst partmap-multiboot_mod-loader_multiboot_loader_normal.lst
-COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst
-FSFILES += fs-multiboot_mod-loader_multiboot_loader_normal.lst
-PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader_normal.lst
+CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader.lst fs-multiboot_mod-loader_multiboot_loader.lst partmap-multiboot_mod-loader_multiboot_loader.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader.lst
+FSFILES += fs-multiboot_mod-loader_multiboot_loader.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader.lst
-cmd-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-fs-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genfslist.sh
+fs-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-partmap-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
kern/main.c kern/device.c \
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/dl.c kern/parser.c kern/partition.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/generic/rtc_get_time_ms.c \
term/i386/pc/vga_text.c term/i386/vga_common.c \
term/i386/pc/at_keyboard.c \
symlist.c
-kernel_elf_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_elf_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
machine/boot.h machine/console.h machine/init.h \
- machine/memory.h machine/loader.h list.h handler.h
+ machine/memory.h machine/loader.h list.h handler.h command.h
kernel_elf_CFLAGS = $(COMMON_CFLAGS)
kernel_elf_ASFLAGS = $(COMMON_ASFLAGS)
kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x8200,-Bstatic
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/echo.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/blocklist.c commands/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c\
normal/completion.c normal/main.c normal/menu_text.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/misc.c normal/script.c \
grub_install_SOURCES = util/i386/pc/grub-install.in
# Modules.
-pkglib_MODULES = _linux.mod linux.mod normal.mod \
- _multiboot.mod multiboot.mod aout.mod \
- play.mod serial.mod ata.mod \
+pkglib_MODULES = linux.mod normal.mod multiboot.mod \
+ aout.mod play.mod serial.mod ata.mod \
memdisk.mod pci.mod lspci.mod reboot.mod \
halt.mod datetime.mod date.mod datehook.mod \
lsmmap.mod
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/linux.c
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
+linux_mod_SOURCES = loader/i386/linux.c
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.c \
serial_mod_CFLAGS = $(COMMON_CFLAGS)
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod.
-_multiboot_mod_SOURCES = loader/i386/multiboot.c \
+# For multiboot.mod.
+multiboot_mod_SOURCES = loader/i386/multiboot.c \
loader/i386/pc/multiboot2.c \
loader/multiboot2.c \
loader/multiboot_loader.c
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod.
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/hexdump.c lib/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c \
normal/completion.c normal/context.c normal/main.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/menu_text.c \
# Modules.
-pkglib_MODULES = kernel.mod normal.mod _chain.mod chain.mod appleldr.mod \
- _linux.mod linux.mod halt.mod reboot.mod pci.mod lspci.mod \
+pkglib_MODULES = kernel.mod normal.mod chain.mod appleldr.mod \
+ linux.mod halt.mod reboot.mod pci.mod lspci.mod \
datetime.mod date.mod datehook.mod
# For kernel.mod.
kern/i386/dl.c kern/i386/efi/init.c kern/parser.c kern/partition.c \
kern/env.c symlist.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c \
term/efi/console.c disk/efi/efidisk.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/generic/rtc_get_time_ms.c \
kern/generic/millisleep.c
-CLEANFILES += kernel.mod mod-kernel.o mod-kernel.c pre-kernel.o kernel_mod-kern_i386_efi_startup.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_i386_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-kern_generic_millisleep.o und-kernel.lst
+CLEANFILES += kernel.mod mod-kernel.o mod-kernel.c pre-kernel.o kernel_mod-kern_i386_efi_startup.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_i386_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_command.o kernel_mod-kern_corecmd.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-kern_generic_millisleep.o und-kernel.lst
ifneq ($(kernel_mod_EXPORTS),no)
CLEANFILES += def-kernel.lst
DEFSYMFILES += def-kernel.lst
endif
-MOSTLYCLEANFILES += kernel_mod-kern_i386_efi_startup.d kernel_mod-kern_main.d kernel_mod-kern_device.d kernel_mod-kern_disk.d kernel_mod-kern_dl.d kernel_mod-kern_file.d kernel_mod-kern_fs.d kernel_mod-kern_err.d kernel_mod-kern_misc.d kernel_mod-kern_mm.d kernel_mod-kern_loader.d kernel_mod-kern_rescue.d kernel_mod-kern_term.d kernel_mod-kern_i386_dl.d kernel_mod-kern_i386_efi_init.d kernel_mod-kern_parser.d kernel_mod-kern_partition.d kernel_mod-kern_env.d kernel_mod-symlist.d kernel_mod-kern_efi_efi.d kernel_mod-kern_efi_init.d kernel_mod-kern_efi_mm.d kernel_mod-term_efi_console.d kernel_mod-disk_efi_efidisk.d kernel_mod-kern_time.d kernel_mod-kern_list.d kernel_mod-kern_handler.d kernel_mod-kern_i386_tsc.d kernel_mod-kern_i386_pit.d kernel_mod-kern_generic_rtc_get_time_ms.d kernel_mod-kern_generic_millisleep.d
+MOSTLYCLEANFILES += kernel_mod-kern_i386_efi_startup.d kernel_mod-kern_main.d kernel_mod-kern_device.d kernel_mod-kern_disk.d kernel_mod-kern_dl.d kernel_mod-kern_file.d kernel_mod-kern_fs.d kernel_mod-kern_err.d kernel_mod-kern_misc.d kernel_mod-kern_mm.d kernel_mod-kern_loader.d kernel_mod-kern_rescue.d kernel_mod-kern_term.d kernel_mod-kern_i386_dl.d kernel_mod-kern_i386_efi_init.d kernel_mod-kern_parser.d kernel_mod-kern_partition.d kernel_mod-kern_env.d kernel_mod-symlist.d kernel_mod-kern_efi_efi.d kernel_mod-kern_efi_init.d kernel_mod-kern_efi_mm.d kernel_mod-term_efi_console.d kernel_mod-disk_efi_efidisk.d kernel_mod-kern_time.d kernel_mod-kern_list.d kernel_mod-kern_handler.d kernel_mod-kern_command.d kernel_mod-kern_corecmd.d kernel_mod-kern_i386_tsc.d kernel_mod-kern_i386_pit.d kernel_mod-kern_generic_rtc_get_time_ms.d kernel_mod-kern_generic_millisleep.d
UNDSYMFILES += und-kernel.lst
kernel.mod: pre-kernel.o mod-kernel.o $(TARGET_OBJ2ELF)
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-kernel.o: $(kernel_mod_DEPENDENCIES) kernel_mod-kern_i386_efi_startup.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_i386_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-kern_generic_millisleep.o
+pre-kernel.o: $(kernel_mod_DEPENDENCIES) kernel_mod-kern_i386_efi_startup.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_i386_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_command.o kernel_mod-kern_corecmd.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-kern_generic_millisleep.o
-rm -f $@
- $(TARGET_CC) $(kernel_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ kernel_mod-kern_i386_efi_startup.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_i386_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-kern_generic_millisleep.o
+ $(TARGET_CC) $(kernel_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ kernel_mod-kern_i386_efi_startup.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_i386_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_command.o kernel_mod-kern_corecmd.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-kern_generic_millisleep.o
mod-kernel.o: mod-kernel.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -c -o $@ $<
set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
+kernel_mod-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -MD -c -o $@ $<
+-include kernel_mod-kern_command.d
+
+CLEANFILES += cmd-kernel_mod-kern_command.lst fs-kernel_mod-kern_command.lst partmap-kernel_mod-kern_command.lst
+COMMANDFILES += cmd-kernel_mod-kern_command.lst
+FSFILES += fs-kernel_mod-kern_command.lst
+PARTMAPFILES += partmap-kernel_mod-kern_command.lst
+
+cmd-kernel_mod-kern_command.lst: kern/command.c $(kern/command.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh kernel > $@ || (rm -f $@; exit 1)
+
+fs-kernel_mod-kern_command.lst: kern/command.c $(kern/command.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh kernel > $@ || (rm -f $@; exit 1)
+
+partmap-kernel_mod-kern_command.lst: kern/command.c $(kern/command.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
+
+
+kernel_mod-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -MD -c -o $@ $<
+-include kernel_mod-kern_corecmd.d
+
+CLEANFILES += cmd-kernel_mod-kern_corecmd.lst fs-kernel_mod-kern_corecmd.lst partmap-kernel_mod-kern_corecmd.lst
+COMMANDFILES += cmd-kernel_mod-kern_corecmd.lst
+FSFILES += fs-kernel_mod-kern_corecmd.lst
+PARTMAPFILES += partmap-kernel_mod-kern_corecmd.lst
+
+cmd-kernel_mod-kern_corecmd.lst: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh kernel > $@ || (rm -f $@; exit 1)
+
+fs-kernel_mod-kern_corecmd.lst: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh kernel > $@ || (rm -f $@; exit 1)
+
+partmap-kernel_mod-kern_corecmd.lst: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
+
+
kernel_mod-kern_i386_tsc.o: kern/i386/tsc.c $(kern/i386/tsc.c_DEPENDENCIES)
$(TARGET_CC) -Ikern/i386 -I$(srcdir)/kern/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -MD -c -o $@ $<
-include kernel_mod-kern_i386_tsc.d
set -e; $(TARGET_CC) -Ikern/generic -I$(srcdir)/kern/generic $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
-kernel_mod_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_mod_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
- efi/efi.h efi/time.h efi/disk.h list.h handler.h
+ efi/efi.h efi/time.h efi/disk.h list.h handler.h command.h
kernel_mod_CFLAGS = $(COMMON_CFLAGS)
kernel_mod_ASFLAGS = $(COMMON_ASFLAGS)
kernel_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.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_menu_text.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
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.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_text.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_text.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
+MOSTLYCLEANFILES += 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_text.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)
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_text.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
+pre-normal.o: $(normal_mod_DEPENDENCIES) 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_text.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_text.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
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -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_text.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 $@ $<
echo 'normal' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-normal_mod-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_arg.d
-
-CLEANFILES += cmd-normal_mod-normal_arg.lst fs-normal_mod-normal_arg.lst partmap-normal_mod-normal_arg.lst
-COMMANDFILES += cmd-normal_mod-normal_arg.lst
-FSFILES += fs-normal_mod-normal_arg.lst
-PARTMAPFILES += partmap-normal_mod-normal_arg.lst
-
-cmd-normal_mod-normal_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_cmdline.d
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _chain.mod.
-_chain_mod_SOURCES = loader/efi/chainloader.c
-CLEANFILES += _chain.mod mod-_chain.o mod-_chain.c pre-_chain.o _chain_mod-loader_efi_chainloader.o und-_chain.lst
-ifneq ($(_chain_mod_EXPORTS),no)
-CLEANFILES += def-_chain.lst
-DEFSYMFILES += def-_chain.lst
-endif
-MOSTLYCLEANFILES += _chain_mod-loader_efi_chainloader.d
-UNDSYMFILES += und-_chain.lst
-
-_chain.mod: pre-_chain.o mod-_chain.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_chain_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_chain.o mod-_chain.o
- 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-_chain.o: $(_chain_mod_DEPENDENCIES) _chain_mod-loader_efi_chainloader.o
- -rm -f $@
- $(TARGET_CC) $(_chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _chain_mod-loader_efi_chainloader.o
-
-mod-_chain.o: mod-_chain.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -c -o $@ $<
-
-mod-_chain.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_chain' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_chain_mod_EXPORTS),no)
-def-_chain.lst: pre-_chain.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _chain/' > $@
-endif
-
-und-_chain.lst: pre-_chain.o
- echo '_chain' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_chain_mod-loader_efi_chainloader.o: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -MD -c -o $@ $<
--include _chain_mod-loader_efi_chainloader.d
-
-CLEANFILES += cmd-_chain_mod-loader_efi_chainloader.lst fs-_chain_mod-loader_efi_chainloader.lst partmap-_chain_mod-loader_efi_chainloader.lst
-COMMANDFILES += cmd-_chain_mod-loader_efi_chainloader.lst
-FSFILES += fs-_chain_mod-loader_efi_chainloader.lst
-PARTMAPFILES += partmap-_chain_mod-loader_efi_chainloader.lst
-
-cmd-_chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _chain > $@ || (rm -f $@; exit 1)
-
-fs-_chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _chain > $@ || (rm -f $@; exit 1)
-
-partmap-_chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _chain > $@ || (rm -f $@; exit 1)
-
-
-_chain_mod_CFLAGS = $(COMMON_CFLAGS)
-_chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For chain.mod.
-chain_mod_SOURCES = loader/efi/chainloader_normal.c
-CLEANFILES += chain.mod mod-chain.o mod-chain.c pre-chain.o chain_mod-loader_efi_chainloader_normal.o und-chain.lst
+chain_mod_SOURCES = loader/efi/chainloader.c
+CLEANFILES += chain.mod mod-chain.o mod-chain.c pre-chain.o chain_mod-loader_efi_chainloader.o und-chain.lst
ifneq ($(chain_mod_EXPORTS),no)
CLEANFILES += def-chain.lst
DEFSYMFILES += def-chain.lst
endif
-MOSTLYCLEANFILES += chain_mod-loader_efi_chainloader_normal.d
+MOSTLYCLEANFILES += chain_mod-loader_efi_chainloader.d
UNDSYMFILES += und-chain.lst
chain.mod: pre-chain.o mod-chain.o $(TARGET_OBJ2ELF)
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-chain.o: $(chain_mod_DEPENDENCIES) chain_mod-loader_efi_chainloader_normal.o
+pre-chain.o: $(chain_mod_DEPENDENCIES) chain_mod-loader_efi_chainloader.o
-rm -f $@
- $(TARGET_CC) $(chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ chain_mod-loader_efi_chainloader_normal.o
+ $(TARGET_CC) $(chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ chain_mod-loader_efi_chainloader.o
mod-chain.o: mod-chain.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -c -o $@ $<
echo 'chain' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-chain_mod-loader_efi_chainloader_normal.o: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES)
+chain_mod-loader_efi_chainloader.o: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES)
$(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -MD -c -o $@ $<
--include chain_mod-loader_efi_chainloader_normal.d
+-include chain_mod-loader_efi_chainloader.d
-CLEANFILES += cmd-chain_mod-loader_efi_chainloader_normal.lst fs-chain_mod-loader_efi_chainloader_normal.lst partmap-chain_mod-loader_efi_chainloader_normal.lst
-COMMANDFILES += cmd-chain_mod-loader_efi_chainloader_normal.lst
-FSFILES += fs-chain_mod-loader_efi_chainloader_normal.lst
-PARTMAPFILES += partmap-chain_mod-loader_efi_chainloader_normal.lst
+CLEANFILES += cmd-chain_mod-loader_efi_chainloader.lst fs-chain_mod-loader_efi_chainloader.lst partmap-chain_mod-loader_efi_chainloader.lst
+COMMANDFILES += cmd-chain_mod-loader_efi_chainloader.lst
+FSFILES += fs-chain_mod-loader_efi_chainloader.lst
+PARTMAPFILES += partmap-chain_mod-loader_efi_chainloader.lst
-cmd-chain_mod-loader_efi_chainloader_normal.lst: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh chain > $@ || (rm -f $@; exit 1)
-fs-chain_mod-loader_efi_chainloader_normal.lst: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES) genfslist.sh
+fs-chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh chain > $@ || (rm -f $@; exit 1)
-partmap-chain_mod-loader_efi_chainloader_normal.lst: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh chain > $@ || (rm -f $@; exit 1)
appleldr_mod_CFLAGS = $(COMMON_CFLAGS)
appleldr_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/efi/linux.c
-CLEANFILES += _linux.mod mod-_linux.o mod-_linux.c pre-_linux.o _linux_mod-loader_i386_efi_linux.o und-_linux.lst
-ifneq ($(_linux_mod_EXPORTS),no)
-CLEANFILES += def-_linux.lst
-DEFSYMFILES += def-_linux.lst
-endif
-MOSTLYCLEANFILES += _linux_mod-loader_i386_efi_linux.d
-UNDSYMFILES += und-_linux.lst
-
-_linux.mod: pre-_linux.o mod-_linux.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_linux.o mod-_linux.o
- 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-_linux.o: $(_linux_mod_DEPENDENCIES) _linux_mod-loader_i386_efi_linux.o
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _linux_mod-loader_i386_efi_linux.o
-
-mod-_linux.o: mod-_linux.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -c -o $@ $<
-
-mod-_linux.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_linux' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_linux_mod_EXPORTS),no)
-def-_linux.lst: pre-_linux.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _linux/' > $@
-endif
-
-und-_linux.lst: pre-_linux.o
- echo '_linux' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_linux_mod-loader_i386_efi_linux.o: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -MD -c -o $@ $<
--include _linux_mod-loader_i386_efi_linux.d
-
-CLEANFILES += cmd-_linux_mod-loader_i386_efi_linux.lst fs-_linux_mod-loader_i386_efi_linux.lst partmap-_linux_mod-loader_i386_efi_linux.lst
-COMMANDFILES += cmd-_linux_mod-loader_i386_efi_linux.lst
-FSFILES += fs-_linux_mod-loader_i386_efi_linux.lst
-PARTMAPFILES += partmap-_linux_mod-loader_i386_efi_linux.lst
-
-cmd-_linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _linux > $@ || (rm -f $@; exit 1)
-
-fs-_linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _linux > $@ || (rm -f $@; exit 1)
-
-partmap-_linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _linux > $@ || (rm -f $@; exit 1)
-
-
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
-CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_linux_normal.o und-linux.lst
+linux_mod_SOURCES = loader/i386/efi/linux.c
+CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_i386_efi_linux.o und-linux.lst
ifneq ($(linux_mod_EXPORTS),no)
CLEANFILES += def-linux.lst
DEFSYMFILES += def-linux.lst
endif
-MOSTLYCLEANFILES += linux_mod-loader_linux_normal.d
+MOSTLYCLEANFILES += linux_mod-loader_i386_efi_linux.d
UNDSYMFILES += und-linux.lst
linux.mod: pre-linux.o mod-linux.o $(TARGET_OBJ2ELF)
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-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_linux_normal.o
+pre-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_i386_efi_linux.o
-rm -f $@
- $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_linux_normal.o
+ $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_i386_efi_linux.o
mod-linux.o: mod-linux.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $<
echo 'linux' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-linux_mod-loader_linux_normal.o: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
--include linux_mod-loader_linux_normal.d
+linux_mod-loader_i386_efi_linux.o: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
+-include linux_mod-loader_i386_efi_linux.d
-CLEANFILES += cmd-linux_mod-loader_linux_normal.lst fs-linux_mod-loader_linux_normal.lst partmap-linux_mod-loader_linux_normal.lst
-COMMANDFILES += cmd-linux_mod-loader_linux_normal.lst
-FSFILES += fs-linux_mod-loader_linux_normal.lst
-PARTMAPFILES += partmap-linux_mod-loader_linux_normal.lst
+CLEANFILES += cmd-linux_mod-loader_i386_efi_linux.lst fs-linux_mod-loader_i386_efi_linux.lst partmap-linux_mod-loader_i386_efi_linux.lst
+COMMANDFILES += cmd-linux_mod-loader_i386_efi_linux.lst
+FSFILES += fs-linux_mod-loader_i386_efi_linux.lst
+PARTMAPFILES += partmap-linux_mod-loader_i386_efi_linux.lst
-cmd-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
+cmd-linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
-fs-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
+fs-linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
-partmap-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
+partmap-linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
linux_mod_CFLAGS = $(COMMON_CFLAGS)
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/hexdump.c lib/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c \
normal/completion.c normal/context.c normal/main.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/menu_text.c \
grub_install_SOURCES = util/i386/efi/grub-install.in
# Modules.
-pkglib_MODULES = kernel.mod normal.mod _chain.mod chain.mod appleldr.mod \
- _linux.mod linux.mod halt.mod reboot.mod pci.mod lspci.mod \
+pkglib_MODULES = kernel.mod normal.mod chain.mod appleldr.mod \
+ linux.mod halt.mod reboot.mod pci.mod lspci.mod \
datetime.mod date.mod datehook.mod
# For kernel.mod.
kern/i386/dl.c kern/i386/efi/init.c kern/parser.c kern/partition.c \
kern/env.c symlist.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c \
term/efi/console.c disk/efi/efidisk.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/generic/rtc_get_time_ms.c \
kern/generic/millisleep.c
-kernel_mod_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_mod_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
- efi/efi.h efi/time.h efi/disk.h list.h handler.h
+ efi/efi.h efi/time.h efi/disk.h list.h handler.h command.h
kernel_mod_CFLAGS = $(COMMON_CFLAGS)
kernel_mod_ASFLAGS = $(COMMON_ASFLAGS)
kernel_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.c \
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _chain.mod.
-_chain_mod_SOURCES = loader/efi/chainloader.c
-_chain_mod_CFLAGS = $(COMMON_CFLAGS)
-_chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For chain.mod.
-chain_mod_SOURCES = loader/efi/chainloader_normal.c
+chain_mod_SOURCES = loader/efi/chainloader.c
chain_mod_CFLAGS = $(COMMON_CFLAGS)
chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
appleldr_mod_CFLAGS = $(COMMON_CFLAGS)
appleldr_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/efi/linux.c
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
+linux_mod_SOURCES = loader/i386/efi/linux.c
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
kern/i386/dl.c kern/parser.c kern/partition.c \
kern/env.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/generic/millisleep.c \
kern/ieee1275/ieee1275.c \
term/ieee1275/ofconsole.c \
disk/ieee1275/ofdisk.c \
symlist.c
-CLEANFILES += kernel.elf kernel_elf-kern_i386_ieee1275_startup.o kernel_elf-kern_i386_ieee1275_init.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-symlist.o
-MOSTLYCLEANFILES += kernel_elf-kern_i386_ieee1275_startup.d kernel_elf-kern_i386_ieee1275_init.d kernel_elf-kern_ieee1275_init.d kernel_elf-kern_ieee1275_mmap.d kernel_elf-kern_ieee1275_cmain.d kernel_elf-kern_ieee1275_openfw.d kernel_elf-kern_main.d kernel_elf-kern_device.d kernel_elf-kern_disk.d kernel_elf-kern_dl.d kernel_elf-kern_file.d kernel_elf-kern_fs.d kernel_elf-kern_err.d kernel_elf-kern_misc.d kernel_elf-kern_mm.d kernel_elf-kern_loader.d kernel_elf-kern_rescue.d kernel_elf-kern_term.d kernel_elf-kern_i386_dl.d kernel_elf-kern_parser.d kernel_elf-kern_partition.d kernel_elf-kern_env.d kernel_elf-kern_time.d kernel_elf-kern_list.d kernel_elf-kern_handler.d kernel_elf-kern_generic_millisleep.d kernel_elf-kern_ieee1275_ieee1275.d kernel_elf-term_ieee1275_ofconsole.d kernel_elf-disk_ieee1275_ofdisk.d kernel_elf-symlist.d
+CLEANFILES += kernel.elf kernel_elf-kern_i386_ieee1275_startup.o kernel_elf-kern_i386_ieee1275_init.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-symlist.o
+MOSTLYCLEANFILES += kernel_elf-kern_i386_ieee1275_startup.d kernel_elf-kern_i386_ieee1275_init.d kernel_elf-kern_ieee1275_init.d kernel_elf-kern_ieee1275_mmap.d kernel_elf-kern_ieee1275_cmain.d kernel_elf-kern_ieee1275_openfw.d kernel_elf-kern_main.d kernel_elf-kern_device.d kernel_elf-kern_disk.d kernel_elf-kern_dl.d kernel_elf-kern_file.d kernel_elf-kern_fs.d kernel_elf-kern_err.d kernel_elf-kern_misc.d kernel_elf-kern_mm.d kernel_elf-kern_loader.d kernel_elf-kern_rescue.d kernel_elf-kern_term.d kernel_elf-kern_i386_dl.d kernel_elf-kern_parser.d kernel_elf-kern_partition.d kernel_elf-kern_env.d kernel_elf-kern_time.d kernel_elf-kern_list.d kernel_elf-kern_handler.d kernel_elf-kern_command.d kernel_elf-kern_corecmd.d kernel_elf-kern_generic_millisleep.d kernel_elf-kern_ieee1275_ieee1275.d kernel_elf-term_ieee1275_ofconsole.d kernel_elf-disk_ieee1275_ofdisk.d kernel_elf-symlist.d
-kernel.elf: $(kernel_elf_DEPENDENCIES) kernel_elf-kern_i386_ieee1275_startup.o kernel_elf-kern_i386_ieee1275_init.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-symlist.o
- $(TARGET_CC) -o $@ kernel_elf-kern_i386_ieee1275_startup.o kernel_elf-kern_i386_ieee1275_init.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-symlist.o $(TARGET_LDFLAGS) $(kernel_elf_LDFLAGS)
+kernel.elf: $(kernel_elf_DEPENDENCIES) kernel_elf-kern_i386_ieee1275_startup.o kernel_elf-kern_i386_ieee1275_init.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-symlist.o
+ $(TARGET_CC) -o $@ kernel_elf-kern_i386_ieee1275_startup.o kernel_elf-kern_i386_ieee1275_init.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_err.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_i386_dl.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_time.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-symlist.o $(TARGET_LDFLAGS) $(kernel_elf_LDFLAGS)
kernel_elf-kern_i386_ieee1275_startup.o: kern/i386/ieee1275/startup.S $(kern/i386/ieee1275/startup.S_DEPENDENCIES)
$(TARGET_CC) -Ikern/i386/ieee1275 -I$(srcdir)/kern/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
$(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_handler.d
+kernel_elf-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
+-include kernel_elf-kern_command.d
+
+kernel_elf-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
+-include kernel_elf-kern_corecmd.d
+
kernel_elf-kern_generic_millisleep.o: kern/generic/millisleep.c $(kern/generic/millisleep.c_DEPENDENCIES)
$(TARGET_CC) -Ikern/generic -I$(srcdir)/kern/generic $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_generic_millisleep.d
$(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-symlist.d
-kernel_elf_HEADERS = arg.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_elf_HEADERS = cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
ieee1275/ieee1275.h machine/kernel.h machine/loader.h machine/memory.h \
- list.h handler.h
+ list.h handler.h command.h
kernel_elf_CFLAGS = $(COMMON_CFLAGS)
kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x10000,-Bstatic
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/echo.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/blocklist.c commands/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c\
normal/completion.c normal/main.c normal/menu_text.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/misc.c normal/script.c \
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c \
grub_emu_init.c
-CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
-MOSTLYCLEANFILES += grub_emu-commands_boot.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_echo.d grub_emu-commands_help.d grub_emu-commands_handler.d grub_emu-commands_ls.d grub_emu-commands_test.d grub_emu-commands_search.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_halt.d grub_emu-commands_reboot.d grub_emu-commands_i386_cpuid.d grub_emu-disk_host.d grub_emu-disk_loopback.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-fs_fshelp.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-normal_execute.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-normal_lexer.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-grub_script_tab.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-normal_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_function.d grub_emu-normal_completion.d grub_emu-normal_main.d grub_emu-normal_menu_text.d grub_emu-normal_menu.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-normal_color.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-partmap_gpt.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_i386_pc_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_emu_init.d
+CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
+MOSTLYCLEANFILES += grub_emu-commands_minicmd.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_echo.d grub_emu-commands_help.d grub_emu-commands_handler.d grub_emu-commands_ls.d grub_emu-commands_test.d grub_emu-commands_search.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_halt.d grub_emu-commands_reboot.d grub_emu-commands_i386_cpuid.d grub_emu-disk_host.d grub_emu-disk_loopback.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-fs_fshelp.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-kern_command.d grub_emu-kern_corecmd.d grub_emu-commands_extcmd.d grub_emu-normal_execute.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-normal_lexer.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-grub_script_tab.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-lib_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_function.d grub_emu-normal_completion.d grub_emu-normal_main.d grub_emu-normal_menu_text.d grub_emu-normal_menu.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-normal_color.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-partmap_gpt.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_i386_pc_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_emu_init.d
-grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
- $(CC) -o $@ grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
+grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
+ $(CC) -o $@ grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_menu_text.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
-grub_emu-commands_boot.o: commands/boot.c $(commands/boot.c_DEPENDENCIES)
+grub_emu-commands_minicmd.o: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-commands_boot.d
+-include grub_emu-commands_minicmd.d
grub_emu-commands_cat.o: commands/cat.c $(commands/cat.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
$(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-kern_handler.d
+grub_emu-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_command.d
+
+grub_emu-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_corecmd.d
+
+grub_emu-commands_extcmd.o: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES)
+ $(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-commands_extcmd.d
+
grub_emu-normal_execute.o: normal/execute.c $(normal/execute.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-normal_execute.d
$(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-kern_term.d
-grub_emu-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-normal_arg.d
+grub_emu-lib_arg.o: lib/arg.c $(lib/arg.c_DEPENDENCIES)
+ $(CC) -Ilib -I$(srcdir)/lib $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-lib_arg.d
grub_emu-normal_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
# Modules.
pkglib_MODULES = normal.mod halt.mod reboot.mod suspend.mod \
- multiboot.mod _multiboot.mod aout.mod serial.mod linux.mod \
- _linux.mod nand.mod memdisk.mod pci.mod lspci.mod datetime.mod \
+ multiboot.mod aout.mod serial.mod linux.mod \
+ nand.mod memdisk.mod pci.mod lspci.mod datetime.mod \
date.mod datehook.mod lsmmap.mod
#
# 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_mod_SOURCES = 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_text.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_menu_text.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
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.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_text.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_text.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
+MOSTLYCLEANFILES += 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_text.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)
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_text.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
+pre-normal.o: $(normal_mod_DEPENDENCIES) 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_text.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_text.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
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -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_text.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 $@ $<
echo 'normal' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-normal_mod-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_arg.d
-
-CLEANFILES += cmd-normal_mod-normal_arg.lst fs-normal_mod-normal_arg.lst partmap-normal_mod-normal_arg.lst
-COMMANDFILES += cmd-normal_mod-normal_arg.lst
-FSFILES += fs-normal_mod-normal_arg.lst
-PARTMAPFILES += partmap-normal_mod-normal_arg.lst
-
-cmd-normal_mod-normal_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_cmdline.d
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod.
-_multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
+# For multiboot.mod.
+multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
loader/multiboot2.c \
loader/multiboot_loader.c
-CLEANFILES += _multiboot.mod mod-_multiboot.o mod-_multiboot.c pre-_multiboot.o _multiboot_mod-loader_ieee1275_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o und-_multiboot.lst
-ifneq ($(_multiboot_mod_EXPORTS),no)
-CLEANFILES += def-_multiboot.lst
-DEFSYMFILES += def-_multiboot.lst
-endif
-MOSTLYCLEANFILES += _multiboot_mod-loader_ieee1275_multiboot2.d _multiboot_mod-loader_multiboot2.d _multiboot_mod-loader_multiboot_loader.d
-UNDSYMFILES += und-_multiboot.lst
-
-_multiboot.mod: pre-_multiboot.o mod-_multiboot.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_multiboot.o mod-_multiboot.o
- 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-_multiboot.o: $(_multiboot_mod_DEPENDENCIES) _multiboot_mod-loader_ieee1275_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
- -rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _multiboot_mod-loader_ieee1275_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
-
-mod-_multiboot.o: mod-_multiboot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -c -o $@ $<
-
-mod-_multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_multiboot' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_multiboot_mod_EXPORTS),no)
-def-_multiboot.lst: pre-_multiboot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _multiboot/' > $@
-endif
-
-und-_multiboot.lst: pre-_multiboot.o
- echo '_multiboot' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_multiboot_mod-loader_ieee1275_multiboot2.o: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_ieee1275_multiboot2.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_ieee1275_multiboot2.lst fs-_multiboot_mod-loader_ieee1275_multiboot2.lst partmap-_multiboot_mod-loader_ieee1275_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_ieee1275_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_ieee1275_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_ieee1275_multiboot2.lst
-
-cmd-_multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot2.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot2.lst fs-_multiboot_mod-loader_multiboot2.lst partmap-_multiboot_mod-loader_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot2.lst
-
-cmd-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot_loader.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst fs-_multiboot_mod-loader_multiboot_loader.lst partmap-_multiboot_mod-loader_multiboot_loader.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot_loader.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot_loader.lst
-
-cmd-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod.
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
-CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_multiboot_loader_normal.o und-multiboot.lst
+CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_ieee1275_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o und-multiboot.lst
ifneq ($(multiboot_mod_EXPORTS),no)
CLEANFILES += def-multiboot.lst
DEFSYMFILES += def-multiboot.lst
endif
-MOSTLYCLEANFILES += multiboot_mod-loader_multiboot_loader_normal.d
+MOSTLYCLEANFILES += multiboot_mod-loader_ieee1275_multiboot2.d multiboot_mod-loader_multiboot2.d multiboot_mod-loader_multiboot_loader.d
UNDSYMFILES += und-multiboot.lst
multiboot.mod: pre-multiboot.o mod-multiboot.o $(TARGET_OBJ2ELF)
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-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_multiboot_loader_normal.o
+pre-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_ieee1275_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
-rm -f $@
- $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_multiboot_loader_normal.o
+ $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_ieee1275_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
mod-multiboot.o: mod-multiboot.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $<
echo 'multiboot' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-multiboot_mod-loader_multiboot_loader_normal.o: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES)
+multiboot_mod-loader_ieee1275_multiboot2.o: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_ieee1275_multiboot2.d
+
+CLEANFILES += cmd-multiboot_mod-loader_ieee1275_multiboot2.lst fs-multiboot_mod-loader_ieee1275_multiboot2.lst partmap-multiboot_mod-loader_ieee1275_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_ieee1275_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_ieee1275_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_ieee1275_multiboot2.lst
+
+cmd-multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+fs-multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+partmap-multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+
+multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
$(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include multiboot_mod-loader_multiboot_loader_normal.d
+-include multiboot_mod-loader_multiboot2.d
-CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst fs-multiboot_mod-loader_multiboot_loader_normal.lst partmap-multiboot_mod-loader_multiboot_loader_normal.lst
-COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst
-FSFILES += fs-multiboot_mod-loader_multiboot_loader_normal.lst
-PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader_normal.lst
+CLEANFILES += cmd-multiboot_mod-loader_multiboot2.lst fs-multiboot_mod-loader_multiboot2.lst partmap-multiboot_mod-loader_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot2.lst
-cmd-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-fs-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genfslist.sh
+fs-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-partmap-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+
+multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_multiboot_loader.d
+
+CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader.lst fs-multiboot_mod-loader_multiboot_loader.lst partmap-multiboot_mod-loader_multiboot_loader.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader.lst
+FSFILES += fs-multiboot_mod-loader_multiboot_loader.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader.lst
+
+cmd-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+fs-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+partmap-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
serial_mod_CFLAGS = $(COMMON_CFLAGS)
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/ieee1275/linux.c
-CLEANFILES += _linux.mod mod-_linux.o mod-_linux.c pre-_linux.o _linux_mod-loader_i386_ieee1275_linux.o und-_linux.lst
-ifneq ($(_linux_mod_EXPORTS),no)
-CLEANFILES += def-_linux.lst
-DEFSYMFILES += def-_linux.lst
-endif
-MOSTLYCLEANFILES += _linux_mod-loader_i386_ieee1275_linux.d
-UNDSYMFILES += und-_linux.lst
-
-_linux.mod: pre-_linux.o mod-_linux.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_linux.o mod-_linux.o
- 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-_linux.o: $(_linux_mod_DEPENDENCIES) _linux_mod-loader_i386_ieee1275_linux.o
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _linux_mod-loader_i386_ieee1275_linux.o
-
-mod-_linux.o: mod-_linux.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -c -o $@ $<
-
-mod-_linux.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_linux' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_linux_mod_EXPORTS),no)
-def-_linux.lst: pre-_linux.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _linux/' > $@
-endif
-
-und-_linux.lst: pre-_linux.o
- echo '_linux' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_linux_mod-loader_i386_ieee1275_linux.o: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -MD -c -o $@ $<
--include _linux_mod-loader_i386_ieee1275_linux.d
-
-CLEANFILES += cmd-_linux_mod-loader_i386_ieee1275_linux.lst fs-_linux_mod-loader_i386_ieee1275_linux.lst partmap-_linux_mod-loader_i386_ieee1275_linux.lst
-COMMANDFILES += cmd-_linux_mod-loader_i386_ieee1275_linux.lst
-FSFILES += fs-_linux_mod-loader_i386_ieee1275_linux.lst
-PARTMAPFILES += partmap-_linux_mod-loader_i386_ieee1275_linux.lst
-
-cmd-_linux_mod-loader_i386_ieee1275_linux.lst: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _linux > $@ || (rm -f $@; exit 1)
-
-fs-_linux_mod-loader_i386_ieee1275_linux.lst: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _linux > $@ || (rm -f $@; exit 1)
-
-partmap-_linux_mod-loader_i386_ieee1275_linux.lst: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _linux > $@ || (rm -f $@; exit 1)
-
-
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
-CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_linux_normal.o und-linux.lst
+linux_mod_SOURCES = loader/i386/ieee1275/linux.c
+CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_i386_ieee1275_linux.o und-linux.lst
ifneq ($(linux_mod_EXPORTS),no)
CLEANFILES += def-linux.lst
DEFSYMFILES += def-linux.lst
endif
-MOSTLYCLEANFILES += linux_mod-loader_linux_normal.d
+MOSTLYCLEANFILES += linux_mod-loader_i386_ieee1275_linux.d
UNDSYMFILES += und-linux.lst
linux.mod: pre-linux.o mod-linux.o $(TARGET_OBJ2ELF)
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-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_linux_normal.o
+pre-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_i386_ieee1275_linux.o
-rm -f $@
- $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_linux_normal.o
+ $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_i386_ieee1275_linux.o
mod-linux.o: mod-linux.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $<
echo 'linux' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-linux_mod-loader_linux_normal.o: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
--include linux_mod-loader_linux_normal.d
+linux_mod-loader_i386_ieee1275_linux.o: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
+-include linux_mod-loader_i386_ieee1275_linux.d
-CLEANFILES += cmd-linux_mod-loader_linux_normal.lst fs-linux_mod-loader_linux_normal.lst partmap-linux_mod-loader_linux_normal.lst
-COMMANDFILES += cmd-linux_mod-loader_linux_normal.lst
-FSFILES += fs-linux_mod-loader_linux_normal.lst
-PARTMAPFILES += partmap-linux_mod-loader_linux_normal.lst
+CLEANFILES += cmd-linux_mod-loader_i386_ieee1275_linux.lst fs-linux_mod-loader_i386_ieee1275_linux.lst partmap-linux_mod-loader_i386_ieee1275_linux.lst
+COMMANDFILES += cmd-linux_mod-loader_i386_ieee1275_linux.lst
+FSFILES += fs-linux_mod-loader_i386_ieee1275_linux.lst
+PARTMAPFILES += partmap-linux_mod-loader_i386_ieee1275_linux.lst
-cmd-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
+cmd-linux_mod-loader_i386_ieee1275_linux.lst: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
-fs-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
+fs-linux_mod-loader_i386_ieee1275_linux.lst: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
-partmap-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
+partmap-linux_mod-loader_i386_ieee1275_linux.lst: loader/i386/ieee1275/linux.c $(loader/i386/ieee1275/linux.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/ieee1275 -I$(srcdir)/loader/i386/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
linux_mod_CFLAGS = $(COMMON_CFLAGS)
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
kern/i386/dl.c kern/parser.c kern/partition.c \
kern/env.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/generic/millisleep.c \
kern/ieee1275/ieee1275.c \
term/ieee1275/ofconsole.c \
disk/ieee1275/ofdisk.c \
symlist.c
-kernel_elf_HEADERS = arg.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_elf_HEADERS = cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
ieee1275/ieee1275.h machine/kernel.h machine/loader.h machine/memory.h \
- list.h handler.h
+ list.h handler.h command.h
kernel_elf_CFLAGS = $(COMMON_CFLAGS)
kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x10000,-Bstatic
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/echo.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/blocklist.c commands/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c\
normal/completion.c normal/main.c normal/menu_text.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/misc.c normal/script.c \
# Modules.
pkglib_MODULES = normal.mod halt.mod reboot.mod suspend.mod \
- multiboot.mod _multiboot.mod aout.mod serial.mod linux.mod \
- _linux.mod nand.mod memdisk.mod pci.mod lspci.mod datetime.mod \
+ multiboot.mod aout.mod serial.mod linux.mod \
+ nand.mod memdisk.mod pci.mod lspci.mod datetime.mod \
date.mod datehook.mod lsmmap.mod
#
# 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_mod_SOURCES = 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_text.c \
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod.
-_multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
+# For multiboot.mod.
+multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
loader/multiboot2.c \
loader/multiboot_loader.c
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod.
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
serial_mod_CFLAGS = $(COMMON_CFLAGS)
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/ieee1275/linux.c
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
+linux_mod_SOURCES = loader/i386/ieee1275/linux.c
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
kernel_img_SOURCES = kern/i386/pc/startup.S kern/main.c kern/device.c \
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/dl.c kern/i386/pc/init.c kern/i386/pc/mmap.c \
kern/parser.c kern/partition.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/env.c \
term/i386/pc/console.c term/i386/vga_common.c \
symlist.c
-CLEANFILES += kernel.img kernel.exec kernel_img-kern_i386_pc_startup.o kernel_img-kern_main.o kernel_img-kern_device.o kernel_img-kern_disk.o kernel_img-kern_dl.o kernel_img-kern_file.o kernel_img-kern_fs.o kernel_img-kern_err.o kernel_img-kern_misc.o kernel_img-kern_mm.o kernel_img-kern_loader.o kernel_img-kern_rescue.o kernel_img-kern_term.o kernel_img-kern_time.o kernel_img-kern_list.o kernel_img-kern_handler.o kernel_img-kern_i386_dl.o kernel_img-kern_i386_pc_init.o kernel_img-kern_i386_pc_mmap.o kernel_img-kern_parser.o kernel_img-kern_partition.o kernel_img-kern_i386_tsc.o kernel_img-kern_i386_pit.o kernel_img-kern_generic_rtc_get_time_ms.o kernel_img-kern_generic_millisleep.o kernel_img-kern_env.o kernel_img-term_i386_pc_console.o kernel_img-term_i386_vga_common.o kernel_img-symlist.o
-MOSTLYCLEANFILES += kernel_img-kern_i386_pc_startup.d kernel_img-kern_main.d kernel_img-kern_device.d kernel_img-kern_disk.d kernel_img-kern_dl.d kernel_img-kern_file.d kernel_img-kern_fs.d kernel_img-kern_err.d kernel_img-kern_misc.d kernel_img-kern_mm.d kernel_img-kern_loader.d kernel_img-kern_rescue.d kernel_img-kern_term.d kernel_img-kern_time.d kernel_img-kern_list.d kernel_img-kern_handler.d kernel_img-kern_i386_dl.d kernel_img-kern_i386_pc_init.d kernel_img-kern_i386_pc_mmap.d kernel_img-kern_parser.d kernel_img-kern_partition.d kernel_img-kern_i386_tsc.d kernel_img-kern_i386_pit.d kernel_img-kern_generic_rtc_get_time_ms.d kernel_img-kern_generic_millisleep.d kernel_img-kern_env.d kernel_img-term_i386_pc_console.d kernel_img-term_i386_vga_common.d kernel_img-symlist.d
+CLEANFILES += kernel.img kernel.exec kernel_img-kern_i386_pc_startup.o kernel_img-kern_main.o kernel_img-kern_device.o kernel_img-kern_disk.o kernel_img-kern_dl.o kernel_img-kern_file.o kernel_img-kern_fs.o kernel_img-kern_err.o kernel_img-kern_misc.o kernel_img-kern_mm.o kernel_img-kern_loader.o kernel_img-kern_rescue.o kernel_img-kern_term.o kernel_img-kern_time.o kernel_img-kern_list.o kernel_img-kern_handler.o kernel_img-kern_command.o kernel_img-kern_corecmd.o kernel_img-kern_i386_dl.o kernel_img-kern_i386_pc_init.o kernel_img-kern_i386_pc_mmap.o kernel_img-kern_parser.o kernel_img-kern_partition.o kernel_img-kern_i386_tsc.o kernel_img-kern_i386_pit.o kernel_img-kern_generic_rtc_get_time_ms.o kernel_img-kern_generic_millisleep.o kernel_img-kern_env.o kernel_img-term_i386_pc_console.o kernel_img-term_i386_vga_common.o kernel_img-symlist.o
+MOSTLYCLEANFILES += kernel_img-kern_i386_pc_startup.d kernel_img-kern_main.d kernel_img-kern_device.d kernel_img-kern_disk.d kernel_img-kern_dl.d kernel_img-kern_file.d kernel_img-kern_fs.d kernel_img-kern_err.d kernel_img-kern_misc.d kernel_img-kern_mm.d kernel_img-kern_loader.d kernel_img-kern_rescue.d kernel_img-kern_term.d kernel_img-kern_time.d kernel_img-kern_list.d kernel_img-kern_handler.d kernel_img-kern_command.d kernel_img-kern_corecmd.d kernel_img-kern_i386_dl.d kernel_img-kern_i386_pc_init.d kernel_img-kern_i386_pc_mmap.d kernel_img-kern_parser.d kernel_img-kern_partition.d kernel_img-kern_i386_tsc.d kernel_img-kern_i386_pit.d kernel_img-kern_generic_rtc_get_time_ms.d kernel_img-kern_generic_millisleep.d kernel_img-kern_env.d kernel_img-term_i386_pc_console.d kernel_img-term_i386_vga_common.d kernel_img-symlist.d
kernel.img: kernel.exec
$(OBJCOPY) -O binary -R .note -R .comment -R .note.gnu.build-id $< $@
-kernel.exec: kernel_img-kern_i386_pc_startup.o kernel_img-kern_main.o kernel_img-kern_device.o kernel_img-kern_disk.o kernel_img-kern_dl.o kernel_img-kern_file.o kernel_img-kern_fs.o kernel_img-kern_err.o kernel_img-kern_misc.o kernel_img-kern_mm.o kernel_img-kern_loader.o kernel_img-kern_rescue.o kernel_img-kern_term.o kernel_img-kern_time.o kernel_img-kern_list.o kernel_img-kern_handler.o kernel_img-kern_i386_dl.o kernel_img-kern_i386_pc_init.o kernel_img-kern_i386_pc_mmap.o kernel_img-kern_parser.o kernel_img-kern_partition.o kernel_img-kern_i386_tsc.o kernel_img-kern_i386_pit.o kernel_img-kern_generic_rtc_get_time_ms.o kernel_img-kern_generic_millisleep.o kernel_img-kern_env.o kernel_img-term_i386_pc_console.o kernel_img-term_i386_vga_common.o kernel_img-symlist.o
+kernel.exec: kernel_img-kern_i386_pc_startup.o kernel_img-kern_main.o kernel_img-kern_device.o kernel_img-kern_disk.o kernel_img-kern_dl.o kernel_img-kern_file.o kernel_img-kern_fs.o kernel_img-kern_err.o kernel_img-kern_misc.o kernel_img-kern_mm.o kernel_img-kern_loader.o kernel_img-kern_rescue.o kernel_img-kern_term.o kernel_img-kern_time.o kernel_img-kern_list.o kernel_img-kern_handler.o kernel_img-kern_command.o kernel_img-kern_corecmd.o kernel_img-kern_i386_dl.o kernel_img-kern_i386_pc_init.o kernel_img-kern_i386_pc_mmap.o kernel_img-kern_parser.o kernel_img-kern_partition.o kernel_img-kern_i386_tsc.o kernel_img-kern_i386_pit.o kernel_img-kern_generic_rtc_get_time_ms.o kernel_img-kern_generic_millisleep.o kernel_img-kern_env.o kernel_img-term_i386_pc_console.o kernel_img-term_i386_vga_common.o kernel_img-symlist.o
$(TARGET_CC) -o $@ $^ $(TARGET_LDFLAGS) $(kernel_img_LDFLAGS)
kernel_img-kern_i386_pc_startup.o: kern/i386/pc/startup.S $(kern/i386/pc/startup.S_DEPENDENCIES)
$(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_img_CFLAGS) -MD -c -o $@ $<
-include kernel_img-kern_handler.d
+kernel_img-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_img_CFLAGS) -MD -c -o $@ $<
+-include kernel_img-kern_command.d
+
+kernel_img-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_img_CFLAGS) -MD -c -o $@ $<
+-include kernel_img-kern_corecmd.d
+
kernel_img-kern_i386_dl.o: kern/i386/dl.c $(kern/i386/dl.c_DEPENDENCIES)
$(TARGET_CC) -Ikern/i386 -I$(srcdir)/kern/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_img_CFLAGS) -MD -c -o $@ $<
-include kernel_img-kern_i386_dl.d
$(TARGET_CC) -I. -I$(srcdir)/. $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_img_CFLAGS) -MD -c -o $@ $<
-include kernel_img-symlist.d
-kernel_img_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_img_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
machine/biosdisk.h machine/boot.h machine/console.h machine/init.h \
machine/memory.h machine/loader.h machine/vga.h machine/vbe.h \
- machine/kernel.h machine/pxe.h list.h handler.h
+ machine/kernel.h machine/pxe.h list.h handler.h command.h
kernel_img_CFLAGS = $(COMMON_CFLAGS)
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
kernel_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS) -Wl,-Ttext,$(GRUB_MEMORY_MACHINE_LINK_ADDR) $(COMMON_CFLAGS)
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/echo.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/blocklist.c commands/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c \
normal/completion.c normal/main.c normal/color.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/menu_text.c \
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c \
grub_emu_init.c
-CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_pc_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-disk_scsi.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_color.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_menu_text.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
-MOSTLYCLEANFILES += grub_emu-commands_boot.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_echo.d grub_emu-commands_help.d grub_emu-commands_handler.d grub_emu-commands_ls.d grub_emu-commands_test.d grub_emu-commands_search.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_i386_pc_halt.d grub_emu-commands_reboot.d grub_emu-commands_i386_cpuid.d grub_emu-disk_host.d grub_emu-disk_loopback.d grub_emu-disk_scsi.d grub_emu-fs_fshelp.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-normal_execute.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-normal_lexer.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-grub_script_tab.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-normal_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_function.d grub_emu-normal_completion.d grub_emu-normal_main.d grub_emu-normal_color.d grub_emu-normal_menu.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_menu_text.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-partmap_gpt.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_i386_pc_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_emu_init.d
+CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_pc_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-disk_scsi.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_color.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_menu_text.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
+MOSTLYCLEANFILES += grub_emu-commands_minicmd.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_echo.d grub_emu-commands_help.d grub_emu-commands_handler.d grub_emu-commands_ls.d grub_emu-commands_test.d grub_emu-commands_search.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_i386_pc_halt.d grub_emu-commands_reboot.d grub_emu-commands_i386_cpuid.d grub_emu-disk_host.d grub_emu-disk_loopback.d grub_emu-disk_scsi.d grub_emu-fs_fshelp.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-kern_command.d grub_emu-kern_corecmd.d grub_emu-commands_extcmd.d grub_emu-normal_execute.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-normal_lexer.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-grub_script_tab.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-lib_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_function.d grub_emu-normal_completion.d grub_emu-normal_main.d grub_emu-normal_color.d grub_emu-normal_menu.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_menu_text.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-partmap_gpt.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_i386_pc_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_emu_init.d
-grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_pc_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-disk_scsi.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_color.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_menu_text.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
- $(CC) -o $@ grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_pc_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-disk_scsi.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_color.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_menu_text.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
+grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_pc_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-disk_scsi.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_color.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_menu_text.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o
+ $(CC) -o $@ grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_echo.o grub_emu-commands_help.o grub_emu-commands_handler.o grub_emu-commands_ls.o grub_emu-commands_test.o grub_emu-commands_search.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_i386_pc_halt.o grub_emu-commands_reboot.o grub_emu-commands_i386_cpuid.o grub_emu-disk_host.o grub_emu-disk_loopback.o grub_emu-disk_scsi.o grub_emu-fs_fshelp.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-normal_execute.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-normal_lexer.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-grub_script_tab.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_function.o grub_emu-normal_completion.o grub_emu-normal_main.o grub_emu-normal_color.o grub_emu-normal_menu.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_menu_text.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-partmap_gpt.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_i386_pc_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
-grub_emu-commands_boot.o: commands/boot.c $(commands/boot.c_DEPENDENCIES)
+grub_emu-commands_minicmd.o: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-commands_boot.d
+-include grub_emu-commands_minicmd.d
grub_emu-commands_cat.o: commands/cat.c $(commands/cat.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
$(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-kern_handler.d
+grub_emu-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_command.d
+
+grub_emu-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_corecmd.d
+
+grub_emu-commands_extcmd.o: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES)
+ $(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-commands_extcmd.d
+
grub_emu-normal_execute.o: normal/execute.c $(normal/execute.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-normal_execute.d
$(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-kern_term.d
-grub_emu-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-normal_arg.d
+grub_emu-lib_arg.o: lib/arg.c $(lib/arg.c_DEPENDENCIES)
+ $(CC) -Ilib -I$(srcdir)/lib $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-lib_arg.d
grub_emu-normal_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
chmod +x $@
-# Modules.
-pkglib_MODULES = biosdisk.mod _chain.mod _linux.mod linux.mod normal.mod \
- _multiboot.mod chain.mod multiboot.mod reboot.mod halt.mod \
+pkglib_MODULES = biosdisk.mod chain.mod linux.mod normal.mod \
+ multiboot.mod reboot.mod halt.mod \
vbe.mod vbetest.mod vbeinfo.mod play.mod serial.mod \
- ata.mod vga.mod memdisk.mod pci.mod lspci.mod \
- aout.mod _bsd.mod bsd.mod pxe.mod pxecmd.mod datetime.mod date.mod \
+ ata.mod vga.mod memdisk.mod pci.mod lspci.mod \
+ aout.mod bsd.mod pxe.mod pxecmd.mod datetime.mod date.mod \
datehook.mod lsmmap.mod ata_pthru.mod hdparm.mod \
usb.mod uhci.mod ohci.mod usbtest.mod usbms.mod usb_keyboard.mod
biosdisk_mod_CFLAGS = $(COMMON_CFLAGS)
biosdisk_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _chain.mod.
-_chain_mod_SOURCES = loader/i386/pc/chainloader.c
-CLEANFILES += _chain.mod mod-_chain.o mod-_chain.c pre-_chain.o _chain_mod-loader_i386_pc_chainloader.o und-_chain.lst
-ifneq ($(_chain_mod_EXPORTS),no)
-CLEANFILES += def-_chain.lst
-DEFSYMFILES += def-_chain.lst
-endif
-MOSTLYCLEANFILES += _chain_mod-loader_i386_pc_chainloader.d
-UNDSYMFILES += und-_chain.lst
-
-_chain.mod: pre-_chain.o mod-_chain.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_chain_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_chain.o mod-_chain.o
- 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-_chain.o: $(_chain_mod_DEPENDENCIES) _chain_mod-loader_i386_pc_chainloader.o
- -rm -f $@
- $(TARGET_CC) $(_chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _chain_mod-loader_i386_pc_chainloader.o
-
-mod-_chain.o: mod-_chain.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -c -o $@ $<
-
-mod-_chain.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_chain' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_chain_mod_EXPORTS),no)
-def-_chain.lst: pre-_chain.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _chain/' > $@
-endif
-
-und-_chain.lst: pre-_chain.o
- echo '_chain' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_chain_mod-loader_i386_pc_chainloader.o: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -MD -c -o $@ $<
--include _chain_mod-loader_i386_pc_chainloader.d
-
-CLEANFILES += cmd-_chain_mod-loader_i386_pc_chainloader.lst fs-_chain_mod-loader_i386_pc_chainloader.lst partmap-_chain_mod-loader_i386_pc_chainloader.lst
-COMMANDFILES += cmd-_chain_mod-loader_i386_pc_chainloader.lst
-FSFILES += fs-_chain_mod-loader_i386_pc_chainloader.lst
-PARTMAPFILES += partmap-_chain_mod-loader_i386_pc_chainloader.lst
-
-cmd-_chain_mod-loader_i386_pc_chainloader.lst: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _chain > $@ || (rm -f $@; exit 1)
-
-fs-_chain_mod-loader_i386_pc_chainloader.lst: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _chain > $@ || (rm -f $@; exit 1)
-
-partmap-_chain_mod-loader_i386_pc_chainloader.lst: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _chain > $@ || (rm -f $@; exit 1)
-
-
-_chain_mod_CFLAGS = $(COMMON_CFLAGS)
-_chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For chain.mod.
-chain_mod_SOURCES = loader/i386/pc/chainloader_normal.c
-CLEANFILES += chain.mod mod-chain.o mod-chain.c pre-chain.o chain_mod-loader_i386_pc_chainloader_normal.o und-chain.lst
+chain_mod_SOURCES = loader/i386/pc/chainloader.c
+CLEANFILES += chain.mod mod-chain.o mod-chain.c pre-chain.o chain_mod-loader_i386_pc_chainloader.o und-chain.lst
ifneq ($(chain_mod_EXPORTS),no)
CLEANFILES += def-chain.lst
DEFSYMFILES += def-chain.lst
endif
-MOSTLYCLEANFILES += chain_mod-loader_i386_pc_chainloader_normal.d
+MOSTLYCLEANFILES += chain_mod-loader_i386_pc_chainloader.d
UNDSYMFILES += und-chain.lst
chain.mod: pre-chain.o mod-chain.o $(TARGET_OBJ2ELF)
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-chain.o: $(chain_mod_DEPENDENCIES) chain_mod-loader_i386_pc_chainloader_normal.o
+pre-chain.o: $(chain_mod_DEPENDENCIES) chain_mod-loader_i386_pc_chainloader.o
-rm -f $@
- $(TARGET_CC) $(chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ chain_mod-loader_i386_pc_chainloader_normal.o
+ $(TARGET_CC) $(chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ chain_mod-loader_i386_pc_chainloader.o
mod-chain.o: mod-chain.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -c -o $@ $<
echo 'chain' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-chain_mod-loader_i386_pc_chainloader_normal.o: loader/i386/pc/chainloader_normal.c $(loader/i386/pc/chainloader_normal.c_DEPENDENCIES)
+chain_mod-loader_i386_pc_chainloader.o: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES)
$(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -MD -c -o $@ $<
--include chain_mod-loader_i386_pc_chainloader_normal.d
+-include chain_mod-loader_i386_pc_chainloader.d
-CLEANFILES += cmd-chain_mod-loader_i386_pc_chainloader_normal.lst fs-chain_mod-loader_i386_pc_chainloader_normal.lst partmap-chain_mod-loader_i386_pc_chainloader_normal.lst
-COMMANDFILES += cmd-chain_mod-loader_i386_pc_chainloader_normal.lst
-FSFILES += fs-chain_mod-loader_i386_pc_chainloader_normal.lst
-PARTMAPFILES += partmap-chain_mod-loader_i386_pc_chainloader_normal.lst
+CLEANFILES += cmd-chain_mod-loader_i386_pc_chainloader.lst fs-chain_mod-loader_i386_pc_chainloader.lst partmap-chain_mod-loader_i386_pc_chainloader.lst
+COMMANDFILES += cmd-chain_mod-loader_i386_pc_chainloader.lst
+FSFILES += fs-chain_mod-loader_i386_pc_chainloader.lst
+PARTMAPFILES += partmap-chain_mod-loader_i386_pc_chainloader.lst
-cmd-chain_mod-loader_i386_pc_chainloader_normal.lst: loader/i386/pc/chainloader_normal.c $(loader/i386/pc/chainloader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-chain_mod-loader_i386_pc_chainloader.lst: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh chain > $@ || (rm -f $@; exit 1)
-fs-chain_mod-loader_i386_pc_chainloader_normal.lst: loader/i386/pc/chainloader_normal.c $(loader/i386/pc/chainloader_normal.c_DEPENDENCIES) genfslist.sh
+fs-chain_mod-loader_i386_pc_chainloader.lst: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh chain > $@ || (rm -f $@; exit 1)
-partmap-chain_mod-loader_i386_pc_chainloader_normal.lst: loader/i386/pc/chainloader_normal.c $(loader/i386/pc/chainloader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-chain_mod-loader_i386_pc_chainloader.lst: loader/i386/pc/chainloader.c $(loader/i386/pc/chainloader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh chain > $@ || (rm -f $@; exit 1)
chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/pc/linux.c
-CLEANFILES += _linux.mod mod-_linux.o mod-_linux.c pre-_linux.o _linux_mod-loader_i386_pc_linux.o und-_linux.lst
-ifneq ($(_linux_mod_EXPORTS),no)
-CLEANFILES += def-_linux.lst
-DEFSYMFILES += def-_linux.lst
-endif
-MOSTLYCLEANFILES += _linux_mod-loader_i386_pc_linux.d
-UNDSYMFILES += und-_linux.lst
-
-_linux.mod: pre-_linux.o mod-_linux.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_linux.o mod-_linux.o
- 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-_linux.o: $(_linux_mod_DEPENDENCIES) _linux_mod-loader_i386_pc_linux.o
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _linux_mod-loader_i386_pc_linux.o
-
-mod-_linux.o: mod-_linux.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -c -o $@ $<
-
-mod-_linux.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_linux' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_linux_mod_EXPORTS),no)
-def-_linux.lst: pre-_linux.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _linux/' > $@
-endif
-
-und-_linux.lst: pre-_linux.o
- echo '_linux' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_linux_mod-loader_i386_pc_linux.o: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -MD -c -o $@ $<
--include _linux_mod-loader_i386_pc_linux.d
-
-CLEANFILES += cmd-_linux_mod-loader_i386_pc_linux.lst fs-_linux_mod-loader_i386_pc_linux.lst partmap-_linux_mod-loader_i386_pc_linux.lst
-COMMANDFILES += cmd-_linux_mod-loader_i386_pc_linux.lst
-FSFILES += fs-_linux_mod-loader_i386_pc_linux.lst
-PARTMAPFILES += partmap-_linux_mod-loader_i386_pc_linux.lst
-
-cmd-_linux_mod-loader_i386_pc_linux.lst: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _linux > $@ || (rm -f $@; exit 1)
-
-fs-_linux_mod-loader_i386_pc_linux.lst: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _linux > $@ || (rm -f $@; exit 1)
-
-partmap-_linux_mod-loader_i386_pc_linux.lst: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _linux > $@ || (rm -f $@; exit 1)
-
-
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
-CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_linux_normal.o und-linux.lst
+linux_mod_SOURCES = loader/i386/pc/linux.c
+CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_i386_pc_linux.o und-linux.lst
ifneq ($(linux_mod_EXPORTS),no)
CLEANFILES += def-linux.lst
DEFSYMFILES += def-linux.lst
endif
-MOSTLYCLEANFILES += linux_mod-loader_linux_normal.d
+MOSTLYCLEANFILES += linux_mod-loader_i386_pc_linux.d
UNDSYMFILES += und-linux.lst
linux.mod: pre-linux.o mod-linux.o $(TARGET_OBJ2ELF)
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-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_linux_normal.o
+pre-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_i386_pc_linux.o
-rm -f $@
- $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_linux_normal.o
+ $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_i386_pc_linux.o
mod-linux.o: mod-linux.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $<
echo 'linux' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-linux_mod-loader_linux_normal.o: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
--include linux_mod-loader_linux_normal.d
+linux_mod-loader_i386_pc_linux.o: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
+-include linux_mod-loader_i386_pc_linux.d
-CLEANFILES += cmd-linux_mod-loader_linux_normal.lst fs-linux_mod-loader_linux_normal.lst partmap-linux_mod-loader_linux_normal.lst
-COMMANDFILES += cmd-linux_mod-loader_linux_normal.lst
-FSFILES += fs-linux_mod-loader_linux_normal.lst
-PARTMAPFILES += partmap-linux_mod-loader_linux_normal.lst
+CLEANFILES += cmd-linux_mod-loader_i386_pc_linux.lst fs-linux_mod-loader_i386_pc_linux.lst partmap-linux_mod-loader_i386_pc_linux.lst
+COMMANDFILES += cmd-linux_mod-loader_i386_pc_linux.lst
+FSFILES += fs-linux_mod-loader_i386_pc_linux.lst
+PARTMAPFILES += partmap-linux_mod-loader_i386_pc_linux.lst
-cmd-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
+cmd-linux_mod-loader_i386_pc_linux.lst: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
-fs-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
+fs-linux_mod-loader_i386_pc_linux.lst: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
-partmap-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
+partmap-linux_mod-loader_i386_pc_linux.lst: loader/i386/pc/linux.c $(loader/i386/pc/linux.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
linux_mod_CFLAGS = $(COMMON_CFLAGS)
# 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_mod_SOURCES = 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_text.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_menu_text.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
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.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_text.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_text.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
+MOSTLYCLEANFILES += 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_text.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)
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_text.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
+pre-normal.o: $(normal_mod_DEPENDENCIES) 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_text.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_text.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
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -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_text.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 $@ $<
echo 'normal' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-normal_mod-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_arg.d
-
-CLEANFILES += cmd-normal_mod-normal_arg.lst fs-normal_mod-normal_arg.lst partmap-normal_mod-normal_arg.lst
-COMMANDFILES += cmd-normal_mod-normal_arg.lst
-FSFILES += fs-normal_mod-normal_arg.lst
-PARTMAPFILES += partmap-normal_mod-normal_arg.lst
-
-cmd-normal_mod-normal_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_cmdline.d
serial_mod_CFLAGS = $(COMMON_CFLAGS)
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod.
-_multiboot_mod_SOURCES = loader/i386/multiboot.c \
- loader/i386/pc/multiboot2.c \
- loader/multiboot2.c \
- loader/multiboot_loader.c
-CLEANFILES += _multiboot.mod mod-_multiboot.o mod-_multiboot.c pre-_multiboot.o _multiboot_mod-loader_i386_multiboot.o _multiboot_mod-loader_i386_pc_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o und-_multiboot.lst
-ifneq ($(_multiboot_mod_EXPORTS),no)
-CLEANFILES += def-_multiboot.lst
-DEFSYMFILES += def-_multiboot.lst
+# For multiboot.mod.
+multiboot_mod_SOURCES = loader/i386/multiboot.c \
+ loader/i386/pc/multiboot2.c \
+ loader/multiboot2.c \
+ loader/multiboot_loader.c
+CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_i386_multiboot.o multiboot_mod-loader_i386_pc_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o und-multiboot.lst
+ifneq ($(multiboot_mod_EXPORTS),no)
+CLEANFILES += def-multiboot.lst
+DEFSYMFILES += def-multiboot.lst
endif
-MOSTLYCLEANFILES += _multiboot_mod-loader_i386_multiboot.d _multiboot_mod-loader_i386_pc_multiboot2.d _multiboot_mod-loader_multiboot2.d _multiboot_mod-loader_multiboot_loader.d
-UNDSYMFILES += und-_multiboot.lst
+MOSTLYCLEANFILES += multiboot_mod-loader_i386_multiboot.d multiboot_mod-loader_i386_pc_multiboot2.d multiboot_mod-loader_multiboot2.d multiboot_mod-loader_multiboot_loader.d
+UNDSYMFILES += und-multiboot.lst
-_multiboot.mod: pre-_multiboot.o mod-_multiboot.o $(TARGET_OBJ2ELF)
+multiboot.mod: pre-multiboot.o mod-multiboot.o $(TARGET_OBJ2ELF)
-rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_multiboot.o mod-_multiboot.o
+ $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-multiboot.o mod-multiboot.o
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-_multiboot.o: $(_multiboot_mod_DEPENDENCIES) _multiboot_mod-loader_i386_multiboot.o _multiboot_mod-loader_i386_pc_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
+pre-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_i386_multiboot.o multiboot_mod-loader_i386_pc_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
-rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _multiboot_mod-loader_i386_multiboot.o _multiboot_mod-loader_i386_pc_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
+ $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_i386_multiboot.o multiboot_mod-loader_i386_pc_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
-mod-_multiboot.o: mod-_multiboot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -c -o $@ $<
+mod-multiboot.o: mod-multiboot.c
+ $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $<
-mod-_multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_multiboot' $< > $@ || (rm -f $@; exit 1)
+mod-multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
+ sh $(srcdir)/genmodsrc.sh 'multiboot' $< > $@ || (rm -f $@; exit 1)
-ifneq ($(_multiboot_mod_EXPORTS),no)
-def-_multiboot.lst: pre-_multiboot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _multiboot/' > $@
+ifneq ($(multiboot_mod_EXPORTS),no)
+def-multiboot.lst: pre-multiboot.o
+ $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 multiboot/' > $@
endif
-und-_multiboot.lst: pre-_multiboot.o
- echo '_multiboot' > $@
+und-multiboot.lst: pre-multiboot.o
+ echo 'multiboot' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-_multiboot_mod-loader_i386_multiboot.o: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_i386_multiboot.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_i386_multiboot.lst fs-_multiboot_mod-loader_i386_multiboot.lst partmap-_multiboot_mod-loader_i386_multiboot.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_i386_multiboot.lst
-FSFILES += fs-_multiboot_mod-loader_i386_multiboot.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_i386_multiboot.lst
-
-cmd-_multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod-loader_i386_pc_multiboot2.o: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_i386_pc_multiboot2.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_i386_pc_multiboot2.lst fs-_multiboot_mod-loader_i386_pc_multiboot2.lst partmap-_multiboot_mod-loader_i386_pc_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_i386_pc_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_i386_pc_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_i386_pc_multiboot2.lst
-
-cmd-_multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
+multiboot_mod-loader_i386_multiboot.o: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_i386_multiboot.d
-partmap-_multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
+CLEANFILES += cmd-multiboot_mod-loader_i386_multiboot.lst fs-multiboot_mod-loader_i386_multiboot.lst partmap-multiboot_mod-loader_i386_multiboot.lst
+COMMANDFILES += cmd-multiboot_mod-loader_i386_multiboot.lst
+FSFILES += fs-multiboot_mod-loader_i386_multiboot.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_i386_multiboot.lst
+cmd-multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-_multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot2.d
+fs-multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot2.lst fs-_multiboot_mod-loader_multiboot2.lst partmap-_multiboot_mod-loader_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot2.lst
+partmap-multiboot_mod-loader_i386_multiboot.lst: loader/i386/multiboot.c $(loader/i386/multiboot.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
-cmd-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-fs-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
+multiboot_mod-loader_i386_pc_multiboot2.o: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_i386_pc_multiboot2.d
-partmap-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
+CLEANFILES += cmd-multiboot_mod-loader_i386_pc_multiboot2.lst fs-multiboot_mod-loader_i386_pc_multiboot2.lst partmap-multiboot_mod-loader_i386_pc_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_i386_pc_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_i386_pc_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_i386_pc_multiboot2.lst
+cmd-multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-_multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot_loader.d
+fs-multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst fs-_multiboot_mod-loader_multiboot_loader.lst partmap-_multiboot_mod-loader_multiboot_loader.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot_loader.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot_loader.lst
+partmap-multiboot_mod-loader_i386_pc_multiboot2.lst: loader/i386/pc/multiboot2.c $(loader/i386/pc/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
-cmd-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-fs-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod.
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
-CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_multiboot_loader_normal.o und-multiboot.lst
-ifneq ($(multiboot_mod_EXPORTS),no)
-CLEANFILES += def-multiboot.lst
-DEFSYMFILES += def-multiboot.lst
-endif
-MOSTLYCLEANFILES += multiboot_mod-loader_multiboot_loader_normal.d
-UNDSYMFILES += und-multiboot.lst
-
-multiboot.mod: pre-multiboot.o mod-multiboot.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-multiboot.o mod-multiboot.o
- 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 $@
+multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_multiboot2.d
-pre-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_multiboot_loader_normal.o
- -rm -f $@
- $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_multiboot_loader_normal.o
+CLEANFILES += cmd-multiboot_mod-loader_multiboot2.lst fs-multiboot_mod-loader_multiboot2.lst partmap-multiboot_mod-loader_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot2.lst
-mod-multiboot.o: mod-multiboot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $<
+cmd-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-mod-multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh 'multiboot' $< > $@ || (rm -f $@; exit 1)
+fs-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-ifneq ($(multiboot_mod_EXPORTS),no)
-def-multiboot.lst: pre-multiboot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 multiboot/' > $@
-endif
+partmap-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
-und-multiboot.lst: pre-multiboot.o
- echo 'multiboot' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-multiboot_mod-loader_multiboot_loader_normal.o: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES)
+multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
$(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include multiboot_mod-loader_multiboot_loader_normal.d
+-include multiboot_mod-loader_multiboot_loader.d
-CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst fs-multiboot_mod-loader_multiboot_loader_normal.lst partmap-multiboot_mod-loader_multiboot_loader_normal.lst
-COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst
-FSFILES += fs-multiboot_mod-loader_multiboot_loader_normal.lst
-PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader_normal.lst
+CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader.lst fs-multiboot_mod-loader_multiboot_loader.lst partmap-multiboot_mod-loader_multiboot_loader.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader.lst
+FSFILES += fs-multiboot_mod-loader_multiboot_loader.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader.lst
-cmd-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-fs-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genfslist.sh
+fs-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-partmap-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
aout_mod_CFLAGS = $(COMMON_CFLAGS)
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _bsd.mod
-_bsd_mod_SOURCES = loader/i386/bsd.c
-CLEANFILES += _bsd.mod mod-_bsd.o mod-_bsd.c pre-_bsd.o _bsd_mod-loader_i386_bsd.o und-_bsd.lst
-ifneq ($(_bsd_mod_EXPORTS),no)
-CLEANFILES += def-_bsd.lst
-DEFSYMFILES += def-_bsd.lst
-endif
-MOSTLYCLEANFILES += _bsd_mod-loader_i386_bsd.d
-UNDSYMFILES += und-_bsd.lst
-
-_bsd.mod: pre-_bsd.o mod-_bsd.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_bsd_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_bsd.o mod-_bsd.o
- 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-_bsd.o: $(_bsd_mod_DEPENDENCIES) _bsd_mod-loader_i386_bsd.o
- -rm -f $@
- $(TARGET_CC) $(_bsd_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _bsd_mod-loader_i386_bsd.o
-
-mod-_bsd.o: mod-_bsd.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_bsd_mod_CFLAGS) -c -o $@ $<
-
-mod-_bsd.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_bsd' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_bsd_mod_EXPORTS),no)
-def-_bsd.lst: pre-_bsd.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _bsd/' > $@
-endif
-
-und-_bsd.lst: pre-_bsd.o
- echo '_bsd' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_bsd_mod-loader_i386_bsd.o: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_bsd_mod_CFLAGS) -MD -c -o $@ $<
--include _bsd_mod-loader_i386_bsd.d
-
-CLEANFILES += cmd-_bsd_mod-loader_i386_bsd.lst fs-_bsd_mod-loader_i386_bsd.lst partmap-_bsd_mod-loader_i386_bsd.lst
-COMMANDFILES += cmd-_bsd_mod-loader_i386_bsd.lst
-FSFILES += fs-_bsd_mod-loader_i386_bsd.lst
-PARTMAPFILES += partmap-_bsd_mod-loader_i386_bsd.lst
-
-cmd-_bsd_mod-loader_i386_bsd.lst: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_bsd_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _bsd > $@ || (rm -f $@; exit 1)
-
-fs-_bsd_mod-loader_i386_bsd.lst: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_bsd_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _bsd > $@ || (rm -f $@; exit 1)
-
-partmap-_bsd_mod-loader_i386_bsd.lst: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_bsd_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _bsd > $@ || (rm -f $@; exit 1)
-
-
-_bsd_mod_CFLAGS = $(COMMON_CFLAGS)
-_bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For bsd.mod
-bsd_mod_SOURCES = loader/i386/bsd_normal.c
-CLEANFILES += bsd.mod mod-bsd.o mod-bsd.c pre-bsd.o bsd_mod-loader_i386_bsd_normal.o und-bsd.lst
+bsd_mod_SOURCES = loader/i386/bsd.c
+CLEANFILES += bsd.mod mod-bsd.o mod-bsd.c pre-bsd.o bsd_mod-loader_i386_bsd.o und-bsd.lst
ifneq ($(bsd_mod_EXPORTS),no)
CLEANFILES += def-bsd.lst
DEFSYMFILES += def-bsd.lst
endif
-MOSTLYCLEANFILES += bsd_mod-loader_i386_bsd_normal.d
+MOSTLYCLEANFILES += bsd_mod-loader_i386_bsd.d
UNDSYMFILES += und-bsd.lst
bsd.mod: pre-bsd.o mod-bsd.o $(TARGET_OBJ2ELF)
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-bsd.o: $(bsd_mod_DEPENDENCIES) bsd_mod-loader_i386_bsd_normal.o
+pre-bsd.o: $(bsd_mod_DEPENDENCIES) bsd_mod-loader_i386_bsd.o
-rm -f $@
- $(TARGET_CC) $(bsd_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ bsd_mod-loader_i386_bsd_normal.o
+ $(TARGET_CC) $(bsd_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ bsd_mod-loader_i386_bsd.o
mod-bsd.o: mod-bsd.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(bsd_mod_CFLAGS) -c -o $@ $<
echo 'bsd' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-bsd_mod-loader_i386_bsd_normal.o: loader/i386/bsd_normal.c $(loader/i386/bsd_normal.c_DEPENDENCIES)
+bsd_mod-loader_i386_bsd.o: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES)
$(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(bsd_mod_CFLAGS) -MD -c -o $@ $<
--include bsd_mod-loader_i386_bsd_normal.d
+-include bsd_mod-loader_i386_bsd.d
-CLEANFILES += cmd-bsd_mod-loader_i386_bsd_normal.lst fs-bsd_mod-loader_i386_bsd_normal.lst partmap-bsd_mod-loader_i386_bsd_normal.lst
-COMMANDFILES += cmd-bsd_mod-loader_i386_bsd_normal.lst
-FSFILES += fs-bsd_mod-loader_i386_bsd_normal.lst
-PARTMAPFILES += partmap-bsd_mod-loader_i386_bsd_normal.lst
+CLEANFILES += cmd-bsd_mod-loader_i386_bsd.lst fs-bsd_mod-loader_i386_bsd.lst partmap-bsd_mod-loader_i386_bsd.lst
+COMMANDFILES += cmd-bsd_mod-loader_i386_bsd.lst
+FSFILES += fs-bsd_mod-loader_i386_bsd.lst
+PARTMAPFILES += partmap-bsd_mod-loader_i386_bsd.lst
-cmd-bsd_mod-loader_i386_bsd_normal.lst: loader/i386/bsd_normal.c $(loader/i386/bsd_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-bsd_mod-loader_i386_bsd.lst: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(bsd_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh bsd > $@ || (rm -f $@; exit 1)
-fs-bsd_mod-loader_i386_bsd_normal.lst: loader/i386/bsd_normal.c $(loader/i386/bsd_normal.c_DEPENDENCIES) genfslist.sh
+fs-bsd_mod-loader_i386_bsd.lst: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(bsd_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh bsd > $@ || (rm -f $@; exit 1)
-partmap-bsd_mod-loader_i386_bsd_normal.lst: loader/i386/bsd_normal.c $(loader/i386/bsd_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-bsd_mod-loader_i386_bsd.lst: loader/i386/bsd.c $(loader/i386/bsd.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader/i386 -I$(srcdir)/loader/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(bsd_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh bsd > $@ || (rm -f $@; exit 1)
kernel_img_SOURCES = kern/i386/pc/startup.S kern/main.c kern/device.c \
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/dl.c kern/i386/pc/init.c kern/i386/pc/mmap.c \
kern/parser.c kern/partition.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/env.c \
term/i386/pc/console.c term/i386/vga_common.c \
symlist.c
-kernel_img_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_img_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
machine/biosdisk.h machine/boot.h machine/console.h machine/init.h \
machine/memory.h machine/loader.h machine/vga.h machine/vbe.h \
- machine/kernel.h machine/pxe.h list.h handler.h
+ machine/kernel.h machine/pxe.h list.h handler.h command.h
kernel_img_CFLAGS = $(COMMON_CFLAGS)
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
kernel_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS) -Wl,-Ttext,$(GRUB_MEMORY_MACHINE_LINK_ADDR) $(COMMON_CFLAGS)
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/echo.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/blocklist.c commands/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c \
normal/completion.c normal/main.c normal/color.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/menu_text.c \
# For grub-mkrescue.
grub_mkrescue_SOURCES = util/i386/pc/grub-mkrescue.in
-# Modules.
-pkglib_MODULES = biosdisk.mod _chain.mod _linux.mod linux.mod normal.mod \
- _multiboot.mod chain.mod multiboot.mod reboot.mod halt.mod \
+pkglib_MODULES = biosdisk.mod chain.mod linux.mod normal.mod \
+ multiboot.mod reboot.mod halt.mod \
vbe.mod vbetest.mod vbeinfo.mod play.mod serial.mod \
- ata.mod vga.mod memdisk.mod pci.mod lspci.mod \
- aout.mod _bsd.mod bsd.mod pxe.mod pxecmd.mod datetime.mod date.mod \
+ ata.mod vga.mod memdisk.mod pci.mod lspci.mod \
+ aout.mod bsd.mod pxe.mod pxecmd.mod datetime.mod date.mod \
datehook.mod lsmmap.mod ata_pthru.mod hdparm.mod \
usb.mod uhci.mod ohci.mod usbtest.mod usbms.mod usb_keyboard.mod
biosdisk_mod_CFLAGS = $(COMMON_CFLAGS)
biosdisk_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _chain.mod.
-_chain_mod_SOURCES = loader/i386/pc/chainloader.c
-_chain_mod_CFLAGS = $(COMMON_CFLAGS)
-_chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For chain.mod.
-chain_mod_SOURCES = loader/i386/pc/chainloader_normal.c
+chain_mod_SOURCES = loader/i386/pc/chainloader.c
chain_mod_CFLAGS = $(COMMON_CFLAGS)
chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/pc/linux.c
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
+linux_mod_SOURCES = loader/i386/pc/linux.c
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.c \
serial_mod_CFLAGS = $(COMMON_CFLAGS)
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod.
-_multiboot_mod_SOURCES = loader/i386/multiboot.c \
- loader/i386/pc/multiboot2.c \
- loader/multiboot2.c \
- loader/multiboot_loader.c
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For multiboot.mod.
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
+multiboot_mod_SOURCES = loader/i386/multiboot.c \
+ loader/i386/pc/multiboot2.c \
+ loader/multiboot2.c \
+ loader/multiboot_loader.c
multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
aout_mod_CFLAGS = $(COMMON_CFLAGS)
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _bsd.mod
-_bsd_mod_SOURCES = loader/i386/bsd.c
-_bsd_mod_CFLAGS = $(COMMON_CFLAGS)
-_bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For bsd.mod
-bsd_mod_SOURCES = loader/i386/bsd_normal.c
+bsd_mod_SOURCES = loader/i386/bsd.c
bsd_mod_CFLAGS = $(COMMON_CFLAGS)
bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
MOSTLYCLEANFILES += symlist.c kernel_syms.lst
DEFSYMFILES += kernel_syms.lst
-kernel_elf_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_elf_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h misc.h mm.h net.h parser.h rescue.h \
symbol.h term.h time.h types.h powerpc/libgcc.h loader.h partition.h \
pc_partition.h ieee1275/ieee1275.h machine/kernel.h handler.h
# For grub-emu
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/help.c \
commands/search.c commands/handler.c commands/test.c \
commands/ls.c commands/blocklist.c commands/hexdump.c \
kern/err.c kern/file.c kern/fs.c kern/loader.c kern/main.c \
kern/misc.c kern/parser.c kern/partition.c kern/rescue.c \
kern/term.c kern/list.c kern/handler.c fs/fshelp.c \
- normal/arg.c normal/cmdline.c normal/command.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
+ lib/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_text.c \
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c \
grub_script.tab.c grub_emu_init.c
-CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_help.o grub_emu-commands_search.o grub_emu-commands_handler.o grub_emu-commands_test.o grub_emu-commands_ls.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-fs_fshelp.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_completion.o grub_emu-normal_execute.o grub_emu-normal_function.o grub_emu-normal_lexer.o grub_emu-normal_main.o grub_emu-normal_menu.o grub_emu-normal_menu_text.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_powerpc_ieee1275_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_script_tab.o grub_emu-grub_emu_init.o
-MOSTLYCLEANFILES += grub_emu-commands_boot.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_help.d grub_emu-commands_search.d grub_emu-commands_handler.d grub_emu-commands_test.d grub_emu-commands_ls.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_halt.d grub_emu-commands_reboot.d grub_emu-disk_loopback.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-fs_fshelp.d grub_emu-normal_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_completion.d grub_emu-normal_execute.d grub_emu-normal_function.d grub_emu-normal_lexer.d grub_emu-normal_main.d grub_emu-normal_menu.d grub_emu-normal_menu_text.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-normal_color.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_powerpc_ieee1275_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_script_tab.d grub_emu-grub_emu_init.d
+CLEANFILES += grub-emu$(EXEEXT) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_help.o grub_emu-commands_search.o grub_emu-commands_handler.o grub_emu-commands_test.o grub_emu-commands_ls.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-fs_fshelp.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_completion.o grub_emu-normal_execute.o grub_emu-normal_function.o grub_emu-normal_lexer.o grub_emu-normal_main.o grub_emu-normal_menu.o grub_emu-normal_menu_text.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_powerpc_ieee1275_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_script_tab.o grub_emu-grub_emu_init.o
+MOSTLYCLEANFILES += grub_emu-commands_minicmd.d grub_emu-commands_cat.d grub_emu-commands_cmp.d grub_emu-commands_configfile.d grub_emu-commands_help.d grub_emu-commands_search.d grub_emu-commands_handler.d grub_emu-commands_test.d grub_emu-commands_ls.d grub_emu-commands_blocklist.d grub_emu-commands_hexdump.d grub_emu-lib_hexdump.d grub_emu-commands_halt.d grub_emu-commands_reboot.d grub_emu-disk_loopback.d grub_emu-fs_affs.d grub_emu-fs_cpio.d grub_emu-fs_fat.d grub_emu-fs_ext2.d grub_emu-fs_hfs.d grub_emu-fs_hfsplus.d grub_emu-fs_iso9660.d grub_emu-fs_udf.d grub_emu-fs_jfs.d grub_emu-fs_minix.d grub_emu-fs_ntfs.d grub_emu-fs_ntfscomp.d grub_emu-fs_reiserfs.d grub_emu-fs_sfs.d grub_emu-fs_ufs.d grub_emu-fs_xfs.d grub_emu-fs_afs.d grub_emu-fs_tar.d grub_emu-io_gzio.d grub_emu-kern_device.d grub_emu-kern_disk.d grub_emu-kern_dl.d grub_emu-kern_elf.d grub_emu-kern_env.d grub_emu-kern_err.d grub_emu-kern_file.d grub_emu-kern_fs.d grub_emu-kern_loader.d grub_emu-kern_main.d grub_emu-kern_misc.d grub_emu-kern_parser.d grub_emu-kern_partition.d grub_emu-kern_rescue.d grub_emu-kern_term.d grub_emu-kern_list.d grub_emu-kern_handler.d grub_emu-fs_fshelp.d grub_emu-kern_command.d grub_emu-kern_corecmd.d grub_emu-commands_extcmd.d grub_emu-lib_arg.d grub_emu-normal_cmdline.d grub_emu-normal_command.d grub_emu-normal_completion.d grub_emu-normal_execute.d grub_emu-normal_function.d grub_emu-normal_lexer.d grub_emu-normal_main.d grub_emu-normal_menu.d grub_emu-normal_menu_text.d grub_emu-normal_menu_entry.d grub_emu-normal_menu_viewer.d grub_emu-normal_misc.d grub_emu-normal_script.d grub_emu-normal_color.d grub_emu-partmap_amiga.d grub_emu-partmap_apple.d grub_emu-partmap_pc.d grub_emu-partmap_sun.d grub_emu-partmap_acorn.d grub_emu-util_console.d grub_emu-util_hostfs.d grub_emu-util_grub_emu.d grub_emu-util_misc.d grub_emu-util_hostdisk.d grub_emu-util_getroot.d grub_emu-util_powerpc_ieee1275_misc.d grub_emu-disk_raid.d grub_emu-disk_raid5_recover.d grub_emu-disk_raid6_recover.d grub_emu-disk_mdraid_linux.d grub_emu-disk_dmraid_nvidia.d grub_emu-disk_lvm.d grub_emu-grub_script_tab.d grub_emu-grub_emu_init.d
-grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_help.o grub_emu-commands_search.o grub_emu-commands_handler.o grub_emu-commands_test.o grub_emu-commands_ls.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-fs_fshelp.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_completion.o grub_emu-normal_execute.o grub_emu-normal_function.o grub_emu-normal_lexer.o grub_emu-normal_main.o grub_emu-normal_menu.o grub_emu-normal_menu_text.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_powerpc_ieee1275_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_script_tab.o grub_emu-grub_emu_init.o
- $(CC) -o $@ grub_emu-commands_boot.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_help.o grub_emu-commands_search.o grub_emu-commands_handler.o grub_emu-commands_test.o grub_emu-commands_ls.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-fs_fshelp.o grub_emu-normal_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_completion.o grub_emu-normal_execute.o grub_emu-normal_function.o grub_emu-normal_lexer.o grub_emu-normal_main.o grub_emu-normal_menu.o grub_emu-normal_menu_text.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_powerpc_ieee1275_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_script_tab.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
+grub-emu: $(grub_emu_DEPENDENCIES) grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_help.o grub_emu-commands_search.o grub_emu-commands_handler.o grub_emu-commands_test.o grub_emu-commands_ls.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-fs_fshelp.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_completion.o grub_emu-normal_execute.o grub_emu-normal_function.o grub_emu-normal_lexer.o grub_emu-normal_main.o grub_emu-normal_menu.o grub_emu-normal_menu_text.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_powerpc_ieee1275_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_script_tab.o grub_emu-grub_emu_init.o
+ $(CC) -o $@ grub_emu-commands_minicmd.o grub_emu-commands_cat.o grub_emu-commands_cmp.o grub_emu-commands_configfile.o grub_emu-commands_help.o grub_emu-commands_search.o grub_emu-commands_handler.o grub_emu-commands_test.o grub_emu-commands_ls.o grub_emu-commands_blocklist.o grub_emu-commands_hexdump.o grub_emu-lib_hexdump.o grub_emu-commands_halt.o grub_emu-commands_reboot.o grub_emu-disk_loopback.o grub_emu-fs_affs.o grub_emu-fs_cpio.o grub_emu-fs_fat.o grub_emu-fs_ext2.o grub_emu-fs_hfs.o grub_emu-fs_hfsplus.o grub_emu-fs_iso9660.o grub_emu-fs_udf.o grub_emu-fs_jfs.o grub_emu-fs_minix.o grub_emu-fs_ntfs.o grub_emu-fs_ntfscomp.o grub_emu-fs_reiserfs.o grub_emu-fs_sfs.o grub_emu-fs_ufs.o grub_emu-fs_xfs.o grub_emu-fs_afs.o grub_emu-fs_tar.o grub_emu-io_gzio.o grub_emu-kern_device.o grub_emu-kern_disk.o grub_emu-kern_dl.o grub_emu-kern_elf.o grub_emu-kern_env.o grub_emu-kern_err.o grub_emu-kern_file.o grub_emu-kern_fs.o grub_emu-kern_loader.o grub_emu-kern_main.o grub_emu-kern_misc.o grub_emu-kern_parser.o grub_emu-kern_partition.o grub_emu-kern_rescue.o grub_emu-kern_term.o grub_emu-kern_list.o grub_emu-kern_handler.o grub_emu-fs_fshelp.o grub_emu-kern_command.o grub_emu-kern_corecmd.o grub_emu-commands_extcmd.o grub_emu-lib_arg.o grub_emu-normal_cmdline.o grub_emu-normal_command.o grub_emu-normal_completion.o grub_emu-normal_execute.o grub_emu-normal_function.o grub_emu-normal_lexer.o grub_emu-normal_main.o grub_emu-normal_menu.o grub_emu-normal_menu_text.o grub_emu-normal_menu_entry.o grub_emu-normal_menu_viewer.o grub_emu-normal_misc.o grub_emu-normal_script.o grub_emu-normal_color.o grub_emu-partmap_amiga.o grub_emu-partmap_apple.o grub_emu-partmap_pc.o grub_emu-partmap_sun.o grub_emu-partmap_acorn.o grub_emu-util_console.o grub_emu-util_hostfs.o grub_emu-util_grub_emu.o grub_emu-util_misc.o grub_emu-util_hostdisk.o grub_emu-util_getroot.o grub_emu-util_powerpc_ieee1275_misc.o grub_emu-disk_raid.o grub_emu-disk_raid5_recover.o grub_emu-disk_raid6_recover.o grub_emu-disk_mdraid_linux.o grub_emu-disk_dmraid_nvidia.o grub_emu-disk_lvm.o grub_emu-grub_script_tab.o grub_emu-grub_emu_init.o $(LDFLAGS) $(grub_emu_LDFLAGS)
-grub_emu-commands_boot.o: commands/boot.c $(commands/boot.c_DEPENDENCIES)
+grub_emu-commands_minicmd.o: commands/minicmd.c $(commands/minicmd.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-commands_boot.d
+-include grub_emu-commands_minicmd.d
grub_emu-commands_cat.o: commands/cat.c $(commands/cat.c_DEPENDENCIES)
$(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
$(CC) -Ifs -I$(srcdir)/fs $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
-include grub_emu-fs_fshelp.d
-grub_emu-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
--include grub_emu-normal_arg.d
+grub_emu-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_command.d
+
+grub_emu-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(CC) -Ikern -I$(srcdir)/kern $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-kern_corecmd.d
+
+grub_emu-commands_extcmd.o: commands/extcmd.c $(commands/extcmd.c_DEPENDENCIES)
+ $(CC) -Icommands -I$(srcdir)/commands $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-commands_extcmd.d
+
+grub_emu-lib_arg.o: lib/arg.c $(lib/arg.c_DEPENDENCIES)
+ $(CC) -Ilib -I$(srcdir)/lib $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
+-include grub_emu-lib_arg.d
grub_emu-normal_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(CC) -Inormal -I$(srcdir)/normal $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(grub_emu_CFLAGS) -MD -c -o $@ $<
kern/ieee1275/ieee1275.c kern/main.c kern/device.c \
kern/disk.c kern/dl.c kern/err.c kern/file.c kern/fs.c \
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
- kern/list.c kern/handler.c \
+ kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/ieee1275/init.c \
kern/ieee1275/mmap.c \
term/ieee1275/ofconsole.c \
kern/parser.c kern/partition.c kern/env.c kern/powerpc/dl.c \
kern/generic/millisleep.c kern/time.c \
symlist.c kern/powerpc/cache.S
-CLEANFILES += kernel.elf kernel_elf-kern_powerpc_ieee1275_startup.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_time.o kernel_elf-symlist.o kernel_elf-kern_powerpc_cache.o
-MOSTLYCLEANFILES += kernel_elf-kern_powerpc_ieee1275_startup.d kernel_elf-kern_ieee1275_cmain.d kernel_elf-kern_ieee1275_ieee1275.d kernel_elf-kern_main.d kernel_elf-kern_device.d kernel_elf-kern_disk.d kernel_elf-kern_dl.d kernel_elf-kern_err.d kernel_elf-kern_file.d kernel_elf-kern_fs.d kernel_elf-kern_misc.d kernel_elf-kern_mm.d kernel_elf-kern_loader.d kernel_elf-kern_rescue.d kernel_elf-kern_term.d kernel_elf-kern_list.d kernel_elf-kern_handler.d kernel_elf-kern_ieee1275_init.d kernel_elf-kern_ieee1275_mmap.d kernel_elf-term_ieee1275_ofconsole.d kernel_elf-kern_ieee1275_openfw.d kernel_elf-disk_ieee1275_ofdisk.d kernel_elf-kern_parser.d kernel_elf-kern_partition.d kernel_elf-kern_env.d kernel_elf-kern_powerpc_dl.d kernel_elf-kern_generic_millisleep.d kernel_elf-kern_time.d kernel_elf-symlist.d kernel_elf-kern_powerpc_cache.d
+CLEANFILES += kernel.elf kernel_elf-kern_powerpc_ieee1275_startup.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_time.o kernel_elf-symlist.o kernel_elf-kern_powerpc_cache.o
+MOSTLYCLEANFILES += kernel_elf-kern_powerpc_ieee1275_startup.d kernel_elf-kern_ieee1275_cmain.d kernel_elf-kern_ieee1275_ieee1275.d kernel_elf-kern_main.d kernel_elf-kern_device.d kernel_elf-kern_disk.d kernel_elf-kern_dl.d kernel_elf-kern_err.d kernel_elf-kern_file.d kernel_elf-kern_fs.d kernel_elf-kern_misc.d kernel_elf-kern_mm.d kernel_elf-kern_loader.d kernel_elf-kern_rescue.d kernel_elf-kern_term.d kernel_elf-kern_list.d kernel_elf-kern_handler.d kernel_elf-kern_command.d kernel_elf-kern_corecmd.d kernel_elf-kern_ieee1275_init.d kernel_elf-kern_ieee1275_mmap.d kernel_elf-term_ieee1275_ofconsole.d kernel_elf-kern_ieee1275_openfw.d kernel_elf-disk_ieee1275_ofdisk.d kernel_elf-kern_parser.d kernel_elf-kern_partition.d kernel_elf-kern_env.d kernel_elf-kern_powerpc_dl.d kernel_elf-kern_generic_millisleep.d kernel_elf-kern_time.d kernel_elf-symlist.d kernel_elf-kern_powerpc_cache.d
-kernel.elf: $(kernel_elf_DEPENDENCIES) kernel_elf-kern_powerpc_ieee1275_startup.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_time.o kernel_elf-symlist.o kernel_elf-kern_powerpc_cache.o
- $(TARGET_CC) -o $@ kernel_elf-kern_powerpc_ieee1275_startup.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_time.o kernel_elf-symlist.o kernel_elf-kern_powerpc_cache.o $(TARGET_LDFLAGS) $(kernel_elf_LDFLAGS)
+kernel.elf: $(kernel_elf_DEPENDENCIES) kernel_elf-kern_powerpc_ieee1275_startup.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_time.o kernel_elf-symlist.o kernel_elf-kern_powerpc_cache.o
+ $(TARGET_CC) -o $@ kernel_elf-kern_powerpc_ieee1275_startup.o kernel_elf-kern_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_list.o kernel_elf-kern_handler.o kernel_elf-kern_command.o kernel_elf-kern_corecmd.o kernel_elf-kern_ieee1275_init.o kernel_elf-kern_ieee1275_mmap.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kern_generic_millisleep.o kernel_elf-kern_time.o kernel_elf-symlist.o kernel_elf-kern_powerpc_cache.o $(TARGET_LDFLAGS) $(kernel_elf_LDFLAGS)
kernel_elf-kern_powerpc_ieee1275_startup.o: kern/powerpc/ieee1275/startup.S $(kern/powerpc/ieee1275/startup.S_DEPENDENCIES)
$(TARGET_CC) -Ikern/powerpc/ieee1275 -I$(srcdir)/kern/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
$(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_handler.d
+kernel_elf-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
+-include kernel_elf-kern_command.d
+
+kernel_elf-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
+-include kernel_elf-kern_corecmd.d
+
kernel_elf-kern_ieee1275_init.o: kern/ieee1275/init.c $(kern/ieee1275/init.c_DEPENDENCIES)
$(TARGET_CC) -Ikern/ieee1275 -I$(srcdir)/kern/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_ieee1275_init.d
$(TARGET_CC) -Ikern/powerpc -I$(srcdir)/kern/powerpc $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_elf_CFLAGS) -MD -c -o $@ $<
-include kernel_elf-kern_powerpc_cache.d
-kernel_elf_HEADERS = grub/powerpc/ieee1275/ieee1275.h
+kernel_elf_HEADERS = grub/powerpc/ieee1275/ieee1275.h list.h handler.h \
+ command.h
kernel_elf_CFLAGS = $(COMMON_CFLAGS)
kernel_elf_ASFLAGS = $(COMMON_ASFLAGS)
kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -static-libgcc -lgcc \
# Modules.
pkglib_MODULES = halt.mod \
- _linux.mod \
linux.mod \
normal.mod \
reboot.mod \
suspend.mod \
- _multiboot.mod \
multiboot.mod \
memdisk.mod \
lsmmap.mod
-# For _linux.mod.
-_linux_mod_SOURCES = loader/powerpc/ieee1275/linux.c
-CLEANFILES += _linux.mod mod-_linux.o mod-_linux.c pre-_linux.o _linux_mod-loader_powerpc_ieee1275_linux.o und-_linux.lst
-ifneq ($(_linux_mod_EXPORTS),no)
-CLEANFILES += def-_linux.lst
-DEFSYMFILES += def-_linux.lst
-endif
-MOSTLYCLEANFILES += _linux_mod-loader_powerpc_ieee1275_linux.d
-UNDSYMFILES += und-_linux.lst
-
-_linux.mod: pre-_linux.o mod-_linux.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_linux.o mod-_linux.o
- 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-_linux.o: $(_linux_mod_DEPENDENCIES) _linux_mod-loader_powerpc_ieee1275_linux.o
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _linux_mod-loader_powerpc_ieee1275_linux.o
-
-mod-_linux.o: mod-_linux.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -c -o $@ $<
-
-mod-_linux.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_linux' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_linux_mod_EXPORTS),no)
-def-_linux.lst: pre-_linux.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _linux/' > $@
-endif
-
-und-_linux.lst: pre-_linux.o
- echo '_linux' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_linux_mod-loader_powerpc_ieee1275_linux.o: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -MD -c -o $@ $<
--include _linux_mod-loader_powerpc_ieee1275_linux.d
-
-CLEANFILES += cmd-_linux_mod-loader_powerpc_ieee1275_linux.lst fs-_linux_mod-loader_powerpc_ieee1275_linux.lst partmap-_linux_mod-loader_powerpc_ieee1275_linux.lst
-COMMANDFILES += cmd-_linux_mod-loader_powerpc_ieee1275_linux.lst
-FSFILES += fs-_linux_mod-loader_powerpc_ieee1275_linux.lst
-PARTMAPFILES += partmap-_linux_mod-loader_powerpc_ieee1275_linux.lst
-
-cmd-_linux_mod-loader_powerpc_ieee1275_linux.lst: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _linux > $@ || (rm -f $@; exit 1)
-
-fs-_linux_mod-loader_powerpc_ieee1275_linux.lst: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _linux > $@ || (rm -f $@; exit 1)
-
-partmap-_linux_mod-loader_powerpc_ieee1275_linux.lst: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _linux > $@ || (rm -f $@; exit 1)
-
-
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/powerpc/ieee1275/linux_normal.c
-CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_powerpc_ieee1275_linux_normal.o und-linux.lst
+linux_mod_SOURCES = loader/powerpc/ieee1275/linux.c
+CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_powerpc_ieee1275_linux.o und-linux.lst
ifneq ($(linux_mod_EXPORTS),no)
CLEANFILES += def-linux.lst
DEFSYMFILES += def-linux.lst
endif
-MOSTLYCLEANFILES += linux_mod-loader_powerpc_ieee1275_linux_normal.d
+MOSTLYCLEANFILES += linux_mod-loader_powerpc_ieee1275_linux.d
UNDSYMFILES += und-linux.lst
linux.mod: pre-linux.o mod-linux.o $(TARGET_OBJ2ELF)
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-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_powerpc_ieee1275_linux_normal.o
+pre-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_powerpc_ieee1275_linux.o
-rm -f $@
- $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_powerpc_ieee1275_linux_normal.o
+ $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_powerpc_ieee1275_linux.o
mod-linux.o: mod-linux.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $<
echo 'linux' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-linux_mod-loader_powerpc_ieee1275_linux_normal.o: loader/powerpc/ieee1275/linux_normal.c $(loader/powerpc/ieee1275/linux_normal.c_DEPENDENCIES)
+linux_mod-loader_powerpc_ieee1275_linux.o: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES)
$(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
--include linux_mod-loader_powerpc_ieee1275_linux_normal.d
+-include linux_mod-loader_powerpc_ieee1275_linux.d
-CLEANFILES += cmd-linux_mod-loader_powerpc_ieee1275_linux_normal.lst fs-linux_mod-loader_powerpc_ieee1275_linux_normal.lst partmap-linux_mod-loader_powerpc_ieee1275_linux_normal.lst
-COMMANDFILES += cmd-linux_mod-loader_powerpc_ieee1275_linux_normal.lst
-FSFILES += fs-linux_mod-loader_powerpc_ieee1275_linux_normal.lst
-PARTMAPFILES += partmap-linux_mod-loader_powerpc_ieee1275_linux_normal.lst
+CLEANFILES += cmd-linux_mod-loader_powerpc_ieee1275_linux.lst fs-linux_mod-loader_powerpc_ieee1275_linux.lst partmap-linux_mod-loader_powerpc_ieee1275_linux.lst
+COMMANDFILES += cmd-linux_mod-loader_powerpc_ieee1275_linux.lst
+FSFILES += fs-linux_mod-loader_powerpc_ieee1275_linux.lst
+PARTMAPFILES += partmap-linux_mod-loader_powerpc_ieee1275_linux.lst
-cmd-linux_mod-loader_powerpc_ieee1275_linux_normal.lst: loader/powerpc/ieee1275/linux_normal.c $(loader/powerpc/ieee1275/linux_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-linux_mod-loader_powerpc_ieee1275_linux.lst: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
-fs-linux_mod-loader_powerpc_ieee1275_linux_normal.lst: loader/powerpc/ieee1275/linux_normal.c $(loader/powerpc/ieee1275/linux_normal.c_DEPENDENCIES) genfslist.sh
+fs-linux_mod-loader_powerpc_ieee1275_linux.lst: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
-partmap-linux_mod-loader_powerpc_ieee1275_linux_normal.lst: loader/powerpc/ieee1275/linux_normal.c $(loader/powerpc/ieee1275/linux_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-linux_mod-loader_powerpc_ieee1275_linux.lst: loader/powerpc/ieee1275/linux.c $(loader/powerpc/ieee1275/linux.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader/powerpc/ieee1275 -I$(srcdir)/loader/powerpc/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
# 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_mod_SOURCES = 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_text.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_menu_text.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
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.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_text.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_text.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
+MOSTLYCLEANFILES += 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_text.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)
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_text.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
+pre-normal.o: $(normal_mod_DEPENDENCIES) 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_text.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_text.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
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -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_text.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 $@ $<
echo 'normal' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-normal_mod-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_arg.d
-
-CLEANFILES += cmd-normal_mod-normal_arg.lst fs-normal_mod-normal_arg.lst partmap-normal_mod-normal_arg.lst
-COMMANDFILES += cmd-normal_mod-normal_arg.lst
-FSFILES += fs-normal_mod-normal_arg.lst
-PARTMAPFILES += partmap-normal_mod-normal_arg.lst
-
-cmd-normal_mod-normal_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_cmdline.d
halt_mod_CFLAGS = $(COMMON_CFLAGS)
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod
-_multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
+# For multiboot.mod
+multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
loader/multiboot2.c \
loader/multiboot_loader.c
-CLEANFILES += _multiboot.mod mod-_multiboot.o mod-_multiboot.c pre-_multiboot.o _multiboot_mod-loader_ieee1275_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o und-_multiboot.lst
-ifneq ($(_multiboot_mod_EXPORTS),no)
-CLEANFILES += def-_multiboot.lst
-DEFSYMFILES += def-_multiboot.lst
-endif
-MOSTLYCLEANFILES += _multiboot_mod-loader_ieee1275_multiboot2.d _multiboot_mod-loader_multiboot2.d _multiboot_mod-loader_multiboot_loader.d
-UNDSYMFILES += und-_multiboot.lst
-
-_multiboot.mod: pre-_multiboot.o mod-_multiboot.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_multiboot.o mod-_multiboot.o
- 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-_multiboot.o: $(_multiboot_mod_DEPENDENCIES) _multiboot_mod-loader_ieee1275_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
- -rm -f $@
- $(TARGET_CC) $(_multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _multiboot_mod-loader_ieee1275_multiboot2.o _multiboot_mod-loader_multiboot2.o _multiboot_mod-loader_multiboot_loader.o
-
-mod-_multiboot.o: mod-_multiboot.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -c -o $@ $<
-
-mod-_multiboot.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_multiboot' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_multiboot_mod_EXPORTS),no)
-def-_multiboot.lst: pre-_multiboot.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _multiboot/' > $@
-endif
-
-und-_multiboot.lst: pre-_multiboot.o
- echo '_multiboot' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_multiboot_mod-loader_ieee1275_multiboot2.o: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_ieee1275_multiboot2.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_ieee1275_multiboot2.lst fs-_multiboot_mod-loader_ieee1275_multiboot2.lst partmap-_multiboot_mod-loader_ieee1275_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_ieee1275_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_ieee1275_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_ieee1275_multiboot2.lst
-
-cmd-_multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot2.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot2.lst fs-_multiboot_mod-loader_multiboot2.lst partmap-_multiboot_mod-loader_multiboot2.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot2.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot2.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot2.lst
-
-cmd-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include _multiboot_mod-loader_multiboot_loader.d
-
-CLEANFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst fs-_multiboot_mod-loader_multiboot_loader.lst partmap-_multiboot_mod-loader_multiboot_loader.lst
-COMMANDFILES += cmd-_multiboot_mod-loader_multiboot_loader.lst
-FSFILES += fs-_multiboot_mod-loader_multiboot_loader.lst
-PARTMAPFILES += partmap-_multiboot_mod-loader_multiboot_loader.lst
-
-cmd-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-fs-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-partmap-_multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _multiboot > $@ || (rm -f $@; exit 1)
-
-
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
-CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_multiboot_loader_normal.o und-multiboot.lst
+CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_ieee1275_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o und-multiboot.lst
ifneq ($(multiboot_mod_EXPORTS),no)
CLEANFILES += def-multiboot.lst
DEFSYMFILES += def-multiboot.lst
endif
-MOSTLYCLEANFILES += multiboot_mod-loader_multiboot_loader_normal.d
+MOSTLYCLEANFILES += multiboot_mod-loader_ieee1275_multiboot2.d multiboot_mod-loader_multiboot2.d multiboot_mod-loader_multiboot_loader.d
UNDSYMFILES += und-multiboot.lst
multiboot.mod: pre-multiboot.o mod-multiboot.o $(TARGET_OBJ2ELF)
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-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_multiboot_loader_normal.o
+pre-multiboot.o: $(multiboot_mod_DEPENDENCIES) multiboot_mod-loader_ieee1275_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
-rm -f $@
- $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_multiboot_loader_normal.o
+ $(TARGET_CC) $(multiboot_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ multiboot_mod-loader_ieee1275_multiboot2.o multiboot_mod-loader_multiboot2.o multiboot_mod-loader_multiboot_loader.o
mod-multiboot.o: mod-multiboot.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $<
echo 'multiboot' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-multiboot_mod-loader_multiboot_loader_normal.o: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES)
+multiboot_mod-loader_ieee1275_multiboot2.o: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_ieee1275_multiboot2.d
+
+CLEANFILES += cmd-multiboot_mod-loader_ieee1275_multiboot2.lst fs-multiboot_mod-loader_ieee1275_multiboot2.lst partmap-multiboot_mod-loader_ieee1275_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_ieee1275_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_ieee1275_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_ieee1275_multiboot2.lst
+
+cmd-multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+fs-multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+partmap-multiboot_mod-loader_ieee1275_multiboot2.lst: loader/ieee1275/multiboot2.c $(loader/ieee1275/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/ieee1275 -I$(srcdir)/loader/ieee1275 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+
+multiboot_mod-loader_multiboot2.o: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
+-include multiboot_mod-loader_multiboot2.d
+
+CLEANFILES += cmd-multiboot_mod-loader_multiboot2.lst fs-multiboot_mod-loader_multiboot2.lst partmap-multiboot_mod-loader_multiboot2.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot2.lst
+FSFILES += fs-multiboot_mod-loader_multiboot2.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot2.lst
+
+cmd-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+fs-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+partmap-multiboot_mod-loader_multiboot2.lst: loader/multiboot2.c $(loader/multiboot2.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
+
+
+multiboot_mod-loader_multiboot_loader.o: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES)
$(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -MD -c -o $@ $<
--include multiboot_mod-loader_multiboot_loader_normal.d
+-include multiboot_mod-loader_multiboot_loader.d
-CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst fs-multiboot_mod-loader_multiboot_loader_normal.lst partmap-multiboot_mod-loader_multiboot_loader_normal.lst
-COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader_normal.lst
-FSFILES += fs-multiboot_mod-loader_multiboot_loader_normal.lst
-PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader_normal.lst
+CLEANFILES += cmd-multiboot_mod-loader_multiboot_loader.lst fs-multiboot_mod-loader_multiboot_loader.lst partmap-multiboot_mod-loader_multiboot_loader.lst
+COMMANDFILES += cmd-multiboot_mod-loader_multiboot_loader.lst
+FSFILES += fs-multiboot_mod-loader_multiboot_loader.lst
+PARTMAPFILES += partmap-multiboot_mod-loader_multiboot_loader.lst
-cmd-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh multiboot > $@ || (rm -f $@; exit 1)
-fs-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genfslist.sh
+fs-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh multiboot > $@ || (rm -f $@; exit 1)
-partmap-multiboot_mod-loader_multiboot_loader_normal.lst: loader/multiboot_loader_normal.c $(loader/multiboot_loader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-multiboot_mod-loader_multiboot_loader.lst: loader/multiboot_loader.c $(loader/multiboot_loader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(multiboot_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh multiboot > $@ || (rm -f $@; exit 1)
MOSTLYCLEANFILES += symlist.c kernel_syms.lst
DEFSYMFILES += kernel_syms.lst
-kernel_elf_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_elf_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h misc.h mm.h net.h parser.h rescue.h \
symbol.h term.h time.h types.h powerpc/libgcc.h loader.h partition.h \
pc_partition.h ieee1275/ieee1275.h machine/kernel.h handler.h
# For grub-emu
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/help.c \
commands/search.c commands/handler.c commands/test.c \
commands/ls.c commands/blocklist.c commands/hexdump.c \
kern/err.c kern/file.c kern/fs.c kern/loader.c kern/main.c \
kern/misc.c kern/parser.c kern/partition.c kern/rescue.c \
kern/term.c kern/list.c kern/handler.c fs/fshelp.c \
- normal/arg.c normal/cmdline.c normal/command.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
+ lib/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_text.c \
kern/ieee1275/ieee1275.c kern/main.c kern/device.c \
kern/disk.c kern/dl.c kern/err.c kern/file.c kern/fs.c \
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
- kern/list.c kern/handler.c \
+ kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/ieee1275/init.c \
kern/ieee1275/mmap.c \
term/ieee1275/ofconsole.c \
kern/parser.c kern/partition.c kern/env.c kern/powerpc/dl.c \
kern/generic/millisleep.c kern/time.c \
symlist.c kern/powerpc/cache.S
-kernel_elf_HEADERS = grub/powerpc/ieee1275/ieee1275.h
+kernel_elf_HEADERS = grub/powerpc/ieee1275/ieee1275.h list.h handler.h \
+ command.h
kernel_elf_CFLAGS = $(COMMON_CFLAGS)
kernel_elf_ASFLAGS = $(COMMON_ASFLAGS)
kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -static-libgcc -lgcc \
# Modules.
pkglib_MODULES = halt.mod \
- _linux.mod \
linux.mod \
normal.mod \
reboot.mod \
suspend.mod \
- _multiboot.mod \
multiboot.mod \
memdisk.mod \
lsmmap.mod
-# For _linux.mod.
-_linux_mod_SOURCES = loader/powerpc/ieee1275/linux.c
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/powerpc/ieee1275/linux_normal.c
+linux_mod_SOURCES = loader/powerpc/ieee1275/linux.c
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.c \
halt_mod_CFLAGS = $(COMMON_CFLAGS)
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _multiboot.mod
-_multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
+# For multiboot.mod
+multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
loader/multiboot2.c \
loader/multiboot_loader.c
-_multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
-_multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
-# For multiboot.mod
-multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/hexdump.c lib/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c\
normal/completion.c normal/context.c normal/main.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/menu_text.c \
# Modules.
-pkglib_MODULES = kernel.mod normal.mod _chain.mod chain.mod appleldr.mod \
- halt.mod reboot.mod _linux.mod linux.mod pci.mod lspci.mod \
+pkglib_MODULES = kernel.mod normal.mod chain.mod appleldr.mod \
+ halt.mod reboot.mod linux.mod pci.mod lspci.mod \
datetime.mod date.mod datehook.mod
# For kernel.mod.
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
kern/x86_64/dl.c kern/i386/efi/init.c kern/parser.c kern/partition.c \
kern/env.c symlist.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/generic/millisleep.c kern/generic/rtc_get_time_ms.c \
term/efi/console.c disk/efi/efidisk.c
-CLEANFILES += kernel.mod mod-kernel.o mod-kernel.c pre-kernel.o kernel_mod-kern_x86_64_efi_startup.o kernel_mod-kern_x86_64_efi_callwrap.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_x86_64_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_millisleep.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o und-kernel.lst
+CLEANFILES += kernel.mod mod-kernel.o mod-kernel.c pre-kernel.o kernel_mod-kern_x86_64_efi_startup.o kernel_mod-kern_x86_64_efi_callwrap.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_x86_64_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_command.o kernel_mod-kern_corecmd.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_millisleep.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o und-kernel.lst
ifneq ($(kernel_mod_EXPORTS),no)
CLEANFILES += def-kernel.lst
DEFSYMFILES += def-kernel.lst
endif
-MOSTLYCLEANFILES += kernel_mod-kern_x86_64_efi_startup.d kernel_mod-kern_x86_64_efi_callwrap.d kernel_mod-kern_main.d kernel_mod-kern_device.d kernel_mod-kern_disk.d kernel_mod-kern_dl.d kernel_mod-kern_file.d kernel_mod-kern_fs.d kernel_mod-kern_err.d kernel_mod-kern_misc.d kernel_mod-kern_mm.d kernel_mod-kern_loader.d kernel_mod-kern_rescue.d kernel_mod-kern_term.d kernel_mod-kern_x86_64_dl.d kernel_mod-kern_i386_efi_init.d kernel_mod-kern_parser.d kernel_mod-kern_partition.d kernel_mod-kern_env.d kernel_mod-symlist.d kernel_mod-kern_efi_efi.d kernel_mod-kern_efi_init.d kernel_mod-kern_efi_mm.d kernel_mod-kern_time.d kernel_mod-kern_list.d kernel_mod-kern_handler.d kernel_mod-kern_i386_tsc.d kernel_mod-kern_i386_pit.d kernel_mod-kern_generic_millisleep.d kernel_mod-kern_generic_rtc_get_time_ms.d kernel_mod-term_efi_console.d kernel_mod-disk_efi_efidisk.d
+MOSTLYCLEANFILES += kernel_mod-kern_x86_64_efi_startup.d kernel_mod-kern_x86_64_efi_callwrap.d kernel_mod-kern_main.d kernel_mod-kern_device.d kernel_mod-kern_disk.d kernel_mod-kern_dl.d kernel_mod-kern_file.d kernel_mod-kern_fs.d kernel_mod-kern_err.d kernel_mod-kern_misc.d kernel_mod-kern_mm.d kernel_mod-kern_loader.d kernel_mod-kern_rescue.d kernel_mod-kern_term.d kernel_mod-kern_x86_64_dl.d kernel_mod-kern_i386_efi_init.d kernel_mod-kern_parser.d kernel_mod-kern_partition.d kernel_mod-kern_env.d kernel_mod-symlist.d kernel_mod-kern_efi_efi.d kernel_mod-kern_efi_init.d kernel_mod-kern_efi_mm.d kernel_mod-kern_time.d kernel_mod-kern_list.d kernel_mod-kern_handler.d kernel_mod-kern_command.d kernel_mod-kern_corecmd.d kernel_mod-kern_i386_tsc.d kernel_mod-kern_i386_pit.d kernel_mod-kern_generic_millisleep.d kernel_mod-kern_generic_rtc_get_time_ms.d kernel_mod-term_efi_console.d kernel_mod-disk_efi_efidisk.d
UNDSYMFILES += und-kernel.lst
kernel.mod: pre-kernel.o mod-kernel.o $(TARGET_OBJ2ELF)
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-kernel.o: $(kernel_mod_DEPENDENCIES) kernel_mod-kern_x86_64_efi_startup.o kernel_mod-kern_x86_64_efi_callwrap.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_x86_64_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_millisleep.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o
+pre-kernel.o: $(kernel_mod_DEPENDENCIES) kernel_mod-kern_x86_64_efi_startup.o kernel_mod-kern_x86_64_efi_callwrap.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_x86_64_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_command.o kernel_mod-kern_corecmd.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_millisleep.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o
-rm -f $@
- $(TARGET_CC) $(kernel_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ kernel_mod-kern_x86_64_efi_startup.o kernel_mod-kern_x86_64_efi_callwrap.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_x86_64_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_millisleep.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o
+ $(TARGET_CC) $(kernel_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ kernel_mod-kern_x86_64_efi_startup.o kernel_mod-kern_x86_64_efi_callwrap.o kernel_mod-kern_main.o kernel_mod-kern_device.o kernel_mod-kern_disk.o kernel_mod-kern_dl.o kernel_mod-kern_file.o kernel_mod-kern_fs.o kernel_mod-kern_err.o kernel_mod-kern_misc.o kernel_mod-kern_mm.o kernel_mod-kern_loader.o kernel_mod-kern_rescue.o kernel_mod-kern_term.o kernel_mod-kern_x86_64_dl.o kernel_mod-kern_i386_efi_init.o kernel_mod-kern_parser.o kernel_mod-kern_partition.o kernel_mod-kern_env.o kernel_mod-symlist.o kernel_mod-kern_efi_efi.o kernel_mod-kern_efi_init.o kernel_mod-kern_efi_mm.o kernel_mod-kern_time.o kernel_mod-kern_list.o kernel_mod-kern_handler.o kernel_mod-kern_command.o kernel_mod-kern_corecmd.o kernel_mod-kern_i386_tsc.o kernel_mod-kern_i386_pit.o kernel_mod-kern_generic_millisleep.o kernel_mod-kern_generic_rtc_get_time_ms.o kernel_mod-term_efi_console.o kernel_mod-disk_efi_efidisk.o
mod-kernel.o: mod-kernel.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -c -o $@ $<
set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
+kernel_mod-kern_command.o: kern/command.c $(kern/command.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -MD -c -o $@ $<
+-include kernel_mod-kern_command.d
+
+CLEANFILES += cmd-kernel_mod-kern_command.lst fs-kernel_mod-kern_command.lst partmap-kernel_mod-kern_command.lst
+COMMANDFILES += cmd-kernel_mod-kern_command.lst
+FSFILES += fs-kernel_mod-kern_command.lst
+PARTMAPFILES += partmap-kernel_mod-kern_command.lst
+
+cmd-kernel_mod-kern_command.lst: kern/command.c $(kern/command.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh kernel > $@ || (rm -f $@; exit 1)
+
+fs-kernel_mod-kern_command.lst: kern/command.c $(kern/command.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh kernel > $@ || (rm -f $@; exit 1)
+
+partmap-kernel_mod-kern_command.lst: kern/command.c $(kern/command.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
+
+
+kernel_mod-kern_corecmd.o: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES)
+ $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -MD -c -o $@ $<
+-include kernel_mod-kern_corecmd.d
+
+CLEANFILES += cmd-kernel_mod-kern_corecmd.lst fs-kernel_mod-kern_corecmd.lst partmap-kernel_mod-kern_corecmd.lst
+COMMANDFILES += cmd-kernel_mod-kern_corecmd.lst
+FSFILES += fs-kernel_mod-kern_corecmd.lst
+PARTMAPFILES += partmap-kernel_mod-kern_corecmd.lst
+
+cmd-kernel_mod-kern_corecmd.lst: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh kernel > $@ || (rm -f $@; exit 1)
+
+fs-kernel_mod-kern_corecmd.lst: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh kernel > $@ || (rm -f $@; exit 1)
+
+partmap-kernel_mod-kern_corecmd.lst: kern/corecmd.c $(kern/corecmd.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Ikern -I$(srcdir)/kern $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
+
+
kernel_mod-kern_i386_tsc.o: kern/i386/tsc.c $(kern/i386/tsc.c_DEPENDENCIES)
$(TARGET_CC) -Ikern/i386 -I$(srcdir)/kern/i386 $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -MD -c -o $@ $<
-include kernel_mod-kern_i386_tsc.d
set -e; $(TARGET_CC) -Idisk/efi -I$(srcdir)/disk/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(kernel_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh kernel > $@ || (rm -f $@; exit 1)
-kernel_mod_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_mod_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
- efi/efi.h efi/time.h efi/disk.h machine/loader.h list.h handler.h
+ efi/efi.h efi/time.h efi/disk.h machine/loader.h list.h handler.h \
+ command.h
kernel_mod_CFLAGS = $(COMMON_CFLAGS)
kernel_mod_ASFLAGS = $(COMMON_ASFLAGS)
kernel_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.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_menu_text.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
+CLEANFILES += normal.mod mod-normal.o mod-normal.c pre-normal.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_text.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_text.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
+MOSTLYCLEANFILES += 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_text.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)
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_text.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
+pre-normal.o: $(normal_mod_DEPENDENCIES) 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_text.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_text.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
+ $(TARGET_CC) $(normal_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -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_text.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 $@ $<
echo 'normal' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-normal_mod-normal_arg.o: normal/arg.c $(normal/arg.c_DEPENDENCIES)
- $(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
--include normal_mod-normal_arg.d
-
-CLEANFILES += cmd-normal_mod-normal_arg.lst fs-normal_mod-normal_arg.lst partmap-normal_mod-normal_arg.lst
-COMMANDFILES += cmd-normal_mod-normal_arg.lst
-FSFILES += fs-normal_mod-normal_arg.lst
-PARTMAPFILES += partmap-normal_mod-normal_arg.lst
-
-cmd-normal_mod-normal_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_arg.lst: normal/arg.c $(normal/arg.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_cmdline.o: normal/cmdline.c $(normal/cmdline.c_DEPENDENCIES)
$(TARGET_CC) -Inormal -I$(srcdir)/normal $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(normal_mod_CFLAGS) -MD -c -o $@ $<
-include normal_mod-normal_cmdline.d
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _chain.mod.
-_chain_mod_SOURCES = loader/efi/chainloader.c
-CLEANFILES += _chain.mod mod-_chain.o mod-_chain.c pre-_chain.o _chain_mod-loader_efi_chainloader.o und-_chain.lst
-ifneq ($(_chain_mod_EXPORTS),no)
-CLEANFILES += def-_chain.lst
-DEFSYMFILES += def-_chain.lst
-endif
-MOSTLYCLEANFILES += _chain_mod-loader_efi_chainloader.d
-UNDSYMFILES += und-_chain.lst
-
-_chain.mod: pre-_chain.o mod-_chain.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_chain_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_chain.o mod-_chain.o
- 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-_chain.o: $(_chain_mod_DEPENDENCIES) _chain_mod-loader_efi_chainloader.o
- -rm -f $@
- $(TARGET_CC) $(_chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _chain_mod-loader_efi_chainloader.o
-
-mod-_chain.o: mod-_chain.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -c -o $@ $<
-
-mod-_chain.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_chain' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_chain_mod_EXPORTS),no)
-def-_chain.lst: pre-_chain.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _chain/' > $@
-endif
-
-und-_chain.lst: pre-_chain.o
- echo '_chain' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_chain_mod-loader_efi_chainloader.o: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -MD -c -o $@ $<
--include _chain_mod-loader_efi_chainloader.d
-
-CLEANFILES += cmd-_chain_mod-loader_efi_chainloader.lst fs-_chain_mod-loader_efi_chainloader.lst partmap-_chain_mod-loader_efi_chainloader.lst
-COMMANDFILES += cmd-_chain_mod-loader_efi_chainloader.lst
-FSFILES += fs-_chain_mod-loader_efi_chainloader.lst
-PARTMAPFILES += partmap-_chain_mod-loader_efi_chainloader.lst
-
-cmd-_chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _chain > $@ || (rm -f $@; exit 1)
-
-fs-_chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _chain > $@ || (rm -f $@; exit 1)
-
-partmap-_chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_chain_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _chain > $@ || (rm -f $@; exit 1)
-
-
-_chain_mod_CFLAGS = $(COMMON_CFLAGS)
-_chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For chain.mod.
-chain_mod_SOURCES = loader/efi/chainloader_normal.c
-CLEANFILES += chain.mod mod-chain.o mod-chain.c pre-chain.o chain_mod-loader_efi_chainloader_normal.o und-chain.lst
+chain_mod_SOURCES = loader/efi/chainloader.c
+CLEANFILES += chain.mod mod-chain.o mod-chain.c pre-chain.o chain_mod-loader_efi_chainloader.o und-chain.lst
ifneq ($(chain_mod_EXPORTS),no)
CLEANFILES += def-chain.lst
DEFSYMFILES += def-chain.lst
endif
-MOSTLYCLEANFILES += chain_mod-loader_efi_chainloader_normal.d
+MOSTLYCLEANFILES += chain_mod-loader_efi_chainloader.d
UNDSYMFILES += und-chain.lst
chain.mod: pre-chain.o mod-chain.o $(TARGET_OBJ2ELF)
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-chain.o: $(chain_mod_DEPENDENCIES) chain_mod-loader_efi_chainloader_normal.o
+pre-chain.o: $(chain_mod_DEPENDENCIES) chain_mod-loader_efi_chainloader.o
-rm -f $@
- $(TARGET_CC) $(chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ chain_mod-loader_efi_chainloader_normal.o
+ $(TARGET_CC) $(chain_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ chain_mod-loader_efi_chainloader.o
mod-chain.o: mod-chain.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -c -o $@ $<
echo 'chain' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-chain_mod-loader_efi_chainloader_normal.o: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES)
+chain_mod-loader_efi_chainloader.o: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES)
$(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -MD -c -o $@ $<
--include chain_mod-loader_efi_chainloader_normal.d
+-include chain_mod-loader_efi_chainloader.d
-CLEANFILES += cmd-chain_mod-loader_efi_chainloader_normal.lst fs-chain_mod-loader_efi_chainloader_normal.lst partmap-chain_mod-loader_efi_chainloader_normal.lst
-COMMANDFILES += cmd-chain_mod-loader_efi_chainloader_normal.lst
-FSFILES += fs-chain_mod-loader_efi_chainloader_normal.lst
-PARTMAPFILES += partmap-chain_mod-loader_efi_chainloader_normal.lst
+CLEANFILES += cmd-chain_mod-loader_efi_chainloader.lst fs-chain_mod-loader_efi_chainloader.lst partmap-chain_mod-loader_efi_chainloader.lst
+COMMANDFILES += cmd-chain_mod-loader_efi_chainloader.lst
+FSFILES += fs-chain_mod-loader_efi_chainloader.lst
+PARTMAPFILES += partmap-chain_mod-loader_efi_chainloader.lst
-cmd-chain_mod-loader_efi_chainloader_normal.lst: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES) gencmdlist.sh
+cmd-chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) gencmdlist.sh
set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh chain > $@ || (rm -f $@; exit 1)
-fs-chain_mod-loader_efi_chainloader_normal.lst: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES) genfslist.sh
+fs-chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genfslist.sh
set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh chain > $@ || (rm -f $@; exit 1)
-partmap-chain_mod-loader_efi_chainloader_normal.lst: loader/efi/chainloader_normal.c $(loader/efi/chainloader_normal.c_DEPENDENCIES) genpartmaplist.sh
+partmap-chain_mod-loader_efi_chainloader.lst: loader/efi/chainloader.c $(loader/efi/chainloader.c_DEPENDENCIES) genpartmaplist.sh
set -e; $(TARGET_CC) -Iloader/efi -I$(srcdir)/loader/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(chain_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh chain > $@ || (rm -f $@; exit 1)
appleldr_mod_CFLAGS = $(COMMON_CFLAGS)
appleldr_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/efi/linux.c
-CLEANFILES += _linux.mod mod-_linux.o mod-_linux.c pre-_linux.o _linux_mod-loader_i386_efi_linux.o und-_linux.lst
-ifneq ($(_linux_mod_EXPORTS),no)
-CLEANFILES += def-_linux.lst
-DEFSYMFILES += def-_linux.lst
-endif
-MOSTLYCLEANFILES += _linux_mod-loader_i386_efi_linux.d
-UNDSYMFILES += und-_linux.lst
-
-_linux.mod: pre-_linux.o mod-_linux.o $(TARGET_OBJ2ELF)
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) $(MODULE_LDFLAGS) -Wl,-r,-d -o $@ pre-_linux.o mod-_linux.o
- 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-_linux.o: $(_linux_mod_DEPENDENCIES) _linux_mod-loader_i386_efi_linux.o
- -rm -f $@
- $(TARGET_CC) $(_linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ _linux_mod-loader_i386_efi_linux.o
-
-mod-_linux.o: mod-_linux.c
- $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -c -o $@ $<
-
-mod-_linux.c: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
- sh $(srcdir)/genmodsrc.sh '_linux' $< > $@ || (rm -f $@; exit 1)
-
-ifneq ($(_linux_mod_EXPORTS),no)
-def-_linux.lst: pre-_linux.o
- $(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 _linux/' > $@
-endif
-
-und-_linux.lst: pre-_linux.o
- echo '_linux' > $@
- $(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-
-_linux_mod-loader_i386_efi_linux.o: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -MD -c -o $@ $<
--include _linux_mod-loader_i386_efi_linux.d
-
-CLEANFILES += cmd-_linux_mod-loader_i386_efi_linux.lst fs-_linux_mod-loader_i386_efi_linux.lst partmap-_linux_mod-loader_i386_efi_linux.lst
-COMMANDFILES += cmd-_linux_mod-loader_i386_efi_linux.lst
-FSFILES += fs-_linux_mod-loader_i386_efi_linux.lst
-PARTMAPFILES += partmap-_linux_mod-loader_i386_efi_linux.lst
-
-cmd-_linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh _linux > $@ || (rm -f $@; exit 1)
-
-fs-_linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh _linux > $@ || (rm -f $@; exit 1)
-
-partmap-_linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(_linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh _linux > $@ || (rm -f $@; exit 1)
-
-
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
-CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_linux_normal.o und-linux.lst
+linux_mod_SOURCES = loader/i386/efi/linux.c
+CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_i386_efi_linux.o und-linux.lst
ifneq ($(linux_mod_EXPORTS),no)
CLEANFILES += def-linux.lst
DEFSYMFILES += def-linux.lst
endif
-MOSTLYCLEANFILES += linux_mod-loader_linux_normal.d
+MOSTLYCLEANFILES += linux_mod-loader_i386_efi_linux.d
UNDSYMFILES += und-linux.lst
linux.mod: pre-linux.o mod-linux.o $(TARGET_OBJ2ELF)
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-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_linux_normal.o
+pre-linux.o: $(linux_mod_DEPENDENCIES) linux_mod-loader_i386_efi_linux.o
-rm -f $@
- $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_linux_normal.o
+ $(TARGET_CC) $(linux_mod_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ linux_mod-loader_i386_efi_linux.o
mod-linux.o: mod-linux.c
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $<
echo 'linux' > $@
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
-linux_mod-loader_linux_normal.o: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES)
- $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
--include linux_mod-loader_linux_normal.d
+linux_mod-loader_i386_efi_linux.o: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES)
+ $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -MD -c -o $@ $<
+-include linux_mod-loader_i386_efi_linux.d
-CLEANFILES += cmd-linux_mod-loader_linux_normal.lst fs-linux_mod-loader_linux_normal.lst partmap-linux_mod-loader_linux_normal.lst
-COMMANDFILES += cmd-linux_mod-loader_linux_normal.lst
-FSFILES += fs-linux_mod-loader_linux_normal.lst
-PARTMAPFILES += partmap-linux_mod-loader_linux_normal.lst
+CLEANFILES += cmd-linux_mod-loader_i386_efi_linux.lst fs-linux_mod-loader_i386_efi_linux.lst partmap-linux_mod-loader_i386_efi_linux.lst
+COMMANDFILES += cmd-linux_mod-loader_i386_efi_linux.lst
+FSFILES += fs-linux_mod-loader_i386_efi_linux.lst
+PARTMAPFILES += partmap-linux_mod-loader_i386_efi_linux.lst
-cmd-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) gencmdlist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
+cmd-linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) gencmdlist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/gencmdlist.sh linux > $@ || (rm -f $@; exit 1)
-fs-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genfslist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
+fs-linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genfslist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genfslist.sh linux > $@ || (rm -f $@; exit 1)
-partmap-linux_mod-loader_linux_normal.lst: loader/linux_normal.c $(loader/linux_normal.c_DEPENDENCIES) genpartmaplist.sh
- set -e; $(TARGET_CC) -Iloader -I$(srcdir)/loader $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
+partmap-linux_mod-loader_i386_efi_linux.lst: loader/i386/efi/linux.c $(loader/i386/efi/linux.c_DEPENDENCIES) genpartmaplist.sh
+ set -e; $(TARGET_CC) -Iloader/i386/efi -I$(srcdir)/loader/i386/efi $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(linux_mod_CFLAGS) -E $< | sh $(srcdir)/genpartmaplist.sh linux > $@ || (rm -f $@; exit 1)
linux_mod_CFLAGS = $(COMMON_CFLAGS)
# For grub-emu.
util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
-grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c \
+grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \
commands/configfile.c commands/help.c \
commands/handler.c commands/ls.c commands/test.c \
commands/search.c commands/hexdump.c lib/hexdump.c \
io/gzio.c \
kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c \
kern/err.c kern/list.c kern/handler.c \
+ kern/command.c kern/corecmd.c commands/extcmd.c \
normal/execute.c kern/file.c kern/fs.c normal/lexer.c \
kern/loader.c kern/main.c kern/misc.c kern/parser.c \
grub_script.tab.c kern/partition.c kern/rescue.c kern/term.c \
- normal/arg.c normal/cmdline.c normal/command.c normal/function.c\
+ lib/arg.c normal/cmdline.c normal/command.c normal/function.c\
normal/completion.c normal/context.c normal/main.c \
normal/menu.c normal/menu_entry.c normal/menu_viewer.c \
normal/menu_text.c \
grub_install_SOURCES = util/i386/efi/grub-install.in
# Modules.
-pkglib_MODULES = kernel.mod normal.mod _chain.mod chain.mod appleldr.mod \
- halt.mod reboot.mod _linux.mod linux.mod pci.mod lspci.mod \
+pkglib_MODULES = kernel.mod normal.mod chain.mod appleldr.mod \
+ halt.mod reboot.mod linux.mod pci.mod lspci.mod \
datetime.mod date.mod datehook.mod
# For kernel.mod.
kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c \
kern/x86_64/dl.c kern/i386/efi/init.c kern/parser.c kern/partition.c \
kern/env.c symlist.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c \
- kern/time.c kern/list.c kern/handler.c \
+ kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
kern/i386/tsc.c kern/i386/pit.c \
kern/generic/millisleep.c kern/generic/rtc_get_time_ms.c \
term/efi/console.c disk/efi/efidisk.c
-kernel_mod_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
+kernel_mod_HEADERS = boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
partition.h pc_partition.h rescue.h symbol.h term.h time.h types.h \
- efi/efi.h efi/time.h efi/disk.h machine/loader.h list.h handler.h
+ efi/efi.h efi/time.h efi/disk.h machine/loader.h list.h handler.h \
+ command.h
kernel_mod_CFLAGS = $(COMMON_CFLAGS)
kernel_mod_ASFLAGS = $(COMMON_ASFLAGS)
kernel_mod_LDFLAGS = $(COMMON_LDFLAGS)
# 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_mod_SOURCES = 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_text.c \
normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _chain.mod.
-_chain_mod_SOURCES = loader/efi/chainloader.c
-_chain_mod_CFLAGS = $(COMMON_CFLAGS)
-_chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For chain.mod.
-chain_mod_SOURCES = loader/efi/chainloader_normal.c
+chain_mod_SOURCES = loader/efi/chainloader.c
chain_mod_CFLAGS = $(COMMON_CFLAGS)
chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
appleldr_mod_CFLAGS = $(COMMON_CFLAGS)
appleldr_mod_LDFLAGS = $(COMMON_LDFLAGS)
-# For _linux.mod.
-_linux_mod_SOURCES = loader/i386/efi/linux.c
-_linux_mod_CFLAGS = $(COMMON_CFLAGS)
-_linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
-
# For linux.mod.
-linux_mod_SOURCES = loader/linux_normal.c
+linux_mod_SOURCES = loader/i386/efi/linux.c
linux_mod_CFLAGS = $(COMMON_CFLAGS)
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/normal.h>
#include <grub/dl.h>
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/file.h>
#include <grub/disk.h>
#include <grub/mm.h>
+#include <grub/extcmd.h>
struct grub_loopback
{
/* The command to add and remove loopback devices. */
static grub_err_t
-grub_cmd_loopback (struct grub_arg_list *state,
- int argc, char **args)
+grub_cmd_loopback (grub_extcmd_t cmd, int argc, char **args)
{
+ struct grub_arg_list *state = state = cmd->state;
grub_file_t file;
struct grub_loopback *newdev;
.next = 0
};
-\f
+static grub_extcmd_t cmd;
GRUB_MOD_INIT(loop)
{
(void) mod; /* To stop warning. */
- grub_register_command ("loopback", grub_cmd_loopback, GRUB_COMMAND_FLAG_BOTH,
- "loopback [-d|-p] DEVICENAME FILE",
- "Make a device of a file.", options);
+ cmd = grub_register_extcmd ("loopback", grub_cmd_loopback,
+ GRUB_COMMAND_FLAG_BOTH,
+ "loopback [-d|-p] DEVICENAME FILE",
+ "Make a device of a file.", options);
grub_disk_dev_register (&grub_loopback_dev);
}
GRUB_MOD_FINI(loop)
{
- grub_unregister_command ("loopback");
+ grub_unregister_extcmd (cmd);
grub_disk_dev_unregister (&grub_loopback_dev);
}
#include <grub/font.h>
#include <grub/dl.h>
-#include <grub/normal.h>
#include <grub/misc.h>
+#include <grub/command.h>
static grub_err_t
-loadfont_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc,
- char **args)
+loadfont_command (grub_command_t cmd __attribute__ ((unused)),
+ int argc,
+ char **args)
{
if (argc == 0)
return grub_error (GRUB_ERR_BAD_ARGUMENT, "no font specified");
}
static grub_err_t
-lsfonts_command (struct grub_arg_list *state __attribute__ ((unused)),
+lsfonts_command (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return GRUB_ERR_NONE;
}
+static grub_command_t cmd_loadfont, cmd_lsfonts;
+
GRUB_MOD_INIT(font_manager)
{
grub_font_loader_init ();
- grub_register_command ("loadfont", loadfont_command, GRUB_COMMAND_FLAG_BOTH,
+ cmd_loadfont =
+ grub_register_command ("loadfont", loadfont_command,
"loadfont FILE...",
- "Specify one or more font files to load.", 0);
-
- grub_register_command ("lsfonts", lsfonts_command, GRUB_COMMAND_FLAG_BOTH,
- "lsfonts",
- "List the loaded fonts.", 0);
+ "Specify one or more font files to load.");
+ cmd_lsfonts =
+ grub_register_command ("lsfonts", lsfonts_command,
+ 0, "List the loaded fonts.");
}
GRUB_MOD_FINI(font_manager)
/* TODO: Determine way to free allocated resources.
Warning: possible pointer references could be in use. */
- grub_unregister_command ("loadfont");
+ grub_unregister_command (cmd_loadfont);
+ grub_unregister_command (cmd_lsfonts);
}
-
module=$1
-grep -v "^#" | sed -ne "/grub_register_command *( *\"/{s/.*( *\"\([^\"]*\)\".*/\1: $module/;p;}"
+grep -v "^#" | sed -n \
+ -e "/grub_register_command *( *\"/{s/.*( *\"\([^\"]*\)\".*/\1: $module/;p;}" \
+ -e "/\(grub_register_extcmd\|grub_register_command_p1\) *( *\"/{s/.*( *\"\([^\"]*\)\".*/*\1: $module/;p;}"
#include <grub/mm.h>
#include <grub/err.h>
#include <grub/dl.h>
-#include <grub/normal.h>
+#include <grub/extcmd.h>
static grub_err_t
-grub_cmd_hello (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_hello (struct grub_extcmd *cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
return 0;
}
+static grub_extcmd_t cmd;
+
GRUB_MOD_INIT(hello)
{
(void)mod; /* To stop warning. */
- grub_register_command ("hello", grub_cmd_hello, GRUB_COMMAND_FLAG_BOTH,
- "hello", "Say hello", 0);
+ cmd = grub_register_extcmd ("hello", grub_cmd_hello, GRUB_COMMAND_FLAG_BOTH,
+ "hello", "Say hello", 0);
}
GRUB_MOD_FINI(hello)
{
- grub_unregister_command ("hello");
+ grub_unregister_extcmd (cmd);
}
--- /dev/null
+/*
+ * 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_COMMAND_HEADER
+#define GRUB_COMMAND_HEADER 1
+
+#include <grub/symbol.h>
+#include <grub/err.h>
+#include <grub/list.h>
+
+/* Can be run in the command-line. */
+#define GRUB_COMMAND_FLAG_CMDLINE 0x1
+/* Can be run in the menu. */
+#define GRUB_COMMAND_FLAG_MENU 0x2
+/* Can be run in both interfaces. */
+#define GRUB_COMMAND_FLAG_BOTH 0x3
+/* Only for the command title. */
+#define GRUB_COMMAND_FLAG_TITLE 0x4
+/* Don't print the command on booting. */
+#define GRUB_COMMAND_FLAG_NO_ECHO 0x8
+/* This is an extended command. */
+#define GRUB_COMMAND_FLAG_EXTCMD 0x10
+/* This is an dynamic command. */
+#define GRUB_COMMAND_FLAG_DYNCMD 0x20
+
+struct grub_command;
+
+typedef grub_err_t (*grub_command_func_t) (struct grub_command *cmd,
+ int argc, char **argv);
+
+/* The command description. */
+struct grub_command
+{
+ /* The next element. */
+ struct grub_command *next;
+
+ /* The name. */
+ const char *name;
+
+ /* The priority. */
+ int prio;
+
+ /* The callback function. */
+ grub_command_func_t func;
+
+ /* The flags. */
+ unsigned flags;
+
+ /* The summary of the command usage. */
+ const char *summary;
+
+ /* The description of the command. */
+ const char *description;
+
+ /* Arbitary data. */
+ void *data;
+};
+typedef struct grub_command *grub_command_t;
+
+extern grub_command_t EXPORT_VAR(grub_command_list);
+
+grub_command_t
+EXPORT_FUNC(grub_register_command_prio) (const char *name,
+ grub_command_func_t func,
+ const char *summary,
+ const char *description,
+ int prio);
+void EXPORT_FUNC(grub_unregister_command) (grub_command_t cmd);
+
+static inline grub_command_t
+grub_register_command (const char *name,
+ grub_command_func_t func,
+ const char *summary,
+ const char *description)
+{
+ return grub_register_command_prio (name, func, summary, description, 0);
+}
+
+static inline grub_command_t
+grub_register_command_p1 (const char *name,
+ grub_command_func_t func,
+ const char *summary,
+ const char *description)
+{
+ return grub_register_command_prio (name, func, summary, description, 1);
+}
+
+static inline grub_command_t
+grub_command_find (const char *name)
+{
+ return grub_named_list_find (GRUB_AS_NAMED_LIST (grub_command_list), name);
+}
+
+static inline int
+grub_command_iterate (int (*func) (grub_command_t))
+{
+ return grub_list_iterate (GRUB_AS_LIST (grub_command_list),
+ (grub_list_hook_t) func);
+}
+
+void grub_register_core_commands (void);
+
+#endif /* ! GRUB_COMMAND_HEADER */
+++ /dev/null
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2006,2007 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_EFI_CHAINLOADER_HEADER
-#define GRUB_EFI_CHAINLOADER_HEADER 1
-
-void grub_rescue_cmd_chainloader (int argc, char *argv[]);
-
-#endif /* ! GRUB_EFI_CHAINLOADER_HEADER */
--- /dev/null
+/*
+ * 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_EXTCMD_HEADER
+#define GRUB_EXTCMD_HEADER 1
+
+#include <grub/lib/arg.h>
+#include <grub/command.h>
+
+struct grub_extcmd;
+
+typedef grub_err_t (*grub_extcmd_func_t) (struct grub_extcmd *cmd,
+ int argc, char **args);
+
+/* The argcmd description. */
+struct grub_extcmd
+{
+ grub_command_t cmd;
+
+ grub_extcmd_func_t func;
+
+ /* The argument parser optionlist. */
+ const struct grub_arg_option *options;
+
+ void *data;
+
+ struct grub_arg_list *state;
+};
+typedef struct grub_extcmd *grub_extcmd_t;
+
+grub_extcmd_t grub_register_extcmd (const char *name,
+ grub_extcmd_func_t func,
+ unsigned flags,
+ const char *summary,
+ const char *description,
+ const struct grub_arg_option *parser);
+
+void grub_unregister_extcmd (grub_extcmd_t cmd);
+
+#endif /* ! GRUB_EXTCMD_HEADER */
int partition;
};
-void grub_rescue_cmd_freebsd (int argc, char *argv[]);
-void grub_rescue_cmd_openbsd (int argc, char *argv[]);
-void grub_rescue_cmd_netbsd (int argc, char *argv[]);
-
-void grub_rescue_cmd_freebsd_loadenv (int argc, char *argv[]);
-void grub_rescue_cmd_freebsd_module (int argc, char *argv[]);
-
#endif /* ! GRUB_BSD_CPU_HEADER */
#ifndef GRUB_LOADER_MACHINE_HEADER
#define GRUB_LOADER_MACHINE_HEADER 1
-/* It is necessary to export these functions, because normal mode commands
- reuse rescue mode commands. */
-void grub_rescue_cmd_linux (int argc, char *argv[]);
-void grub_rescue_cmd_initrd (int argc, char *argv[]);
-
#endif /* ! GRUB_LOADER_MACHINE_HEADER */
extern grub_size_t EXPORT_VAR(grub_multiboot_payload_size);
extern grub_uint32_t EXPORT_VAR(grub_multiboot_payload_entry_offset);
-/* It is necessary to export these functions, because normal mode commands
- reuse rescue mode commands. */
-void grub_rescue_cmd_linux (int argc, char *argv[]);
-void grub_rescue_cmd_initrd (int argc, char *argv[]);
-
extern grub_uint8_t EXPORT_VAR(grub_multiboot_forward_relocator);
extern grub_uint8_t EXPORT_VAR(grub_multiboot_forward_relocator_end);
extern grub_uint8_t EXPORT_VAR(grub_multiboot_backward_relocator);
GRUB_CHAINLOADER_FORCE = 0x1
} grub_chainloader_flags_t;
-void EXPORT_FUNC(grub_chainloader_cmd) (const char * file,
- grub_chainloader_flags_t flags);
-
#endif /* GRUB_CHAINLOADER_MACHINE_HEADER */
char *arg;
};
+struct grub_extcmd;
+
+int grub_arg_parse (struct grub_extcmd *cmd, int argc, char **argv,
+ struct grub_arg_list *usr, char ***args, int *argnum);
+
+void grub_arg_show_help (struct grub_extcmd *cmd);
+
#endif /* ! GRUB_ARG_HEADER */
typedef struct grub_list *grub_list_t;
typedef int (*grub_list_hook_t) (grub_list_t item);
+typedef int (*grub_list_test_t) (grub_list_t new_item, grub_list_t item);
void EXPORT_FUNC(grub_list_push) (grub_list_t *head, grub_list_t item);
void * EXPORT_FUNC(grub_list_pop) (grub_list_t *head);
void EXPORT_FUNC(grub_list_remove) (grub_list_t *head, grub_list_t item);
-void EXPORT_FUNC(grub_list_iterate) (grub_list_t head, grub_list_hook_t hook);
+int EXPORT_FUNC(grub_list_iterate) (grub_list_t head, grub_list_hook_t hook);
+void EXPORT_FUNC(grub_list_insert) (grub_list_t *head, grub_list_t item,
+ grub_list_test_t test);
/* This function doesn't exist, so if assertion is false for some reason, the
linker would fail. */
GRUB_FIELD_MATCH (ptr, grub_named_list_t, name))? \
(grub_named_list_t) ptr : grub_assert_fail ())
+#define GRUB_AS_NAMED_LIST_P(pptr) \
+ ((GRUB_FIELD_MATCH (*pptr, grub_named_list_t, next) && \
+ GRUB_FIELD_MATCH (*pptr, grub_named_list_t, name))? \
+ (grub_named_list_t *) (void *) pptr : grub_assert_fail ())
+
+#define GRUB_PRIO_LIST_PRIO_MASK 0xff
+#define GRUB_PRIO_LIST_FLAG_ACTIVE 0x100
+
+struct grub_prio_list
+{
+ struct grub_prio_list *next;
+ const char *name;
+ int prio;
+};
+typedef struct grub_prio_list *grub_prio_list_t;
+
+void EXPORT_FUNC(grub_prio_list_insert) (grub_prio_list_t *head,
+ grub_prio_list_t item);
+
+static inline void
+grub_prio_list_remove (grub_prio_list_t *head, grub_prio_list_t item)
+{
+ if ((item->prio & GRUB_PRIO_LIST_FLAG_ACTIVE) && (item->next))
+ item->next->prio |= GRUB_PRIO_LIST_FLAG_ACTIVE;
+ grub_list_remove (GRUB_AS_LIST_P (head), GRUB_AS_LIST (item));
+}
+
+#define GRUB_AS_PRIO_LIST(ptr) \
+ ((GRUB_FIELD_MATCH (ptr, grub_prio_list_t, next) && \
+ GRUB_FIELD_MATCH (ptr, grub_prio_list_t, name) && \
+ GRUB_FIELD_MATCH (ptr, grub_prio_list_t, prio))? \
+ (grub_prio_list_t) ptr : grub_assert_fail ())
+
+#define GRUB_AS_PRIO_LIST_P(pptr) \
+ ((GRUB_FIELD_MATCH (*pptr, grub_prio_list_t, next) && \
+ GRUB_FIELD_MATCH (*pptr, grub_prio_list_t, name) && \
+ GRUB_FIELD_MATCH (*pptr, grub_prio_list_t, prio))? \
+ (grub_prio_list_t *) (void *) pptr : grub_assert_fail ())
+
#endif /* ! GRUB_LIST_HEADER */
#include <grub/setjmp.h>
#include <grub/symbol.h>
#include <grub/err.h>
-#include <grub/arg.h>
#include <grub/env.h>
#include <grub/menu.h>
+#include <grub/command.h>
/* The maximum size of a command-line. */
#define GRUB_MAX_CMDLINE 1600
-/* Can be run in the command-line. */
-#define GRUB_COMMAND_FLAG_CMDLINE 0x1
-/* Can be run in the menu. */
-#define GRUB_COMMAND_FLAG_MENU 0x2
-/* Can be run in both interfaces. */
-#define GRUB_COMMAND_FLAG_BOTH 0x3
-/* Only for the command title. */
-#define GRUB_COMMAND_FLAG_TITLE 0x4
-/* Don't print the command on booting. */
-#define GRUB_COMMAND_FLAG_NO_ECHO 0x8
-/* Pass arguments to the command without parsing options. */
-#define GRUB_COMMAND_FLAG_NO_ARG_PARSE 0x10
-/* Not loaded yet. Used for auto-loading. */
-#define GRUB_COMMAND_FLAG_NOT_LOADED 0x20
-
/* The type of a completion item. */
enum grub_completion_type
{
};
typedef enum grub_completion_type grub_completion_type_t;
-/* The command description. */
-struct grub_command
-{
- /* The name. */
- char *name;
-
- /* The callback function. */
- grub_err_t (*func) (struct grub_arg_list *state, int argc, char **args);
-
- /* The flags. */
- unsigned flags;
-
- /* The summary of the command usage. */
- const char *summary;
-
- /* The description of the command. */
- const char *description;
-
- /* The argument parser optionlist. */
- const struct grub_arg_option *options;
-
- /* The name of a module. Used for auto-loading. */
- char *module_name;
-
- /* The next element. */
- struct grub_command *next;
-};
-typedef struct grub_command *grub_command_t;
-
/* This is used to store the names of filesystem modules for auto-loading. */
struct grub_fs_module_list
{
void grub_cmdline_run (int nested);
int grub_cmdline_get (const char *prompt, char cmdline[], unsigned max_len,
int echo_char, int readline);
-grub_command_t grub_register_command (const char *name,
- grub_err_t (*func) (struct grub_arg_list *state,
- int argc,
- char **args),
- unsigned flags,
- const char *summary,
- const char *description,
- const struct grub_arg_option *parser);
-void grub_unregister_command (const char *name);
-grub_command_t grub_command_find (char *cmdline);
grub_err_t grub_set_history (int newsize);
-int grub_iterate_commands (int (*iterate) (grub_command_t));
int grub_command_execute (char *cmdline, int interactive);
-void grub_command_init (void);
void grub_normal_init_page (void);
void grub_menu_init_page (int nested, int edit);
-int grub_arg_parse (grub_command_t parser, int argc, char **argv,
- struct grub_arg_list *usr, char ***args, int *argnum);
-void grub_arg_show_help (grub_command_t cmd);
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);
/* Enter rescue mode. */
void grub_enter_rescue_mode (void);
-/* Register a rescue mode command. */
-void EXPORT_FUNC(grub_rescue_register_command) (const char *name,
- void (*func) (int argc,
- char *argv[]),
- const char *message);
-
-/* Unregister a rescue mode command. */
-void EXPORT_FUNC(grub_rescue_unregister_command) (const char *name);
-
#endif /* ! GRUB_RESCUE_HEADER */
#include <grub/types.h>
#include <grub/symbol.h>
-/* It is necessary to export these functions, because normal mode commands
- reuse rescue mode commands. */
-void grub_rescue_cmd_linux (int argc, char *argv[]);
-void grub_rescue_cmd_initrd (int argc, char *argv[]);
-
void EXPORT_FUNC(grub_linux_real_boot) (void);
#endif /* ! GRUB_LOADER_MACHINE_HEADER */
--- /dev/null
+/* command.c - support basic command */
+/*
+ * 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/command.h>
+
+grub_command_t grub_command_list;
+
+grub_command_t
+grub_register_command_prio (const char *name,
+ grub_command_func_t func,
+ const char *summary,
+ const char *description,
+ int prio)
+{
+ grub_command_t cmd;
+
+ cmd = (grub_command_t) grub_malloc (sizeof (*cmd));
+ if (! cmd)
+ return 0;
+
+ cmd->name = name;
+ cmd->func = func;
+ cmd->summary = (summary) ? summary : name;
+ cmd->description = description;
+
+ cmd->flags = GRUB_COMMAND_FLAG_BOTH;
+ cmd->prio = prio;
+ cmd->data = 0;
+
+ grub_prio_list_insert (GRUB_AS_PRIO_LIST_P (&grub_command_list),
+ GRUB_AS_PRIO_LIST (cmd));
+
+ return cmd;
+}
+
+void
+grub_unregister_command (grub_command_t cmd)
+{
+ grub_prio_list_remove (GRUB_AS_PRIO_LIST_P (&grub_command_list),
+ GRUB_AS_PRIO_LIST (cmd));
+ grub_free (cmd);
+}
--- /dev/null
+/* corecmd.c - critical commands which are registered in kernel */
+/*
+ * 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/dl.h>
+#include <grub/err.h>
+#include <grub/env.h>
+#include <grub/misc.h>
+#include <grub/term.h>
+#include <grub/file.h>
+#include <grub/device.h>
+#include <grub/command.h>
+
+/* set ENVVAR=VALUE */
+static grub_err_t
+grub_core_cmd_set (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ char *var;
+ char *val;
+
+ auto int print_env (struct grub_env_var *env);
+
+ int print_env (struct grub_env_var *env)
+ {
+ grub_printf ("%s=%s\n", env->name, env->value);
+ return 0;
+ }
+
+ if (argc < 1)
+ {
+ grub_env_iterate (print_env);
+ return 0;
+ }
+
+ var = argv[0];
+ val = grub_strchr (var, '=');
+ if (! val)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "not an assignment");
+
+ val[0] = 0;
+ grub_env_set (var, val + 1);
+ val[0] = '=';
+
+ return 0;
+}
+
+static grub_err_t
+grub_core_cmd_unset (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ if (argc < 1)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "no environment variable specified");
+
+ grub_env_unset (argv[0]);
+ return 0;
+}
+
+static grub_err_t
+grub_core_cmd_export (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char **args)
+{
+ if (argc < 1)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "no environment variable specified");
+
+ grub_env_export (args[0]);
+ return 0;
+}
+
+/* insmod MODULE */
+static grub_err_t
+grub_core_cmd_insmod (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ char *p;
+ grub_dl_t mod;
+
+ if (argc == 0)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified");
+
+ p = grub_strchr (argv[0], '/');
+ if (! p)
+ mod = grub_dl_load (argv[0]);
+ else
+ mod = grub_dl_load_file (argv[0]);
+
+ if (mod)
+ grub_dl_ref (mod);
+
+ return 0;
+}
+
+static int
+grub_mini_print_devices (const char *name)
+{
+ grub_printf ("(%s) ", name);
+
+ return 0;
+}
+
+static int
+grub_mini_print_files (const char *filename, int dir)
+{
+ grub_printf ("%s%s ", filename, dir ? "/" : "");
+
+ return 0;
+}
+
+/* ls [ARG] */
+static grub_err_t
+grub_core_cmd_ls (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
+{
+ if (argc < 1)
+ {
+ grub_device_iterate (grub_mini_print_devices);
+ grub_putchar ('\n');
+ grub_refresh ();
+ }
+ else
+ {
+ char *device_name;
+ grub_device_t dev;
+ grub_fs_t fs;
+ char *path;
+
+ device_name = grub_file_get_device_name (argv[0]);
+ dev = grub_device_open (device_name);
+ if (! dev)
+ goto fail;
+
+ fs = grub_fs_probe (dev);
+ path = grub_strchr (argv[0], ')');
+ if (! path)
+ path = argv[0];
+ else
+ path++;
+
+ if (! path && ! device_name)
+ {
+ grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid argument");
+ goto fail;
+ }
+
+ if (! path)
+ {
+ if (grub_errno == GRUB_ERR_UNKNOWN_FS)
+ grub_errno = GRUB_ERR_NONE;
+
+ grub_printf ("(%s): Filesystem is %s.\n",
+ device_name, fs ? fs->name : "unknown");
+ }
+ else if (fs)
+ {
+ (fs->dir) (dev, path, grub_mini_print_files);
+ grub_putchar ('\n');
+ grub_refresh ();
+ }
+
+ fail:
+ if (dev)
+ grub_device_close (dev);
+
+ grub_free (device_name);
+ }
+
+ return grub_errno;
+}
+
+void
+grub_register_core_commands (void)
+{
+ grub_register_command ("set", grub_core_cmd_set,
+ "set [ENVVAR=VALUE]", "set an environment variable");
+ grub_register_command ("unset", grub_core_cmd_unset,
+ "unset ENVVAR", "remove an environment variable");
+ grub_register_command ("export", grub_core_cmd_export,
+ "export ENVVAR", "Export a variable.");
+ grub_register_command ("ls", grub_core_cmd_ls,
+ "ls [ARG]", "list devices or files");
+ grub_register_command ("insmod", grub_core_cmd_insmod,
+ "insmod MODULE", "insert a module");
+}
}
}
-void
+int
grub_list_iterate (grub_list_t head, grub_list_hook_t hook)
{
grub_list_t p;
for (p = head; p; p = p->next)
if (hook (p))
+ return 1;
+
+ return 0;
+}
+
+void
+grub_list_insert (grub_list_t *head, grub_list_t item,
+ grub_list_test_t test)
+{
+ grub_list_t *p, q;
+
+ for (p = head, q = *p; q; p = &(q->next), q = q->next)
+ if (test (item, q))
break;
+
+ *p = item;
+ item->next = q;
}
void *
grub_list_iterate (GRUB_AS_LIST (head), (grub_list_hook_t) list_find);
return result;
}
+
+void
+grub_prio_list_insert (grub_prio_list_t *head, grub_prio_list_t nitem)
+{
+ int inactive = 0;
+
+ auto int test (grub_prio_list_t new_item, grub_prio_list_t item);
+ int test (grub_prio_list_t new_item, grub_prio_list_t item)
+ {
+ int r;
+
+ r = grub_strcmp (new_item->name, item->name);
+ if (r)
+ return (r < 0);
+
+ if (new_item->prio >= (item->prio & GRUB_PRIO_LIST_PRIO_MASK))
+ {
+ item->prio &= ~GRUB_PRIO_LIST_FLAG_ACTIVE;
+ return 1;
+ }
+
+ inactive = 1;
+ return 0;
+ }
+
+ grub_list_insert (GRUB_AS_LIST_P (head), GRUB_AS_LIST (nitem),
+ (grub_list_test_t) test);
+ if (! inactive)
+ nitem->prio |= GRUB_PRIO_LIST_FLAG_ACTIVE;
+}
#include <grub/partition.h>
#include <grub/env.h>
#include <grub/parser.h>
+#include <grub/list.h>
+#include <grub/command.h>
#define GRUB_RESCUE_BUF_SIZE 256
#define GRUB_RESCUE_MAX_ARGS 20
-struct grub_rescue_command
-{
- const char *name;
- void (*func) (int argc, char *argv[]);
- const char *message;
- struct grub_rescue_command *next;
-};
-typedef struct grub_rescue_command *grub_rescue_command_t;
-
static char linebuf[GRUB_RESCUE_BUF_SIZE];
-static grub_rescue_command_t grub_rescue_command_list;
-
-void
-grub_rescue_register_command (const char *name,
- void (*func) (int argc, char *argv[]),
- const char *message)
-{
- grub_rescue_command_t cmd;
-
- cmd = (grub_rescue_command_t) grub_malloc (sizeof (*cmd));
- if (! cmd)
- return;
-
- cmd->name = name;
- cmd->func = func;
- cmd->message = message;
-
- cmd->next = grub_rescue_command_list;
- grub_rescue_command_list = cmd;
-}
-
-void
-grub_rescue_unregister_command (const char *name)
-{
- grub_rescue_command_t *p, q;
-
- for (p = &grub_rescue_command_list, q = *p; q; p = &(q->next), q = q->next)
- if (grub_strcmp (name, q->name) == 0)
- {
- *p = q->next;
- grub_free (q);
- break;
- }
-}
-
/* Prompt to input a command and read the line. */
static void
grub_rescue_get_command_line (const char *prompt)
grub_refresh ();
}
-/* boot */
-static void
-grub_rescue_cmd_boot (int argc __attribute__ ((unused)),
- char *argv[] __attribute__ ((unused)))
-{
- grub_loader_boot ();
-}
-
-/* cat FILE */
-static void
-grub_rescue_cmd_cat (int argc, char *argv[])
-{
- grub_file_t file;
- char buf[GRUB_DISK_SECTOR_SIZE];
- grub_ssize_t size;
-
- if (argc < 1)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
- return;
- }
-
- file = grub_file_open (argv[0]);
- if (! file)
- return;
-
- while ((size = grub_file_read (file, buf, sizeof (buf))) > 0)
- {
- int i;
-
- for (i = 0; i < size; i++)
- {
- unsigned char c = buf[i];
-
- if ((grub_isprint (c) || grub_isspace (c)) && c != '\r')
- grub_putchar (c);
- else
- {
- grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT);
- grub_printf ("<%x>", (int) c);
- grub_setcolorstate (GRUB_TERM_COLOR_STANDARD);
- }
- }
- }
-
- grub_putchar ('\n');
- grub_refresh ();
- grub_file_close (file);
-}
-
-static int
-grub_rescue_print_devices (const char *name)
-{
- grub_printf ("(%s) ", name);
-
- return 0;
-}
-
-static int
-grub_rescue_print_files (const char *filename, int dir)
-{
- grub_printf ("%s%s ", filename, dir ? "/" : "");
-
- return 0;
-}
-
-/* ls [ARG] */
-static void
-grub_rescue_cmd_ls (int argc, char *argv[])
-{
- if (argc < 1)
- {
- grub_device_iterate (grub_rescue_print_devices);
- grub_putchar ('\n');
- grub_refresh ();
- }
- else
- {
- char *device_name;
- grub_device_t dev;
- grub_fs_t fs;
- char *path;
-
- device_name = grub_file_get_device_name (argv[0]);
- dev = grub_device_open (device_name);
- if (! dev)
- goto fail;
-
- fs = grub_fs_probe (dev);
- path = grub_strchr (argv[0], ')');
- if (! path)
- path = argv[0];
- else
- path++;
-
- if (! path && ! device_name)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid argument");
- goto fail;
- }
-
- if (! path)
- {
- if (grub_errno == GRUB_ERR_UNKNOWN_FS)
- grub_errno = GRUB_ERR_NONE;
-
- grub_printf ("(%s): Filesystem is %s.\n",
- device_name, fs ? fs->name : "unknown");
- }
- else if (fs)
- {
- (fs->dir) (dev, path, grub_rescue_print_files);
- grub_putchar ('\n');
- grub_refresh ();
- }
-
- fail:
- if (dev)
- grub_device_close (dev);
-
- grub_free (device_name);
- }
-}
-
-/* help */
-static void
-grub_rescue_cmd_help (int argc __attribute__ ((unused)),
- char *argv[] __attribute__ ((unused)))
-{
- grub_rescue_command_t p, q;
-
- /* Sort the commands. This is not a good algorithm, but this is enough,
- because rescue mode has a small number of commands. */
- for (p = grub_rescue_command_list; p; p = p->next)
- for (q = p->next; q; q = q->next)
- if (grub_strcmp (p->name, q->name) > 0)
- {
- struct grub_rescue_command tmp;
-
- tmp.name = p->name;
- tmp.func = p->func;
- tmp.message = p->message;
-
- p->name = q->name;
- p->func = q->func;
- p->message = q->message;
-
- q->name = tmp.name;
- q->func = tmp.func;
- q->message = tmp.message;
- }
-
- /* Print them. */
- for (p = grub_rescue_command_list; p; p = p->next)
- grub_printf ("%s\t%s\n", p->name, p->message);
-}
-
-#if 0
-static void
-grub_rescue_cmd_info (void)
-{
- extern void grub_disk_cache_get_performance (unsigned long *,
- unsigned long *);
- unsigned long hits, misses;
-
- grub_disk_cache_get_performance (&hits, &misses);
- grub_printf ("Disk cache: hits = %u, misses = %u ", hits, misses);
- if (hits + misses)
- {
- unsigned long ratio = hits * 10000 / (hits + misses);
- grub_printf ("(%u.%u%%)\n", ratio / 100, ratio % 100);
- }
- else
- grub_printf ("(N/A)\n");
-}
-#endif
-
-/* root [DEVICE] */
-static void
-grub_rescue_cmd_root (int argc, char *argv[])
-{
- grub_device_t dev;
- grub_fs_t fs;
-
- if (argc > 0)
- {
- char *device_name = grub_file_get_device_name (argv[0]);
- if (! device_name)
- return;
-
- grub_env_set ("root", device_name);
- grub_free (device_name);
- }
-
- dev = grub_device_open (0);
- if (! dev)
- return;
-
- fs = grub_fs_probe (dev);
- if (grub_errno == GRUB_ERR_UNKNOWN_FS)
- grub_errno = GRUB_ERR_NONE;
-
- grub_printf ("(%s): Filesystem is %s.\n",
- grub_env_get ("root"), fs ? fs->name : "unknown");
-
- grub_device_close (dev);
-}
-
-#if 0
-static void
-grub_rescue_cmd_testload (int argc, char *argv[])
-{
- grub_file_t file;
- char *buf;
- grub_ssize_t size;
- grub_ssize_t pos;
- auto void read_func (unsigned long sector, unsigned offset, unsigned len);
-
- void read_func (unsigned long sector __attribute__ ((unused)),
- unsigned offset __attribute__ ((unused)),
- unsigned len __attribute__ ((unused)))
- {
- grub_putchar ('.');
- grub_refresh ();
- }
-
- if (argc < 1)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
- return;
- }
-
- file = grub_file_open (argv[0]);
- if (! file)
- return;
-
- size = grub_file_size (file) & ~(GRUB_DISK_SECTOR_SIZE - 1);
- if (size == 0)
- {
- grub_file_close (file);
- return;
- }
-
- buf = grub_malloc (size);
- if (! buf)
- goto fail;
-
- grub_printf ("Reading %s sequentially", argv[0]);
- file->read_hook = read_func;
- if (grub_file_read (file, buf, size) != size)
- goto fail;
- grub_printf (" Done.\n");
-
- /* Read sequentially again. */
- grub_printf ("Reading %s sequentially again", argv[0]);
- if (grub_file_seek (file, 0) < 0)
- goto fail;
-
- for (pos = 0; pos < size; pos += GRUB_DISK_SECTOR_SIZE)
- {
- char sector[GRUB_DISK_SECTOR_SIZE];
-
- if (grub_file_read (file, sector, GRUB_DISK_SECTOR_SIZE)
- != GRUB_DISK_SECTOR_SIZE)
- goto fail;
-
- if (grub_memcmp (sector, buf + pos, GRUB_DISK_SECTOR_SIZE) != 0)
- {
- grub_printf ("\nDiffers in %d\n", pos);
- goto fail;
- }
- }
- grub_printf (" Done.\n");
-
- /* Read backwards and compare. */
- grub_printf ("Reading %s backwards", argv[0]);
- pos = size;
- while (pos > 0)
- {
- char sector[GRUB_DISK_SECTOR_SIZE];
-
- pos -= GRUB_DISK_SECTOR_SIZE;
-
- if (grub_file_seek (file, pos) < 0)
- goto fail;
-
- if (grub_file_read (file, sector, GRUB_DISK_SECTOR_SIZE)
- != GRUB_DISK_SECTOR_SIZE)
- goto fail;
-
- if (grub_memcmp (sector, buf + pos, GRUB_DISK_SECTOR_SIZE) != 0)
- {
- int i;
-
- grub_printf ("\nDiffers in %d\n", pos);
-
- for (i = 0; i < GRUB_DISK_SECTOR_SIZE; i++)
- grub_putchar (buf[pos + i]);
-
- if (i)
- grub_refresh ();
-
- goto fail;
- }
- }
- grub_printf (" Done.\n");
-
- fail:
-
- grub_file_close (file);
- grub_free (buf);
-}
-#endif
-
-/* dump ADDRESS [SIZE] */
-static void
-grub_rescue_cmd_dump (int argc, char *argv[])
-{
- grub_uint8_t *addr;
- grub_size_t size = 4;
-
- if (argc == 0)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no address specified");
- return;
- }
-
- addr = (grub_uint8_t *) grub_strtoul (argv[0], 0, 0);
- if (grub_errno)
- return;
-
- if (argc > 1)
- size = (grub_size_t) grub_strtoul (argv[1], 0, 0);
-
- while (size--)
- {
- grub_printf ("%x%x ", *addr >> 4, *addr & 0xf);
- addr++;
- }
-}
-
-/* insmod MODULE */
-static void
-grub_rescue_cmd_insmod (int argc, char *argv[])
-{
- char *p;
- grub_dl_t mod;
-
- if (argc == 0)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified");
- return;
- }
-
- p = grub_strchr (argv[0], '/');
- if (! p)
- mod = grub_dl_load (argv[0]);
- else
- mod = grub_dl_load_file (argv[0]);
-
- if (mod)
- grub_dl_ref (mod);
-}
-
-/* rmmod MODULE */
-static void
-grub_rescue_cmd_rmmod (int argc, char *argv[])
-{
- grub_dl_t mod;
-
- if (argc == 0)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified");
- return;
- }
-
- mod = grub_dl_get (argv[0]);
- if (! mod)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no such module");
- return;
- }
-
- if (grub_dl_unref (mod) <= 0)
- grub_dl_unload (mod);
-}
-
-/* lsmod */
-static void
-grub_rescue_cmd_lsmod (int argc __attribute__ ((unused)),
- char *argv[] __attribute__ ((unused)))
-{
- auto int print_module (grub_dl_t mod);
-
- int print_module (grub_dl_t mod)
- {
- grub_dl_dep_t dep;
-
- grub_printf ("%s\t%d\t\t", mod->name, mod->ref_count);
- for (dep = mod->dep; dep; dep = dep->next)
- {
- if (dep != mod->dep)
- grub_putchar (',');
-
- grub_printf ("%s", dep->mod->name);
- }
- grub_putchar ('\n');
- grub_refresh ();
-
- return 0;
- }
-
- grub_printf ("Name\tRef Count\tDependencies\n");
- grub_dl_iterate (print_module);
-}
-
-/* set ENVVAR=VALUE */
-static void
-grub_rescue_cmd_set (int argc, char *argv[])
-{
- char *var;
- char *val;
-
- auto int print_env (struct grub_env_var *env);
-
- int print_env (struct grub_env_var *env)
- {
- grub_printf ("%s=%s\n", env->name, env->value);
- return 0;
- }
-
- if (argc < 1)
- {
- grub_env_iterate (print_env);
- return;
- }
-
- var = argv[0];
- val = grub_strchr (var, '=');
- if (! val)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "not an assignment");
- return;
- }
-
- val[0] = 0;
- grub_env_set (var, val + 1);
- val[0] = '=';
-}
-
-static void
-grub_rescue_cmd_unset (int argc, char *argv[])
-{
- if (argc < 1)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no environment variable specified");
- return;
- }
-
- grub_env_unset (argv[0]);
-}
-
-/* exit */
-static void
-grub_rescue_cmd_exit (int argc __attribute__ ((unused)),
- char *argv[] __attribute__ ((unused)))
-{
- grub_exit ();
-}
-
static void
attempt_normal_mode (void)
{
- grub_rescue_command_t cmd;
+ grub_command_t cmd;
- for (cmd = grub_rescue_command_list; cmd; cmd = cmd->next)
- {
- if (grub_strcmp ("normal", cmd->name) == 0)
- {
- (cmd->func) (0, 0);
- break;
- }
- }
+ cmd = grub_command_find ("normal");
+ if (cmd)
+ (cmd->func) (cmd, 0, 0);
}
/* Enter the rescue mode. */
return 0;
}
+ grub_register_core_commands ();
+
/* First of all, attempt to execute the normal mode. */
attempt_normal_mode ();
grub_printf ("Entering rescue mode...\n");
- grub_rescue_register_command ("boot", grub_rescue_cmd_boot,
- "boot an operating system");
- grub_rescue_register_command ("cat", grub_rescue_cmd_cat,
- "show the contents of a file");
- grub_rescue_register_command ("help", grub_rescue_cmd_help,
- "show this message");
- grub_rescue_register_command ("ls", grub_rescue_cmd_ls,
- "list devices or files");
- grub_rescue_register_command ("root", grub_rescue_cmd_root,
- "set the root device");
- grub_rescue_register_command ("dump", grub_rescue_cmd_dump,
- "dump memory");
- grub_rescue_register_command ("insmod", grub_rescue_cmd_insmod,
- "insert a module");
- grub_rescue_register_command ("rmmod", grub_rescue_cmd_rmmod,
- "remove a module");
- grub_rescue_register_command ("lsmod", grub_rescue_cmd_lsmod,
- "show loaded modules");
- grub_rescue_register_command ("set", grub_rescue_cmd_set,
- "set an environment variable");
- grub_rescue_register_command ("unset", grub_rescue_cmd_unset,
- "remove an environment variable");
- grub_rescue_register_command ("exit", grub_rescue_cmd_exit,
- "exit from GRUB");
-
while (1)
{
char *line = linebuf;
char *name;
int n;
- grub_rescue_command_t cmd;
+ grub_command_t cmd;
char **args;
/* Print an error, if any. */
/* If nothing is specified, restart. */
if (*name == '\0')
- {
- grub_free (args[0]);
- continue;
- }
-
- /* Find the command and execute it. */
- for (cmd = grub_rescue_command_list; cmd; cmd = cmd->next)
{
- if (grub_strcmp (name, cmd->name) == 0)
- {
- (cmd->func) (n, &args[1]);
- break;
- }
+ grub_free (args[0]);
+ continue;
}
- /* If not found, print an error message. */
- if (! cmd)
+ cmd = grub_command_find (name);
+ if (cmd)
+ {
+ (cmd->func) (cmd, n, &args[1]);
+ }
+ else
{
grub_printf ("Unknown command `%s'\n", name);
grub_printf ("Try `help' for usage\n");
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <grub/arg.h>
#include <grub/misc.h>
#include <grub/mm.h>
#include <grub/err.h>
-#include <grub/normal.h>
#include <grub/term.h>
+#include <grub/extcmd.h>
/* Built-in parser for default options. */
#define SHORT_ARG_HELP -100
if (options)
found = fnd_short (options);
-
+
if (! found)
{
switch (c)
break;
}
}
-
+
return found;
}
if (options)
found = fnd_long (options);
-
+
if (! found)
found = fnd_long (help_options);
-
+
return found;
}
static void
-show_usage (grub_command_t cmd)
+show_usage (grub_extcmd_t cmd)
{
- grub_printf ("Usage: %s\n", cmd->summary);
+ grub_printf ("Usage: %s\n", cmd->cmd->summary);
}
void
-grub_arg_show_help (grub_command_t cmd)
+grub_arg_show_help (grub_extcmd_t cmd)
{
auto void showargs (const struct grub_arg_option *opt);
int h_is_used = 0;
int u_is_used = 0;
-
+
auto void showargs (const struct grub_arg_option *opt)
{
for (; opt->doc; opt++)
{
int spacing = 20;
-
+
if (opt->shortarg && grub_isgraph (opt->shortarg))
grub_printf ("-%c%c ", opt->shortarg, opt->longarg ? ',':' ');
else if (opt->shortarg == SHORT_ARG_HELP && ! h_is_used)
grub_printf ("-u, ");
else
grub_printf (" ");
-
+
if (opt->longarg)
{
grub_printf ("--%s", opt->longarg);
spacing -= grub_strlen (opt->longarg) + 2;
-
+
if (opt->arg)
{
grub_printf ("=%s", opt->arg);
break;
}
}
- }
+ }
show_usage (cmd);
- grub_printf ("%s\n\n", cmd->description);
+ grub_printf ("%s\n\n", cmd->cmd->description);
if (cmd->options)
showargs (cmd->options);
showargs (help_options);
static int
-parse_option (grub_command_t cmd, int key, char *arg, struct grub_arg_list *usr)
+parse_option (grub_extcmd_t cmd, int key, char *arg, struct grub_arg_list *usr)
{
switch (key)
{
case SHORT_ARG_HELP:
grub_arg_show_help (cmd);
return -1;
-
+
case SHORT_ARG_USAGE:
show_usage (cmd);
return -1;
opt++;
i++;
}
-
+
if (found == -1)
return -1;
usr[found].arg = arg;
}
}
-
+
return 0;
}
int
-grub_arg_parse (grub_command_t cmd, int argc, char **argv,
+grub_arg_parse (grub_extcmd_t cmd, int argc, char **argv,
struct grub_arg_list *usr, char ***args, int *argnum)
{
int curarg;
{
if (add_arg (arg) != 0)
goto fail;
-
+
continue;
}
"Unknown argument `-%c'\n", *curshort);
goto fail;
}
-
+
curshort++;
/* Parse all arguments here except the last one because
if (curarg + 1 < argc)
{
char *nextarg = argv[curarg + 1];
- if (!(opt->flags & GRUB_ARG_OPTION_OPTIONAL)
+ if (!(opt->flags & GRUB_ARG_OPTION_OPTIONAL)
|| (grub_strlen (nextarg) < 2 || nextarg[0] != '-'))
option = argv[++curarg];
}
break;
}
}
-
+
}
else /* The argument starts with "--". */
{
}
}
- if (! (opt->type == ARG_TYPE_NONE
+ if (! (opt->type == ARG_TYPE_NONE
|| (! option && (opt->flags & GRUB_ARG_OPTION_OPTIONAL))))
{
if (! option)
{
- grub_error (GRUB_ERR_BAD_ARGUMENT,
+ grub_error (GRUB_ERR_BAD_ARGUMENT,
"Missing mandatory option for `%s'\n", opt->longarg);
goto fail;
}
-
+
switch (opt->type)
{
case ARG_TYPE_NONE:
/* This will never happen. */
break;
-
+
case ARG_TYPE_STRING:
/* No need to do anything. */
break;
-
+
case ARG_TYPE_INT:
{
char *tail;
-
+
grub_strtoul (option, &tail, 0);
if (tail == 0 || tail == option || *tail != '\0' || grub_errno)
{
- grub_error (GRUB_ERR_BAD_ARGUMENT,
- "The argument `%s' requires an integer.",
+ grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "The argument `%s' requires an integer.",
arg);
goto fail;
}
break;
}
-
+
case ARG_TYPE_DEVICE:
case ARG_TYPE_DIR:
case ARG_TYPE_FILE:
{
if (option)
{
- grub_error (GRUB_ERR_BAD_ARGUMENT,
+ grub_error (GRUB_ERR_BAD_ARGUMENT,
"A value was assigned to the argument `%s' while it "
"doesn't require an argument\n", arg);
goto fail;
}
grub_free (longarg);
longarg = 0;
- }
+ }
complete = 1;
fail:
grub_free (longarg);
-
+
return complete;
}
#include <grub/mm.h>
#include <grub/dl.h>
#include <grub/misc.h>
-#include <grub/normal.h>
#include <grub/efi/api.h>
#include <grub/efi/efi.h>
+#include <grub/command.h>
static grub_dl_t my_mod;
};
static grub_err_t
-grub_cmd_appleloader (struct grub_arg_list *state __attribute__ ((unused)),
+grub_cmd_appleloader (grub_command_t cmd __attribute__ ((unused)),
int argc, char *argv[])
{
grub_efi_boot_services_t *b;
return grub_errno;
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(appleloader)
{
- grub_register_command ("appleloader", grub_cmd_appleloader,
- GRUB_COMMAND_FLAG_BOTH,
- "appleloader [OPTS]",
- "Boot legacy system.", 0);
-
+ cmd = grub_register_command ("appleloader", grub_cmd_appleloader,
+ "appleloader [OPTS]", "Boot legacy system.");
my_mod = mod;
}
GRUB_MOD_FINI(appleloader)
{
- grub_unregister_command ("appleloader");
+ grub_unregister_command (cmd);
}
#include <grub/misc.h>
#include <grub/mm.h>
#include <grub/types.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
#include <grub/efi/api.h>
#include <grub/efi/efi.h>
#include <grub/efi/disk.h>
-#include <grub/efi/chainloader.h>
+#include <grub/command.h>
static grub_dl_t my_mod;
return file_path;
}
-void
-grub_rescue_cmd_chainloader (int argc, char *argv[])
+static grub_err_t
+grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
grub_ssize_t size;
char *filename;
if (argc == 0)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
- return;
- }
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
filename = argv[0];
grub_dl_ref (my_mod);
}
grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0);
- return;
+ return 0;
fail:
efi_call_2 (b->free_pages, address, pages);
grub_dl_unref (my_mod);
+
+ return grub_errno;
}
-static const char loader_name[] = "chainloader";
+static grub_command_t cmd;
GRUB_MOD_INIT(chainloader)
{
- grub_rescue_register_command (loader_name,
- grub_rescue_cmd_chainloader,
- "load another boot loader");
+ cmd = grub_register_command ("chainloader", grub_cmd_chainloader,
+ 0, "load another boot loader");
my_mod = mod;
}
GRUB_MOD_FINI(chainloader)
{
- grub_rescue_unregister_command (loader_name);
+ grub_unregister_command (cmd);
}
+++ /dev/null
-/* chainloader_normal.c - boot another boot loader */
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2004,2006,2007 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/efi/chainloader.h>
-#include <grub/err.h>
-#include <grub/normal.h>
-#include <grub/dl.h>
-
-static grub_err_t
-chainloader_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- if (argc == 0)
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
- else
- grub_rescue_cmd_chainloader (argc, args);
- return grub_errno;
-}
-
-GRUB_MOD_INIT(chainloader_normal)
-{
- (void) mod; /* To stop warning. */
- grub_register_command ("chainloader", chainloader_command,
- GRUB_COMMAND_FLAG_BOTH,
- "chainloader FILE",
- "Prepare to boot another boot loader.", 0);
-}
-
-GRUB_MOD_FINI(chainloader_normal)
-{
- grub_unregister_command ("chainloader");
-}
#include <grub/machine/memory.h>
#include <grub/file.h>
#include <grub/err.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/elfload.h>
#include <grub/misc.h>
#include <grub/gzio.h>
#include <grub/aout.h>
+#include <grub/command.h>
#define ALIGN_DWORD(a) ALIGN_UP (a, 4)
#define ALIGN_PAGE(a) ALIGN_UP (a, 4096)
return result;
}
-void
-grub_rescue_cmd_freebsd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_freebsd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
kernel_type = KERNEL_TYPE_FREEBSD;
bootflags = ((argc <= 1) ? 0 :
if ((is_elf_kernel) &&
(grub_freebsd_add_meta_module (1, argc, argv, kern_start,
kern_end - kern_start)))
- return;
+ return grub_errno;
grub_loader_set (grub_freebsd_boot, grub_bsd_unload, 1);
}
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_openbsd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_openbsd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
kernel_type = KERNEL_TYPE_OPENBSD;
bootflags = ((argc <= 1) ? 0 :
if (grub_bsd_load (argc, argv) == GRUB_ERR_NONE)
grub_loader_set (grub_openbsd_boot, grub_bsd_unload, 1);
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_netbsd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_netbsd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
kernel_type = KERNEL_TYPE_NETBSD;
bootflags = ((argc <= 1) ? 0 :
if (grub_bsd_load (argc, argv) == GRUB_ERR_NONE)
grub_loader_set (grub_netbsd_boot, grub_bsd_unload, 1);
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_freebsd_loadenv (int argc, char *argv[])
+static grub_err_t
+grub_cmd_freebsd_loadenv (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
char *buf = 0, *curr, *next;
int len;
if (kernel_type != KERNEL_TYPE_FREEBSD)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "only freebsd support environment");
- return;
- }
+ return grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "only freebsd support environment");
if (argc == 0)
{
if (file)
grub_file_close (file);
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_freebsd_module (int argc, char *argv[])
+static grub_err_t
+grub_cmd_freebsd_module (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
if (kernel_type != KERNEL_TYPE_FREEBSD)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "only freebsd support module");
- return;
- }
+ return grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "only freebsd support module");
if (!is_elf_kernel)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "only elf kernel support module");
- return;
- }
+ return grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "only elf kernel support module");
/* List the current modules if no parameter. */
if (!argc)
{
grub_freebsd_list_modules ();
- return;
+ return 0;
}
file = grub_gzfile_open (argv[0], 1);
fail:
if (file)
grub_file_close (file);
+
+ return grub_errno;
}
+static grub_command_t cmd_freebsd, cmd_openbsd, cmd_netbsd;
+static grub_command_t cmd_freebsd_loadenv, cmd_freebsd_module;
+
GRUB_MOD_INIT (bsd)
{
- grub_rescue_register_command ("freebsd",
- grub_rescue_cmd_freebsd,
- "load freebsd kernel");
- grub_rescue_register_command ("openbsd",
- grub_rescue_cmd_openbsd,
- "load openbsd kernel");
- grub_rescue_register_command ("netbsd",
- grub_rescue_cmd_netbsd, "load netbsd kernel");
-
- grub_rescue_register_command ("freebsd_loadenv",
- grub_rescue_cmd_freebsd_loadenv,
- "load freebsd env");
- grub_rescue_register_command ("freebsd_module",
- grub_rescue_cmd_freebsd_module,
- "load freebsd module");
+ cmd_freebsd =
+ grub_register_command ("freebsd", grub_cmd_freebsd,
+ 0, "load freebsd kernel");
+ cmd_openbsd =
+ grub_register_command ("openbsd", grub_cmd_openbsd,
+ 0, "load openbsd kernel");
+ cmd_netbsd =
+ grub_register_command ("netbsd", grub_cmd_netbsd,
+ 0, "load netbsd kernel");
+ cmd_freebsd_loadenv =
+ grub_register_command ("freebsd_loadenv", grub_cmd_freebsd_loadenv,
+ 0, "load freebsd env");
+ cmd_freebsd_module =
+ grub_register_command ("freebsd_module", grub_cmd_freebsd_module,
+ 0, "load freebsd module");
my_mod = mod;
}
GRUB_MOD_FINI (bsd)
{
- grub_rescue_unregister_command ("freebsd");
- grub_rescue_unregister_command ("openbsd");
- grub_rescue_unregister_command ("netbsd");
+ grub_unregister_command (cmd_freebsd);
+ grub_unregister_command (cmd_openbsd);
+ grub_unregister_command (cmd_netbsd);
- grub_rescue_unregister_command ("freebsd_loadenv");
- grub_rescue_unregister_command ("freebsd_module");
+ grub_unregister_command (cmd_freebsd_loadenv);
+ grub_unregister_command (cmd_freebsd_module);
if (mod_buf)
{
+++ /dev/null
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2008 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/loader.h>
-#include <grub/machine/loader.h>
-#include <grub/err.h>
-#include <grub/normal.h>
-#include <grub/dl.h>
-#include <grub/aout.h>
-#include <grub/cpu/bsd.h>
-
-static grub_err_t
-grub_normal_freebsd_command (struct grub_arg_list *state
- __attribute__ ((unused)), int argc, char **args)
-{
- grub_rescue_cmd_freebsd (argc, args);
- return grub_errno;
-}
-
-static grub_err_t
-grub_normal_openbsd_command (struct grub_arg_list *state
- __attribute__ ((unused)), int argc, char **args)
-{
- grub_rescue_cmd_openbsd (argc, args);
- return grub_errno;
-}
-
-static grub_err_t
-grub_normal_netbsd_command (struct grub_arg_list *state
- __attribute__ ((unused)), int argc, char **args)
-{
- grub_rescue_cmd_netbsd (argc, args);
- return grub_errno;
-}
-
-static grub_err_t
-grub_normal_freebsd_loadenv_command (struct grub_arg_list *state
- __attribute__ ((unused)), int argc,
- char **args)
-{
- grub_rescue_cmd_freebsd_loadenv (argc, args);
- return grub_errno;
-}
-
-static grub_err_t
-grub_normal_freebsd_module_command (struct grub_arg_list *state
- __attribute__ ((unused)), int argc,
- char **args)
-{
- grub_rescue_cmd_freebsd_module (argc, args);
- return grub_errno;
-}
-
-GRUB_MOD_INIT (bsd_normal)
-{
- (void) mod; /* To stop warning. */
- grub_register_command ("freebsd", grub_normal_freebsd_command,
- GRUB_COMMAND_FLAG_BOTH,
- "freebsd FILE [OPTS] [ARGS...]",
- "Load freebsd kernel.", 0);
- grub_register_command ("openbsd", grub_normal_openbsd_command,
- GRUB_COMMAND_FLAG_BOTH,
- "openbsd FILE [OPTS]", "Load openbsd kernel.", 0);
- grub_register_command ("netbsd", grub_normal_netbsd_command,
- GRUB_COMMAND_FLAG_BOTH,
- "netbsd FILE [OPTS]", "Load netbsd kernel.", 0);
-
- grub_register_command ("freebsd_loadenv",
- grub_normal_freebsd_loadenv_command,
- GRUB_COMMAND_FLAG_BOTH,
- "freebsd_loadenv FILE", "Load freebsd env.", 0);
- grub_register_command ("freebsd_module",
- grub_normal_freebsd_module_command,
- GRUB_COMMAND_FLAG_BOTH,
- "freebsd_module [FILE [type=module_type] [ARGS...]]",
- "Load freebsd module.", 0);
-}
-
-GRUB_MOD_FINI (bsd_normal)
-{
- grub_unregister_command ("freebsd");
- grub_unregister_command ("openbsd");
- grub_unregister_command ("netbsd");
-
- grub_unregister_command ("freebsd_loadenv");
- grub_unregister_command ("freebsd_module");
-}
#include <grub/err.h>
#include <grub/misc.h>
#include <grub/types.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/term.h>
#include <grub/efi/api.h>
#include <grub/efi/efi.h>
#include <grub/efi/uga_draw.h>
+#include <grub/command.h>
#define GRUB_LINUX_CL_OFFSET 0x1000
#define GRUB_LINUX_CL_END_OFFSET 0x2000
return 0;
}
-void
-grub_rescue_cmd_linux (int argc, char *argv[])
+static grub_err_t
+grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
struct linux_kernel_header lh;
grub_dl_unref (my_mod);
loaded = 0;
}
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_initrd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
grub_ssize_t size;
fail:
if (file)
grub_file_close (file);
+
+ return grub_errno;
}
+static grub_command_t cmd_linux, cmd_initrd;
GRUB_MOD_INIT(linux)
{
- grub_rescue_register_command ("linux",
- grub_rescue_cmd_linux,
- "load linux");
- grub_rescue_register_command ("initrd",
- grub_rescue_cmd_initrd,
- "load initrd");
+ cmd_linux = grub_register_command ("linux", grub_cmd_linux,
+ 0, "load linux");
+ cmd_initrd = grub_register_command ("initrd", grub_cmd_initrd,
+ 0, "load initrd");
my_mod = mod;
}
GRUB_MOD_FINI(linux)
{
- grub_rescue_unregister_command ("linux");
- grub_rescue_unregister_command ("initrd");
+ grub_unregister_command (cmd_linux);
+ grub_unregister_command (cmd_initrd);
}
#include <grub/disk.h>
#include <grub/misc.h>
#include <grub/types.h>
-#include <grub/rescue.h>
#include <grub/mm.h>
#include <grub/dl.h>
#include <grub/env.h>
#include <grub/term.h>
#include <grub/cpu/linux.h>
#include <grub/ieee1275/ieee1275.h>
+#include <grub/command.h>
#define GRUB_OFW_LINUX_PARAMS_ADDR 0x90000
#define GRUB_OFW_LINUX_KERNEL_ADDR 0x100000
return GRUB_ERR_NONE;
}
-void
-grub_rescue_cmd_linux (int argc, char *argv[])
+static grub_err_t
+grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
struct linux_kernel_header lh;
grub_dl_unref (my_mod);
}
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_initrd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
fail:
if (file)
grub_file_close (file);
+
+ return grub_errno;
}
+static grub_command_t cmd_linux, cmd_initrd;
+
GRUB_MOD_INIT(linux)
{
- grub_rescue_register_command ("linux",
- grub_rescue_cmd_linux,
- "load linux");
- grub_rescue_register_command ("initrd",
- grub_rescue_cmd_initrd,
- "load initrd");
+ cmd_linux = grub_register_command ("linux", grub_cmd_linux,
+ 0, "load linux");
+ cmd_initrd = grub_register_command ("initrd", grub_cmd_initrd,
+ 0, "load initrd");
my_mod = mod;
}
GRUB_MOD_FINI(linux)
{
- grub_rescue_unregister_command ("linux");
- grub_rescue_unregister_command ("initrd");
+ grub_unregister_command (cmd_linux);
+ grub_unregister_command (cmd_initrd);
}
#include <grub/err.h>
#include <grub/misc.h>
#include <grub/types.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/term.h>
/* FIXME: the definition of `struct grub_video_render_target' is
VBE-specific. */
#include <grub/i386/pc/vbe.h>
+#include <grub/command.h>
#define GRUB_LINUX_CL_OFFSET 0x1000
#define GRUB_LINUX_CL_END_OFFSET 0x2000
return GRUB_ERR_NONE;
}
-void
-grub_rescue_cmd_linux (int argc, char *argv[])
+static grub_err_t
+grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
struct linux_kernel_header lh;
grub_dl_unref (my_mod);
loaded = 0;
}
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_initrd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
grub_ssize_t size;
fail:
if (file)
grub_file_close (file);
+
+ return grub_errno;
}
+static grub_command_t cmd_linux, cmd_initrd;
GRUB_MOD_INIT(linux)
{
- grub_rescue_register_command ("linux",
- grub_rescue_cmd_linux,
- "load linux");
- grub_rescue_register_command ("initrd",
- grub_rescue_cmd_initrd,
- "load initrd");
+ cmd_linux = grub_register_command ("linux", grub_cmd_linux,
+ 0, "load linux");
+ cmd_initrd = grub_register_command ("initrd", grub_cmd_initrd,
+ 0, "load initrd");
my_mod = mod;
}
GRUB_MOD_FINI(linux)
{
- grub_rescue_unregister_command ("linux");
- grub_rescue_unregister_command ("initrd");
+ grub_unregister_command (cmd_linux);
+ grub_unregister_command (cmd_initrd);
}
#include <grub/machine/init.h>
#include <grub/partition.h>
#include <grub/machine/memory.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
+#include <grub/command.h>
static grub_dl_t my_mod;
static int boot_drive;
return GRUB_ERR_NONE;
}
-void
+static void
grub_chainloader_cmd (const char *filename, grub_chainloader_flags_t flags)
{
grub_file_t file = 0;
grub_dl_unref (my_mod);
}
-static void
-grub_rescue_cmd_chainloader (int argc, char *argv[])
+static grub_err_t
+grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_chainloader_flags_t flags = 0;
}
if (argc == 0)
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
else
grub_chainloader_cmd (argv[0], flags);
+
+ return grub_errno;
}
-static const char loader_name[] = "chainloader";
+static grub_command_t cmd;
GRUB_MOD_INIT(chainloader)
{
- grub_rescue_register_command (loader_name,
- grub_rescue_cmd_chainloader,
- "load another boot loader");
+ cmd = grub_register_command ("chainloader", grub_cmd_chainloader,
+ 0, "load another boot loader");
my_mod = mod;
}
GRUB_MOD_FINI(chainloader)
{
- grub_rescue_unregister_command (loader_name);
+ grub_unregister_command (cmd);
}
+++ /dev/null
-/* chainloader_normal.c - boot another boot loader */
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2004,2007 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/machine/chainloader.h>
-#include <grub/err.h>
-#include <grub/normal.h>
-#include <grub/dl.h>
-
-static const struct grub_arg_option options[] =
- {
- {"force", 'f', 0, "skip bootsector magic number test", 0, 0},
- {0, 0, 0, 0, 0, 0}
- };
-
-static grub_err_t
-chainloader_command (struct grub_arg_list *state,
- int argc, char **args)
-{
- grub_chainloader_flags_t flags = state[0].set ? GRUB_CHAINLOADER_FORCE : 0;
-
- if (argc == 0)
- grub_error (GRUB_ERR_BAD_ARGUMENT, "no file specified");
- else
- grub_chainloader_cmd (args[0], flags);
- return grub_errno;
-}
-
-GRUB_MOD_INIT(chainloader_normal)
-{
- (void) mod; /* To stop warning. */
- grub_register_command ("chainloader", chainloader_command,
- GRUB_COMMAND_FLAG_BOTH,
- "chainloader [-f] FILE",
- "Prepare to boot another boot loader.", options);
-}
-
-GRUB_MOD_FINI(chainloader_normal)
-{
- grub_unregister_command ("chainloader");
-}
#include <grub/types.h>
#include <grub/machine/init.h>
#include <grub/machine/memory.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
#include <grub/cpu/linux.h>
+#include <grub/command.h>
#define GRUB_LINUX_CL_OFFSET 0x9000
#define GRUB_LINUX_CL_END_OFFSET 0x90FF
return GRUB_ERR_NONE;
}
-void
-grub_rescue_cmd_linux (int argc, char *argv[])
+static grub_err_t
+grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
struct linux_kernel_header lh;
grub_dl_unref (my_mod);
loaded = 0;
}
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_initrd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
grub_ssize_t size;
fail:
if (file)
grub_file_close (file);
+
+ return grub_errno;
}
+static grub_command_t cmd_linux, cmd_initrd;
GRUB_MOD_INIT(linux)
{
- grub_rescue_register_command ("linux",
- grub_rescue_cmd_linux,
- "load linux");
- grub_rescue_register_command ("initrd",
- grub_rescue_cmd_initrd,
- "load initrd");
+ cmd_linux =
+ grub_register_command ("linux", grub_cmd_linux,
+ 0, "load linux");
+ cmd_initrd =
+ grub_register_command ("initrd", grub_cmd_initrd,
+ 0, "load initrd");
my_mod = mod;
}
GRUB_MOD_FINI(linux)
{
- grub_rescue_unregister_command ("linux");
- grub_rescue_unregister_command ("initrd");
+ grub_unregister_command (cmd_linux);
+ grub_unregister_command (cmd_initrd);
}
+++ /dev/null
-/* multiboot_normal.c - boot another boot loader */
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2004,2005,2007 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/machine/loader.h>
-#include <grub/err.h>
-#include <grub/normal.h>
-#include <grub/dl.h>
-
-static grub_err_t
-grub_normal_cmd_multiboot (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_multiboot (argc, args);
- return grub_errno;
-}
-
-
-static grub_err_t
-grub_normal_cmd_module (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_module (argc, args);
- return grub_errno;
-}
-
-GRUB_MOD_INIT(multiboot_normal)
-{
- (void) mod; /* To stop warning. */
- grub_register_command ("multiboot", grub_normal_cmd_multiboot,
- GRUB_COMMAND_FLAG_BOTH | GRUB_COMMAND_FLAG_NO_ARG_PARSE,
- "multiboot FILE [ARGS...]",
- "Load a Multiboot kernel.", 0);
-
- grub_register_command ("module", grub_normal_cmd_module,
- GRUB_COMMAND_FLAG_BOTH | GRUB_COMMAND_FLAG_NO_ARG_PARSE,
- "module FILE [ARGS...]",
- "Load a Multiboot module.", 0);
-}
-
-GRUB_MOD_FINI(multiboot_normal)
-{
- grub_unregister_command ("multiboot");
- grub_unregister_command ("module");
-}
+++ /dev/null
-/* linux_normal.c - boot linux */
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2004,2005,2006,2007 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/machine/loader.h>
-#include <grub/err.h>
-#include <grub/normal.h>
-#include <grub/dl.h>
-
-static grub_err_t
-grub_normal_linux_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_linux (argc, args);
- return grub_errno;
-}
-
-
-static grub_err_t
-grub_normal_initrd_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_initrd (argc, args);
- return grub_errno;
-}
-
-GRUB_MOD_INIT(linux_normal)
-{
- (void) mod; /* To stop warning. */
- grub_register_command ("linux", grub_normal_linux_command,
- GRUB_COMMAND_FLAG_BOTH,
- "linux FILE [ARGS...]",
- "Load a linux kernel.", 0);
-
- grub_register_command ("initrd", grub_normal_initrd_command,
- GRUB_COMMAND_FLAG_BOTH,
- "initrd FILE",
- "Load an initrd.", 0);
-}
-
-GRUB_MOD_FINI(linux_normal)
-{
- grub_unregister_command ("linux");
- grub_unregister_command ("initrd");
-}
#include <multiboot2.h>
#include <grub/machine/machine.h>
-#include <grub/multiboot_loader.h>
#include <grub/multiboot.h>
#include <grub/multiboot2.h>
#include <grub/elf.h>
#include <grub/file.h>
#include <grub/err.h>
-#include <grub/rescue.h>
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/misc.h>
#include <grub/gzio.h>
+#include <grub/command.h>
grub_dl_t my_mod;
return found_status;
}
-void
-grub_rescue_cmd_multiboot_loader (int argc, char *argv[])
+static grub_err_t
+grub_cmd_multiboot_loader (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
-
grub_file_t file = 0;
int header_multi_ver_found = 0;
grub_file_close (file);
grub_dl_unref (my_mod);
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_module_loader (int argc, char *argv[])
+static grub_err_t
+grub_cmd_module_loader (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
#if defined(GRUB_MACHINE_PCBIOS) || defined(GRUB_MACHINE_LINUXBIOS)
"Launching multiboot 2 grub_module2() function\n");
grub_module2 (argc, argv);
}
+
+ return grub_errno;
}
+static grub_command_t cmd_multiboot, cmd_module;
+
GRUB_MOD_INIT(multiboot)
{
- grub_rescue_register_command ("multiboot", grub_rescue_cmd_multiboot_loader,
- "load a multiboot kernel");
- grub_rescue_register_command ("module", grub_rescue_cmd_module_loader,
- "load a multiboot module");
+ cmd_multiboot =
+ grub_register_command ("multiboot", grub_cmd_multiboot_loader,
+ 0, "load a multiboot kernel");
+ cmd_module =
+ grub_register_command ("module", grub_cmd_module_loader,
+ 0, "load a multiboot module");
my_mod = mod;
}
GRUB_MOD_FINI(multiboot)
{
- grub_rescue_unregister_command ("multiboot");
- grub_rescue_unregister_command ("module");
+ grub_unregister_command (cmd_multiboot);
+ grub_unregister_command (cmd_module);
}
+++ /dev/null
-/* multiboot_loader_normal.c - boot another boot loader */
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2007 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/err.h>
-#include <grub/normal.h>
-#include <grub/dl.h>
-#include <grub/multiboot_loader.h>
-
-static grub_err_t
-grub_normal_cmd_multiboot (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_multiboot_loader (argc, args);
- return grub_errno;
-}
-
-static grub_err_t
-grub_normal_cmd_module (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_module_loader (argc, args);
- return grub_errno;
-}
-
-GRUB_MOD_INIT(multiboot_loader_normal)
-{
- (void) mod; /* To stop warning. */
- grub_register_command ("multiboot", grub_normal_cmd_multiboot,
- GRUB_COMMAND_FLAG_BOTH
- | GRUB_COMMAND_FLAG_NO_ARG_PARSE,
- "multiboot FILE [ARGS...]",
- "Load a Multiboot kernel.", 0);
-
- grub_register_command ("module", grub_normal_cmd_module,
- GRUB_COMMAND_FLAG_BOTH
- | GRUB_COMMAND_FLAG_NO_ARG_PARSE,
- "module FILE [ARGS...]",
- "Load a Multiboot module.", 0);
-}
-
-GRUB_MOD_FINI(multiboot_loader_normal)
-{
- grub_unregister_command ("multiboot");
- grub_unregister_command ("module");
-}
#include <grub/loader.h>
#include <grub/dl.h>
#include <grub/mm.h>
-#include <grub/rescue.h>
#include <grub/misc.h>
#include <grub/ieee1275/ieee1275.h>
#include <grub/machine/loader.h>
+#include <grub/command.h>
#define ELF32_LOADMASK (0xc0000000UL)
#define ELF64_LOADMASK (0xc000000000000000ULL)
return grub_elf64_load (elf, offset_phdr, 0, 0);
}
-void
-grub_rescue_cmd_linux (int argc, char *argv[])
+static grub_err_t
+grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_elf_t elf = 0;
int i;
initrd_addr = 0;
loaded = 1;
}
+
+ return grub_errno;
}
-void
-grub_rescue_cmd_initrd (int argc, char *argv[])
+static grub_err_t
+grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
grub_file_t file = 0;
grub_ssize_t size;
fail:
if (file)
grub_file_close (file);
-}
+ return grub_errno;
+}
+static grub_command_t cmd_linux, cmd_initrd;
\f
GRUB_MOD_INIT(linux)
{
- grub_rescue_register_command ("linux", grub_rescue_cmd_linux,
- "load a linux kernel");
- grub_rescue_register_command ("initrd", grub_rescue_cmd_initrd,
- "load an initrd");
+ cmd_linux = grub_register_command ("linux", grub_cmd_linux,
+ 0, "load a linux kernel");
+ cmd_initrd = grub_register_command ("initrd", grub_cmd_initrd,
+ 0, "load an initrd");
my_mod = mod;
}
GRUB_MOD_FINI(linux)
{
- grub_rescue_unregister_command ("linux");
- grub_rescue_unregister_command ("initrd");
+ grub_unregister_command (cmd_linux);
+ grub_unregister_command (cmd_initrd);
}
+++ /dev/null
-/* linux_normal.c - boot Linux */
-/*
- * GRUB -- GRand Unified Bootloader
- * Copyright (C) 2004,2007 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/normal.h>
-#include <grub/dl.h>
-#include <grub/machine/loader.h>
-
-static const struct grub_arg_option options[] =
- {
- {0, 0, 0, 0, 0, 0}
- };
-
-static grub_err_t
-grub_cmd_linux (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_linux (argc, args);
- return GRUB_ERR_NONE;
-}
-
-static grub_err_t
-grub_cmd_initrd (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_rescue_cmd_initrd (argc, args);
- return GRUB_ERR_NONE;
-}
-
-GRUB_MOD_INIT(linux_normal)
-{
- (void) mod;
- grub_register_command ("linux", grub_cmd_linux, GRUB_COMMAND_FLAG_BOTH,
- "linux [KERNELARGS...]",
- "Loads linux", options);
- grub_register_command ("initrd", grub_cmd_initrd, GRUB_COMMAND_FLAG_BOTH,
- "initrd FILE",
- "Loads initrd", options);
-}
-
-GRUB_MOD_FINI(linux_normal)
-{
- grub_unregister_command ("linux");
- grub_unregister_command ("initrd");
-}
#include <grub/dl.h>
#include <grub/parser.h>
#include <grub/script.h>
-
-static grub_command_t grub_command_list;
-
-grub_command_t
-grub_register_command (const char *name,
- grub_err_t (*func) (struct grub_arg_list *state,
- int argc, char **args),
- unsigned flags,
- const char *summary,
- const char *description,
- const struct grub_arg_option *options)
-{
- grub_command_t cmd, *p;
-
- cmd = (grub_command_t) grub_malloc (sizeof (*cmd));
- if (! cmd)
- return 0;
-
- cmd->name = grub_strdup (name);
- if (! cmd->name)
- {
- grub_free (cmd);
- return 0;
- }
-
- cmd->func = func;
- cmd->flags = flags;
- cmd->summary = summary;
- cmd->description = description;
- cmd->options = options;
- cmd->module_name = 0;
-
- /* Keep the list sorted for simplicity. */
- p = &grub_command_list;
- while (*p)
- {
- if (grub_strcmp ((*p)->name, name) >= 0)
- break;
-
- p = &((*p)->next);
- }
-
- if (*p && grub_strcmp ((*p)->name, name) == 0)
- {
- grub_command_t q;
-
- q = *p;
- if (q->flags & GRUB_COMMAND_FLAG_NOT_LOADED)
- {
- q->func = cmd->func;
- q->flags = cmd->flags;
- q->summary = cmd->summary;
- q->description = cmd->description;
- q->options = cmd->options;
- grub_free (cmd->name);
- grub_free (cmd->module_name);
- grub_free (cmd);
- cmd = q;
- }
- else
- {
- grub_free (cmd->name);
- grub_free (cmd);
- cmd = 0;
- }
- }
- else
- {
- cmd->next = *p;
- *p = cmd;
- }
-
- return cmd;
-}
-
-void
-grub_unregister_command (const char *name)
-{
- grub_command_t *p, q;
-
- for (p = &grub_command_list, q = *p; q; p = &(q->next), q = q->next)
- if (grub_strcmp (name, q->name) == 0)
- {
- *p = q->next;
- grub_free (q->name);
- grub_free (q->module_name);
- grub_free (q);
- break;
- }
-}
-
-grub_command_t
-grub_command_find (char *cmdline)
-{
- char *first_space;
- grub_command_t cmd;
- int count = 0;
-
- first_space = grub_strchr (cmdline, ' ');
- if (first_space)
- *first_space = '\0';
-
- again:
-
- for (cmd = grub_command_list; cmd; cmd = cmd->next)
- if (grub_strcmp (cmdline, cmd->name) == 0)
- break;
-
- if (! cmd)
- grub_error (GRUB_ERR_UNKNOWN_COMMAND, "unknown command `%s'", cmdline);
- else if (cmd->flags & GRUB_COMMAND_FLAG_NOT_LOADED)
- {
- /* Automatically load the command. */
- if (count == 0)
- {
- grub_dl_t mod;
- char *module_name;
-
- module_name = grub_strdup (cmd->module_name);
- if (module_name)
- {
- mod = grub_dl_load (module_name);
- if (mod)
- {
- grub_dl_ref (mod);
- count++;
- grub_free (module_name);
- goto again;
- }
-
- grub_free (module_name);
- }
- }
-
- /* This module seems broken. */
- grub_unregister_command (cmdline);
- grub_error (GRUB_ERR_UNKNOWN_COMMAND, "unknown command `%s'", cmdline);
- cmd = 0;
- }
-
- if (first_space)
- *first_space = ' ';
-
- return cmd;
-}
-
-int
-grub_iterate_commands (int (*iterate) (grub_command_t))
-{
- grub_command_t cmd;
-
- for (cmd = grub_command_list; cmd; cmd = cmd->next)
- if (iterate (cmd))
- return 1;
-
- return 0;
-}
+#include <grub/list.h>
+#include <grub/command.h>
int
grub_command_execute (char *cmdline, int interactive)
grub_set_more (0);
return ret;
-}
-
-static grub_err_t
-rescue_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc __attribute__ ((unused)),
- char **args __attribute__ ((unused)))
-{
- grub_longjmp (grub_exit_env, 0);
-
- /* Never reach here. */
- return 0;
-}
-
-
-static grub_err_t
-set_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- char *var;
- char *val;
-
- auto int print_env (struct grub_env_var *env);
- int print_env (struct grub_env_var *env)
- {
- grub_printf ("%s=%s\n", env->name, env->value);
- return 0;
- }
-
- if (! argc)
- {
- grub_env_iterate (print_env);
- return 0;
- }
-
- var = args[0];
- val = grub_strchr (var, '=');
- if (! val)
- {
- grub_error (GRUB_ERR_BAD_ARGUMENT, "not an assignment");
- return grub_errno;
- }
-
- val[0] = 0;
- grub_env_set (var, val + 1);
- val[0] = '=';
- return 0;
-}
-
-static grub_err_t
-unset_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- if (argc < 1)
- return grub_error (GRUB_ERR_BAD_ARGUMENT,
- "no environment variable specified");
-
- grub_env_unset (args[0]);
- return 0;
-}
-
-static grub_err_t
-export_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- if (argc < 1)
- return grub_error (GRUB_ERR_BAD_ARGUMENT,
- "no environment variable specified");
-
- grub_env_export (args[0]);
- return 0;
-}
-
-static grub_err_t
-insmod_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- char *p;
- grub_dl_t mod;
-
- if (argc == 0)
- return grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified");
-
- p = grub_strchr (args[0], '/');
- if (! p)
- mod = grub_dl_load (args[0]);
- else
- mod = grub_dl_load_file (args[0]);
-
- if (mod)
- grub_dl_ref (mod);
-
- return 0;
-}
-
-static grub_err_t
-rmmod_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
-{
- grub_dl_t mod;
-
- if (argc == 0)
- return grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified");
-
- mod = grub_dl_get (args[0]);
- if (! mod)
- return grub_error (GRUB_ERR_BAD_ARGUMENT, "no such module");
-
- if (! grub_dl_unref (mod))
- grub_dl_unload (mod);
-
- return 0;
-}
-
-static grub_err_t
-lsmod_command (struct grub_arg_list *state __attribute__ ((unused)),
- int argc __attribute__ ((unused)),
- char **args __attribute__ ((unused)))
-{
- auto int print_module (grub_dl_t mod);
-
- int print_module (grub_dl_t mod)
- {
- grub_dl_dep_t dep;
-
- grub_printf ("%s\t%d\t\t", mod->name, mod->ref_count);
- for (dep = mod->dep; dep; dep = dep->next)
- {
- if (dep != mod->dep)
- grub_putchar (',');
-
- grub_printf ("%s", dep->mod->name);
- }
- grub_putchar ('\n');
- grub_refresh ();
-
- return 0;
- }
-
- grub_printf ("Name\tRef Count\tDependencies\n");
- grub_dl_iterate (print_module);
- return 0;
-}
-
-void
-grub_command_init (void)
-{
- grub_register_command ("rescue", rescue_command, GRUB_COMMAND_FLAG_BOTH,
- "rescue", "Go back to the rescue mode.", 0);
-
- grub_register_command ("set", set_command, GRUB_COMMAND_FLAG_BOTH,
- "set [ENVVAR=VALUE]",
- "Set an environment variable.", 0);
-
- grub_register_command ("unset", unset_command, GRUB_COMMAND_FLAG_BOTH,
- "unset ENVVAR", "Remove an environment variable.", 0);
-
- grub_register_command ("export", export_command, GRUB_COMMAND_FLAG_BOTH,
- "export ENVVAR", "Export a variable.", 0);
-
- grub_register_command ("insmod", insmod_command, GRUB_COMMAND_FLAG_BOTH,
- "insmod MODULE",
- "Insert a module. The argument can be a file or a module name.",
- 0);
-
- grub_register_command ("rmmod", rmmod_command, GRUB_COMMAND_FLAG_BOTH,
- "rmmod MODULE", "Remove a module.", 0);
-
- grub_register_command ("lsmod", lsmod_command, GRUB_COMMAND_FLAG_BOTH,
- "lsmod", "Show loaded modules.", 0);
-}
+}
\ No newline at end of file
#include <grub/disk.h>
#include <grub/file.h>
#include <grub/parser.h>
+#include <grub/extcmd.h>
/* The current word. */
static char *current_word;
static int
iterate_command (grub_command_t cmd)
{
- if (grub_command_find (cmd->name))
+ if (cmd->prio & GRUB_PRIO_LIST_FLAG_ACTIVE)
{
if (cmd->flags & GRUB_COMMAND_FLAG_CMDLINE)
{
complete_arguments (char *command)
{
grub_command_t cmd;
+ grub_extcmd_t ext;
const struct grub_arg_option *option;
char shortarg[] = "- ";
cmd = grub_command_find (command);
- if (!cmd || !cmd->options)
+ if (!cmd || !(cmd->flags & GRUB_COMMAND_FLAG_EXTCMD))
+ return 0;
+
+ ext = cmd->data;
+ if (!ext->options)
return 0;
if (add_completion ("-u", " ", GRUB_COMPLETION_TYPE_ARGUMENT))
return 1;
/* Add the short arguments. */
- for (option = cmd->options; option->doc; option++)
+ for (option = ext->options; option->doc; option++)
{
if (! option->shortarg)
continue;
return 1;
/* Add the long arguments. */
- for (option = cmd->options; option->doc; option++)
+ for (option = ext->options; option->doc; option++)
{
char *longarg;
if (!option->longarg)
if (argc == 0)
{
/* Complete a command. */
- if (grub_iterate_commands (iterate_command))
+ if (grub_command_iterate (iterate_command))
goto fail;
}
else if (*current_word == '-')
#include <grub/misc.h>
#include <grub/mm.h>
#include <grub/normal.h>
-#include <grub/arg.h>
#include <grub/env.h>
#include <grub/script.h>
+#include <grub/lib/arg.h>
static grub_err_t
grub_script_execute_cmd (struct grub_script_cmd *cmd)
char **args = 0;
int i = 0;
grub_command_t grubcmd;
- struct grub_arg_list *state;
- struct grub_arg_option *parser;
- int maxargs = 0;
- char **parsed_arglist;
- int numargs;
grub_err_t ret = 0;
int argcount = 0;
grub_script_function_t func = 0;
/* Execute the GRUB command or function. */
if (grubcmd)
- {
- /* Count the amount of options the command has. */
- 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))
- {
- if (grub_arg_parse (grubcmd, argcount, args, state, &parsed_arglist, &numargs))
- ret = (grubcmd->func) (state, numargs, parsed_arglist);
- }
- else
- ret = (grubcmd->func) (state, argcount, args);
-
- grub_free (state);
- }
+ ret = (grubcmd->func) (grubcmd, argcount, args);
else
ret = grub_script_function_call (func, argcount, args);
return grub_script_execute_cmd (script->cmd);
}
+
#undef TITLE
}
+static grub_err_t
+grub_dyncmd_dispatcher (struct grub_command *cmd,
+ int argc, char **args)
+{
+ char *modname = cmd->data;
+ grub_dl_t mod;
+ grub_err_t ret;
+
+ mod = grub_dl_load (modname);
+ if (mod)
+ {
+ char *name;
+
+ grub_free (modname);
+ grub_dl_ref (mod);
+
+ name = (char *) cmd->name;
+ grub_unregister_command (cmd);
+
+ cmd = grub_command_find (name);
+ if (cmd)
+ ret = (cmd->func) (cmd, argc, args);
+ else
+ ret = grub_errno;
+
+ grub_free (name);
+ }
+ else
+ ret = grub_errno;
+
+ return ret;
+}
+
/* Read the file command.lst for auto-loading. */
static void
read_command_list (void)
file = grub_file_open (filename);
if (file)
{
- while (1)
+ char *buf = 0;
+ for (;; grub_free(buf))
{
- char *p;
+ char *p, *name, *modname;
grub_command_t cmd;
- char *buf = get_line (file);
+ int prio = 0;
+
+ buf = get_line (file);
if (! buf)
break;
- if (! grub_isgraph (buf[0]))
+ name = buf;
+ if (*name == '*')
+ {
+ name++;
+ prio++;
+ }
+
+ if (! grub_isgraph (name[0]))
continue;
- p = grub_strchr (buf, ':');
+ p = grub_strchr (name, ':');
if (! p)
continue;
if (! grub_isgraph (*p))
continue;
- cmd = grub_register_command (buf, 0,
- GRUB_COMMAND_FLAG_NOT_LOADED,
- 0, 0, 0);
+ if (grub_dl_get (p))
+ continue;
+
+ name = grub_strdup (name);
+ if (! name)
+ continue;
+
+ modname = grub_strdup (p);
+ if (! modname)
+ {
+ grub_free (name);
+ continue;
+ }
+
+ cmd = grub_register_command_prio (name,
+ grub_dyncmd_dispatcher,
+ 0, "not loaded", prio);
if (! cmd)
{
- grub_free (buf);
+ grub_free (name);
+ grub_free (modname);
continue;
}
+ cmd->flags |= GRUB_COMMAND_FLAG_DYNCMD;
+ cmd->data = modname;
- cmd->module_name = grub_strdup (p);
- if (! cmd->module_name)
- grub_unregister_command (buf);
- grub_free (buf);
+ /* Update the active flag. */
+ grub_command_find (name);
}
grub_file_close (file);
grub_cmdline_run (nested);
}
+static grub_err_t
+grub_cmd_rescue (struct grub_command *cmd __attribute__ ((unused)),
+ int argc __attribute__ ((unused)),
+ char **args __attribute__ ((unused)))
+{
+ grub_longjmp (grub_exit_env, 0);
+
+ /* Never reach here. */
+ return 0;
+}
+
+static grub_command_t cmd_normal;
+
/* Enter normal mode from rescue mode. */
-static void
-grub_rescue_cmd_normal (int argc, char *argv[])
+static grub_err_t
+grub_cmd_normal (struct grub_command *cmd __attribute__ ((unused)),
+ int argc, char *argv[])
{
+ grub_command_t cmd_rescue;
+
+ grub_unregister_command (cmd_normal);
+ cmd_rescue = grub_register_command ("rescue", grub_cmd_rescue,
+ 0, "enter rescue mode");
+
if (argc == 0)
{
/* Guess the config filename. It is necessary to make CONFIG static,
{
config = grub_malloc (grub_strlen (prefix) + sizeof ("/grub.cfg"));
if (! config)
- return;
+ goto quit;
grub_sprintf (config, "%s/grub.cfg", prefix);
grub_enter_normal_mode (config);
}
else
grub_enter_normal_mode (argv[0]);
+
+quit:
+ grub_unregister_command (cmd_rescue);
+ cmd_normal = grub_register_command_prio ("normal", grub_cmd_normal,
+ 0, "enter normal mode", 0);
+ return 0;
}
GRUB_MOD_INIT(normal)
grub_set_history (GRUB_DEFAULT_HISTORY_SIZE);
/* Register a command "normal" for the rescue mode. */
- grub_rescue_register_command ("normal", grub_rescue_cmd_normal,
- "enter normal mode");
+ cmd_normal = grub_register_command ("normal", grub_cmd_normal,
+ 0, "enter normal mode");
/* Reload terminal colors when these variables are written to. */
grub_register_variable_hook ("color_normal", NULL, grub_env_write_color_normal);
/* Preserve hooks after context changes. */
grub_env_export ("color_normal");
grub_env_export ("color_highlight");
-
- /* This registers some built-in commands. */
- grub_command_init ();
}
GRUB_MOD_FINI(normal)
{
grub_set_history (0);
- grub_rescue_unregister_command ("normal");
+ grub_unregister_command (cmd_normal);
}
-
#include <grub/types.h>
#include <grub/dl.h>
#include <grub/misc.h>
-#include <grub/normal.h>
#include <grub/font.h>
-#include <grub/arg.h>
#include <grub/mm.h>
#include <grub/env.h>
#include <grub/video.h>
#include <grub/bitmap.h>
+#include <grub/command.h>
#define DEFAULT_VIDEO_WIDTH 640
#define DEFAULT_VIDEO_HEIGHT 480
grub_err_t rc;
/* First setup error message. */
- rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
+ rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
"Invalid mode: %s\n",
current_mode);
grub_err_t rc;
/* First setup error message. */
- rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
+ rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
"Invalid mode: %s\n",
current_mode);
if (grub_errno != GRUB_ERR_NONE)
{
grub_err_t rc;
-
- /* First setup error message. */
- rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
- "Invalid mode: %s\n",
- current_mode);
-
- /* Free memory before returning. */
- grub_free (modevar);
-
- return rc;
- }
- }
- else
- {
- /* We have optional color depth value. */
- *param = 0;
- param++;
- height = grub_strtoul (value, 0, 0);
- if (grub_errno != GRUB_ERR_NONE)
- {
- grub_err_t rc;
-
/* First setup error message. */
- rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
+ rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
"Invalid mode: %s\n",
current_mode);
-
- /* Free memory before returning. */
- grub_free (modevar);
-
- return rc;
- }
- /* Convert color depth value. */
- value = param;
- depth = grub_strtoul (value, 0, 0);
- if (grub_errno != GRUB_ERR_NONE)
- {
- grub_err_t rc;
-
- /* First setup error message. */
- rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
- "Invalid mode: %s\n",
- current_mode);
-
/* Free memory before returning. */
grub_free (modevar);
-
- return rc;
- }
- }
-
- /* Try out video mode. */
-
- /* If we have 8 or less bits, then assume that it is indexed color mode. */
- if ((depth <= 8) && (depth != -1))
- flags |= GRUB_VIDEO_MODE_TYPE_INDEX_COLOR;
-
- /* We have more than 8 bits, then assume that it is RGB color mode. */
- if (depth > 8)
- flags |= GRUB_VIDEO_MODE_TYPE_RGB;
-
- /* If user requested specific depth, forward that information to driver. */
- if (depth != -1)
- flags |= (depth << GRUB_VIDEO_MODE_TYPE_DEPTH_POS)
- & GRUB_VIDEO_MODE_TYPE_DEPTH_MASK;
-
- /* Try to initialize requested mode. Ignore any errors. */
- grub_error_push ();
- if (grub_video_setup (width, height, flags) != GRUB_ERR_NONE)
- {
- grub_error_pop ();
- continue;
+
+ return rc;
+ }
}
-
- /* Figure out what mode we ended up. */
- if (grub_video_get_info (&mode_info) != GRUB_ERR_NONE)
+ else
{
- /* Couldn't get video mode info, restore old mode and continue to next one. */
- grub_error_pop ();
-
- grub_video_restore ();
- continue;
+ /* We have optional color depth value. */
+ *param = 0;
+ param++;
+
+ height = grub_strtoul (value, 0, 0);
+ if (grub_errno != GRUB_ERR_NONE)
+ {
+ grub_err_t rc;
+
+ /* First setup error message. */
+ rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "Invalid mode: %s\n",
+ current_mode);
+
+ /* Free memory before returning. */
+ grub_free (modevar);
+
+ return rc;
+ }
+
+ /* Convert color depth value. */
+ value = param;
+ depth = grub_strtoul (value, 0, 0);
+ if (grub_errno != GRUB_ERR_NONE)
+ {
+ grub_err_t rc;
+
+ /* First setup error message. */
+ rc = grub_error (GRUB_ERR_BAD_ARGUMENT,
+ "Invalid mode: %s\n",
+ current_mode);
+
+ /* Free memory before returning. */
+ grub_free (modevar);
+
+ return rc;
+ }
}
+
+ /* Try out video mode. */
+
+ /* If we have 8 or less bits, then assume that it is indexed color mode. */
+ if ((depth <= 8) && (depth != -1))
+ flags |= GRUB_VIDEO_MODE_TYPE_INDEX_COLOR;
+
+ /* We have more than 8 bits, then assume that it is RGB color mode. */
+ if (depth > 8)
+ flags |= GRUB_VIDEO_MODE_TYPE_RGB;
+
+ /* If user requested specific depth, forward that information to driver. */
+ if (depth != -1)
+ flags |= (depth << GRUB_VIDEO_MODE_TYPE_DEPTH_POS)
+ & GRUB_VIDEO_MODE_TYPE_DEPTH_MASK;
+
+ /* Try to initialize requested mode. Ignore any errors. */
+ grub_error_push ();
+ if (grub_video_setup (width, height, flags) != GRUB_ERR_NONE)
+ {
+ grub_error_pop ();
+ continue;
+ }
+
+ /* Figure out what mode we ended up. */
+ if (grub_video_get_info (&mode_info) != GRUB_ERR_NONE)
+ {
+ /* Couldn't get video mode info, restore old mode and continue to next one. */
+ grub_error_pop ();
+
+ grub_video_restore ();
+ continue;
+ }
/* Restore state of error stack. */
grub_error_pop ();
{
/* Render bitmap as background. */
grub_video_blit_bitmap (bitmap, GRUB_VIDEO_BLIT_REPLACE, x, y,
- x, y,
+ x, y,
width, height);
/* If bitmap is smaller than requested blit area, use background
}
/* Render background layer. */
- grub_video_fill_rect (color, tx, y, w, h);
+ grub_video_fill_rect (color, tx, y, w, h);
}
/* Fill bottom side of the bitmap if needed. */
}
/* Render background layer. */
- grub_video_fill_rect (color, x, ty, width, h);
+ grub_video_fill_rect (color, x, ty, width, h);
}
/* Render text layer as blended. */
grub_video_blit_render_target (text_layer, GRUB_VIDEO_BLIT_REPLACE, x, y,
x - virtual_screen.offset_x,
y - virtual_screen.offset_y,
- width, height);
+ width, height);
}
}
}
static grub_err_t
-grub_gfxterm_background_image_cmd (struct grub_arg_list *state __attribute__ ((unused)),
+grub_gfxterm_background_image_cmd (grub_command_t cmd __attribute__ ((unused)),
int argc,
char **args)
{
.next = 0
};
+static grub_command_t cmd;
+
GRUB_MOD_INIT(term_gfxterm)
{
my_mod = mod;
grub_term_register_output (&grub_video_term);
-
- grub_register_command ("background_image",
- grub_gfxterm_background_image_cmd,
- GRUB_COMMAND_FLAG_BOTH,
- "background_image",
- "Load background image for active terminal",
- 0);
+ cmd = grub_register_command ("background_image",
+ grub_gfxterm_background_image_cmd,
+ 0, "Load background image for active terminal");
}
GRUB_MOD_FINI(term_gfxterm)
{
- grub_unregister_command ("background_image");
+ grub_unregister_command (cmd);
grub_term_unregister_output (&grub_video_term);
}
#include <grub/types.h>
#include <grub/dl.h>
#include <grub/misc.h>
-#include <grub/normal.h>
-#include <grub/arg.h>
#include <grub/terminfo.h>
#include <grub/cpu/io.h>
+#include <grub/extcmd.h>
#define TEXT_WIDTH 80
#define TEXT_HEIGHT 25
\f
static grub_err_t
-grub_cmd_serial (struct grub_arg_list *state,
+grub_cmd_serial (grub_extcmd_t cmd,
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
+ struct grub_arg_list *state = cmd->state;
struct serial_port backup_settings = serial_settings;
grub_err_t hwiniterr;
return hwiniterr;
}
+static grub_extcmd_t cmd;
+
GRUB_MOD_INIT(serial)
{
(void) mod; /* To stop warning. */
- grub_register_command ("serial", grub_cmd_serial, GRUB_COMMAND_FLAG_BOTH,
- "serial [OPTIONS...]", "Configure serial port.", options);
+ cmd = grub_register_extcmd ("serial", grub_cmd_serial,
+ GRUB_COMMAND_FLAG_BOTH,
+ "serial [OPTIONS...]",
+ "Configure serial port.", options);
+
/* Set default settings. */
serial_settings.port = serial_hw_get_port (0);
serial_settings.divisor = serial_get_divisor (9600);
GRUB_MOD_FINI(serial)
{
- grub_unregister_command ("serial");
+ grub_unregister_extcmd (cmd);
if (registered == 1) /* Unregister terminal only if registered. */
{
grub_term_unregister_input (&grub_serial_term_input);
#include <grub/misc.h>
#include <grub/normal.h>
#include <grub/font.h>
-#include <grub/arg.h>
#include <grub/mm.h>
#include <grub/env.h>
#include <grub/misc.h>
#include <grub/normal.h>
#include <grub/font.h>
-#include <grub/arg.h>
#define DEBUG_VGA 0
#include <grub/mm.h>
#include <grub/err.h>
#include <grub/dl.h>
-#include <grub/normal.h>
#include <grub/term.h>
#include <grub/terminfo.h>
#include <grub/tparm.h>
+#include <grub/command.h>
struct terminfo
{
/* GRUB Command. */
static grub_err_t
-grub_cmd_terminfo (struct grub_arg_list *state __attribute__ ((unused)),
- int argc, char **args)
+grub_cmd_terminfo (grub_command_t cmd __attribute__ ((unused)),
+ int argc, char **args)
{
if (argc == 0)
{
return grub_terminfo_set_current (args[0]);
}
+static grub_command_t cmd;
+
GRUB_MOD_INIT(terminfo)
{
(void) mod; /* To stop warning. */
- grub_register_command ("terminfo", grub_cmd_terminfo, GRUB_COMMAND_FLAG_BOTH,
- "terminfo [TERM]", "Set terminfo type.", 0);
+ cmd = grub_register_command ("terminfo", grub_cmd_terminfo,
+ "terminfo [TERM]", "Set terminfo type.");
grub_terminfo_set_current ("vt100");
}
GRUB_MOD_FINI(terminfo)
{
- grub_unregister_command ("terminfo");
+ grub_unregister_command (cmd);
}
#include <grub/env.h>
#include <grub/term.h>
#include <grub/mm.h>
-#include <grub/normal.h>
#include <grub/raid.h>
#include <grub/lib/hexdump.h>
#include <grub/lib/crc.h>
+#include <grub/command.h>
#include <grub_fstest_init.h>
fflush (stdout);
}
-static struct grub_command cmd_loopback;
-static struct grub_command cmd_blocklist;
-static struct grub_command cmd_ls;
-
-grub_command_t
-grub_register_command (const char *name,
- grub_err_t (*func) (struct grub_arg_list * state,
- int argc, char **args),
- unsigned flags,
- const char *summary __attribute__ ((unused)),
- const char *description __attribute__ ((unused)),
- const struct grub_arg_option *options)
-{
- grub_command_t cmd = 0;
-
- if (!grub_strcmp (name, "loopback"))
- cmd = &cmd_loopback;
- else if (!grub_strcmp (name, "blocklist"))
- cmd = &cmd_blocklist;
- else if (!grub_strcmp (name, "ls"))
- cmd = &cmd_ls;
-
- if (cmd)
- {
- cmd->func = func;
- cmd->flags = flags;
- cmd->options = options;
- }
- return NULL;
-}
-
static grub_err_t
-execute_command (grub_command_t cmd, int n, char **args)
+execute_command (char *name, int n, char **args)
{
- int maxargs = 0;
- grub_err_t ret = 0;
- struct grub_arg_list *state;
- struct grub_arg_option *parser;
- char **parsed_arglist;
- int numargs;
-
- /* Count the amount of options the command has. */
- parser = (struct grub_arg_option *) cmd->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 (!(cmd->flags & GRUB_COMMAND_FLAG_NO_ARG_PARSE))
- {
- if (grub_arg_parse (cmd, n, args, state, &parsed_arglist, &numargs))
- ret = (cmd->func) (state, numargs, parsed_arglist);
- }
- else
- ret = (cmd->func) (state, n, args);
+ grub_command_t cmd;
- grub_free (state);
+ cmd = grub_command_find (name);
+ if (! cmd)
+ grub_util_error ("Can\'t find command %s", name);
- return ret;
-}
-
-void
-grub_unregister_command (const char *name __attribute__ ((unused)))
-{
+ return (cmd->func) (cmd, n, args);
}
#define CMD_LS 1
grub_sprintf (loop_name, "loop%d", i);
grub_sprintf (host_file, "(host)%s", images[i]);
- if (execute_command (&cmd_loopback, 3, argv))
+ if (execute_command ("loopback", 3, argv))
grub_util_error ("loopback command fails.");
}
switch (cmd)
{
case CMD_LS:
- execute_command (&cmd_ls, n, args);
+ execute_command ("ls", n, args);
break;
case CMD_CP:
cmd_cp (args[0], args[1]);
cmd_crc (args[0]);
break;
case CMD_BLOCKLIST:
- execute_command (&cmd_blocklist, n, args);
+ execute_command ("blocklist", n, args);
grub_printf ("\n");
}
for (i = 0; i < num_disks; i++)
{
grub_sprintf (loop_name, "loop%d", i);
- execute_command (&cmd_loopback, 2, argv);
+ execute_command ("loopback", 2, argv);
}
}
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/misc.h>
-#include <grub/arg.h>
#include <grub/bufio.h>
/* Uncomment following define to enable JPEG debug. */
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/misc.h>
-#include <grub/arg.h>
#include <grub/bufio.h>
/* Uncomment following define to enable PNG debug. */
#include <grub/dl.h>
#include <grub/mm.h>
#include <grub/misc.h>
-#include <grub/arg.h>
#include <grub/bufio.h>
/* Uncomment following define to enable TGA debug. */