1
2006-06-04 Yoshinori K. Okuji <okuji@enbug.org>
3
* DISTLIST: Added include/grub/i386/linux.h. Removed
4
include/grub/i386/pc/linux.h
6
* configure.ac (AC_INIT): Bumped to 1.94.
8
* config.guess: Updated from gnulib.
9
* config.sub: Likewise.
10
* install-sh: Likewise.
11
* mkinstalldirs: Likewise.
13
2006-06-02 Yoshinori K. Okuji <okuji@enbug.org>
15
* conf/common.rmk (grub_modules_init.lst): Depended on
16
grub_emu_SOURCES, excluding grub_emu_init.c, instead of
19
* genmk.rb (PModule::rule): Reverted the previous change.
21
2006-06-02 Yoshinori K. Okuji <okuji@enbug.org>
23
* conf/common.rmk (grub_modules_init.lst): Depends on
24
$(MODSRCFILES). Grep only the files in $(MODSRCFILES). Make sure
25
that the target does not exist before producing.
26
(grub_modules_init.h): Remove the target before generating.
27
(grub_emu_init.c): Likewise.
29
* genmk.rb (PModule::rule): Add source files into MODSRCFILES.
31
2006-05-31 Jeroen Dekkers <jeroen@dekkers.cx>
33
* configure.ac: Don't set host_m32 for x86_64. Also reset LIBS
34
for the target-specific tests. Make sure that we also have the
35
up-to-date target variables for those tests.
37
2006-05-31 Yoshinori K. Okuji <okuji@enbug.org>
39
* genmk.rb (Image::rule): Prefix CFLAGS or ASFLAGS with TARGET_.
40
(PModule::rule): Likewise.
42
2006-05-31 Yoshinori K. Okuji <okuji@enbug.org>
44
* genmk.rb (Image::rule): Set FLAG to CFLAGS or ASFLAGS instead of
45
TARGET_CFLAGS or TARGET_ASFLAGS. There is no reason why
46
target-specific flags should be prefixed.
47
(PModule::rule): Likewise.
49
2006-05-30 Yoshinori K. Okuji <okuji@enbug.org>
51
* configure.ac (CMP): Check if cmp is available explicitly.
53
2006-05-29 Yoshinori K. Okuji <okuji@enbug.org>
55
* util/powerpc/ieee1275/grub-install.in (host_cpu): Removed.
56
(target_cpu): New variable.
57
(pkglibdir): Use target_cpu instead of host_cpu.
59
* util/i386/pc/grub-install.in (host_cpu): Removed.
60
(target_cpu): New variable.
61
(pkglibdir): Use target_cpu instead of host_cpu.
63
* util/genmoddep.c: Removed.
65
* kern/efi/mm.c (filter_memory_map): Use GRUB_CPU_SIZEOF_VOID_P
66
instead of GRUB_HOST_SIZEOF_VOID_P.
67
* kern/dl.c: Likewise.
69
* include/grub/i386/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed to
71
(GRUB_TARGET_SIZEOF_VOID_P): ... this.
72
(GRUB_HOST_SIZEOF_LONG): Renamed to ...
73
(GRUB_TARGET_SIZEOF_LONG): ... this.
74
(GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
75
(GRUB_TARGET_WORDS_BIGENDIAN): ... this.
76
* include/grub/powerpc/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed
78
(GRUB_TARGET_SIZEOF_VOID_P): ... this.
79
(GRUB_HOST_SIZEOF_LONG): Renamed to ...
80
(GRUB_TARGET_SIZEOF_LONG): ... this.
81
(GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
82
(GRUB_TARGET_WORDS_BIGENDIAN): ... this.
83
* include/grub/sparc64/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed
85
(GRUB_TARGET_SIZEOF_VOID_P): ... this.
86
(GRUB_HOST_SIZEOF_LONG): Renamed to ...
87
(GRUB_TARGET_SIZEOF_LONG): ... this.
88
(GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
89
(GRUB_TARGET_WORDS_BIGENDIAN): ... this.
91
* include/grub/types.h [!GRUB_UTIL] (GRUB_CPU_SIZEOF_VOID_P): Use
92
GRUB_TARGET_SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P.
93
[!GRUB_UTIL] (GRUB_CPU_SIZEOF_LONG): Use GRUB_TARGET_SIZEOF_LONG
94
instead of GRUB_HOST_SIZEOF_LONG.
95
[!GRUB_UTIL]: Refer to GRUB_TARGET_WORDS_BIGENDIAN instead of
96
GRUB_HOST_WORDS_BIGENDIAN to define or undefine
97
GRUB_CPU_WORDS_BIGENDIAN.
98
Refer to SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P to
99
define grub_host_addr_t, grub_host_off_t, grub_host_size_t and
102
* conf/i386-efi.rmk (noinst_UTILITIES): Removed.
103
(genmoddep_SOURCES): Likewise.
104
* conf/i386-pc.rmk (noinst_UTILITIES): Likewise.
105
(genmoddep_SOURCES): Likewise.
106
* conf/conf/powerpc-ieee1275.rmk (noinst_UTILITIES): Likewise.
107
(genmoddep_SOURCES): Likewise.
108
* conf/conf/conf/sparc64-ieee1275.rmk (noinst_UTILITIES):
110
(genmoddep_SOURCES): Likewise.
112
* genmoddep.awk: New file.
114
* genmk.rb (Image::rule): Use TARGET_CC, TARGET_CPPFLAGS,
115
TARGET_CFLAGS, TARGET_ASFLAGS and TARGET_LDFLAGS instead of CC,
116
CPPFLAGS, CFLAGS, ASFLAGS and LDFLAGS, respectively.
117
(PModule::rule): Likewise.
118
(Program::rule): Likewise.
119
(Utility::rule): Use CC, CPPFLAGS, CFLAGS and LDFLAGS instead of
120
BUILD_CC, BUILD_CPPFLAGS, BUILD_CFLAGS and BUILD_LDFLAGS,
123
* configure.ac: Rewritten intensively to use host and target
124
instead of build and host, respectively.
126
* Makefile.in (pkglibdir): Use target_cpu instead of host_cpu.
128
(target_cpu): New variable.
129
(CPPFLAGS): Added @CPPFLAGS@ and -DGRUB_LIBDIR=\"$(pkglibdir)\".
131
(BUILD_CFLAGS): Likewise.
132
(BUILD_CPPFLAGS): Likewise.
133
(TARGET_CC): New variable.
134
(TARGET_CFLAGS): Likewise.
135
(TARGET_CPPFLAGS): Likewise.
136
(TARGET_LDFLAGS): Likewise.
138
(include): Use target_cpu instead of host_cpu.
139
(moddep.lst:): Use genmoddep.awk instead of genmoddep.
141
* DISTLIST: Added genmoddep.awk. Removed util/genmoddep.c.
143
2006-05-29 Vesa Jaaskelainen <chaac@nic.fi>
145
* include/grub/script.h (grub_script_cmdif): Renamed field 'bool' to
146
'exec_to_evaluate'. Renamed field 'true' to 'exec_on_true'. Renamed
147
field 'false' to 'exec_on_false'.
148
(grub_script_create_cmdif): Renamed argument names to reflect above
151
* normal/execute.c (grub_script_execute_cmdif): Likewise.
153
* normal/script.c (grub_script_create_cmdif): Likewise.
155
2006-05-28 Yoshinori K. Okuji <okuji@enbug.org>
157
* fs/hfsplus.c (grub_hfsplus_btree_recoffset): Moved to near the
159
(grub_hfsplus_btree_recptr): Likewise.
160
(grub_hfsplus_find_block): Do not take RETRY any longer. Use
161
FILEBLOCK both to pass a block number and store next block
163
(grub_hfsplus_read_block): Rewritten heavily to support an extent
164
overflow file correctly. Specify errors appropriately, because
165
fshelp expects that GRUB_ERRNO is set when fails. Reuse
166
grub_hfsplus_btree_recptr to get the pointer to a found key.
167
(grub_hfsplus_btree_search): Return 1 instead of 0 when no match
170
* conf/i386-efi.rmk (pkgdata_MODULES): Added _linux.mod and
172
(_linux_mod_SOURCES): New variable.
173
(_linux_mod_CFLAGS): Likewise.
174
(_linux_mod_LDFLAGS): Likewise.
175
(linux_mod_SOURCES): Likewise.
176
(linux_mod_CFLAGS): Likewise.
177
(linux_mod_LDFLAGS): Likewise.
179
* DISTLIST: Added loader/i386/efi/linux.c,
180
loader/i386/efi/linux_normal.c and
181
include/grub/i386/efi/loader.h.
183
* loader/i386/efi/linux.c: New file.
184
* loader/i386/efi/linux_normal.c: Likewise.
185
* include/grub/i386/efi/loader.h: Likewise.
187
2006-05-27 Yoshinori K. Okuji <okuji@enbug.org>
189
* commands/blocklist.c: New file.
191
* DISTLIST: Added commands/blocklist.c.
193
* term/efi/console.c (grub_console_highlight_color): Use a lighter
194
color for the background, and a darker color for the foreground.
195
(grub_console_checkkey): Return READ_KEY.
196
(grub_console_cls): Set the background to
197
GRUB_EFI_BACKGROUND_BLACK temporarily to clean out the screen.
199
* kern/efi/efi.c (grub_efi_exit_boot_services): New function.
201
* include/grub/i386/linux.h (struct linux_kernel_params): Fixed
202
the size of "padding5", "hd0_drive_info" and "hd1_drive_info".
204
* include/grub/efi/efi.h (grub_efi_exit_boot_services): New
207
* include/grub/efi/api.h (GRUB_EFI_TEXT_ATTR): Do not shift
208
BG. The spec is wrong again.
210
* include/grub/normal.h [GRUB_UTIL] (grub_blocklist_init): New
212
[GRUB_UTIL] (grub_blocklist_fini): Likewise.
214
* conf/i386-pc.rmk (grub_emu_SOURCES): Added
215
commands/blocklist.c.
216
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
218
* conf/common.rmk (pkgdata_MODULES): Added blocklist.mod.
219
(blocklist_mod_SOURCES): New variable.
220
(blocklist_mod_CFLAGS): Likewise.
221
(blocklist_mod_LDFLAGS): Likewise.
223
2006-05-20 Yoshinori K. Okuji <okuji@enbug.org>
225
* boot/i386/pc/boot.S (real_start): Set %si earlier to eliminate
227
(lba_mode): Use %eax more intensively to reduce the code size.
229
2006-05-20 Marco Gerards <marco@gnu.org>
231
* normal/lexer.c (grub_script_yylex): Don't filter out newlines.
233
* normal/parser.y (commandblock): Defined as <cmd>. A subroutine
235
(script): Accept leading newlines.
236
(newlines): New rule to describe 0 or more newlines.
237
(commands): Accept `command' with trailing newline. Fixed the
238
order in which arguments were passed to `grub_script_add_cmd'.
239
Accept commands separated by newlines.
240
(function): Changed to accept newlines.
241
(menuentry) Rewritten.
243
* normal/script.c (grub_script_create_cmdmenu): Add new entries in
244
front of the list, instead of to the end.
246
2006-05-19 Yoshinori K. Okuji <okuji@enbug.org>
248
* util/i386/pc/grub-install.in (bindir): New variable.
249
(grub_mkimage): Use BINDIR instead of SBINDIR. Reported by Lee
250
Shaver <lbgwjl@gmail.com>.
252
2006-05-14 Yoshinori K. Okuji <okuji@enbug.org>
254
* kern/i386/pc/startup.S: Include grub/cpu/linux.h instead of
256
* loader/i386/pc/linux.c: Likewise.
258
* include/grub/i386/pc/linux.h: Moved to ...
259
* include/grub/i386/linux.h: ... here.
261
* include/grub/i386/linux.h (struct linux_kernel_params): New
264
2006-05-09 Vesa Jaaskelainen <chaac@nic.fi>
266
* video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Corrected bounds
268
(grub_video_vbe_blit_glyph): Likewise.
269
(grub_video_vbe_blit_bitmap): Likewise.
270
(grub_video_vbe_blit_render_target): Likewise.
272
2006-05-09 Yoshinori K. Okuji <okuji@enbug.org>
274
* configure.ac (--with-platform): Properly quote the square
277
2006-05-08 Marco Gerards <marco@gnu.org>
279
* conf/powerpc-ieee1275.rmk (grubof_HEADERS): Renamed from
281
(kernel_elf_HEADERS): ...to this. Updated all users.
282
(grubof_symlist.c): Renamed from this...
283
(kernel_elf_symlist.c): ...to this. Updated all users.
284
(pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'.
285
(grubof_SOURCES): Renamed from this...
286
(kernel_elf_SOURCES): ...to this.
287
(grubof_HEADERS): Renamed from this...
288
(kernel_elf_HEADERS): ...to this.
289
(grubof_CFLAGS): Renamed from this...
290
(kernel_elf_CFLAGS): ...to this.
291
(grubof_ASFLAGS): Renamed from this...
292
(kernel_elf_ASFLAGS): ...to this.
293
(grubof_LDFLAGS): Renamed from this...
294
(kernel_elf_LDFLAGS): ...to this.
296
* conf/sparc64-ieee1275.rmk (grubof_HEADERS): Renamed from
298
(kernel_elf_HEADERS): ...to this. Updated all users.
299
(grubof_symlist.c): Renamed from this...
300
(kernel_elf_symlist.c): ...to this. Updated all users.
301
(pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'.
302
(grubof_SOURCES): Renamed from this...
303
(kernel_elf_SOURCES): ...to this.
304
(grubof_HEADERS): Renamed from this...
305
(kernel_elf_HEADERS): ...to this.
306
(grubof_CFLAGS): Renamed from this...
307
(kernel_elf_CFLAGS): ...to this.
308
(grubof_ASFLAGS): Renamed from this...
309
(kernel_elf_ASFLAGS): ...to this.
310
(grubof_LDFLAGS): Renamed from this...
311
(kernel_elf_LDFLAGS): ...to this.
313
* util/powerpc/ieee1275/grub-mkimage.c (add_segments): Use
314
`kernel.elf' instead of `grubof'.
316
2006-05-08 Yoshinori K. Okuji <okuji@enbug.org>
318
Add --with-platform to configure. Use pkglibdir instead of
319
pkgdatadir. This is reported by Roger Leigh.
321
* util/powerpc/ieee1275/grub-install.in (datadir): Removed.
322
(host_vendor): Likewise.
324
(pkgdatadir): Likewise.
325
(platform): New variable.
326
(pkglibdir): Likewise.
327
Use PKGLIBDIR instead of PKGDATADIR.
329
* util/i386/pc/grub-install.in (datadir): Removed.
330
(host_vendor): Likewise.
332
(pkgdatadir): Likewise.
333
(platform): New variable.
334
(pkglibdir): Likewise.
335
Use PKGLIBDIR instead of PKGDATADIR.
337
* util/powerpc/ieee1275/grub-mkimage.c (usage): Use GRUB_LIBDIR
338
instead of GRUB_DATADIR.
340
* util/i386/pc/grub-mkimage.c (usage): Likewise.
342
* util/i386/efi/grub-mkimage.c (usage): Likewise.
345
* configure.ac (--with-platform): New option.
346
Use PLATFORM instead of HOST_VENDOR to specify a platform.
348
* Makefile.in: Include a makefile based on PLATFORM instead of
350
(pkgdatadir): Not appended by the machine type.
351
(pkglibdir): Appended by the machine type.
352
(host_vendor): Removed.
353
(platform): New variable.
354
(BUILD_CPPFLAGS): Specify GRUB_LIBDIR instead of GRUB_DATADIR.
355
(install-local): Use PKGLIBDIR instead of PKGDATADIR.
356
(uninstall): Likewise.
358
2006-05-07 Yoshinori K. Okuji <okuji@enbug.org>
360
Use the environment context in the menu. Remove the commands
361
"default" and "timeout", and use variables instead.
363
* normal/menu.c: Include grub/env.h.
364
(print_entry): Cast TITLE to silence gcc.
365
(get_timeout): New function.
366
(set_timeout): Likewise.
367
(get_entry_number): Likewise.
368
(run_menu): Use a default entry, a fallback entry and a timeout
369
in the environment variables "default", "fallback" and
370
"timeout". Also, tweak the default entry if it is not within the
371
current menu entries.
372
(grub_menu_run): Use a fallback entry in the environment variable
375
* normal/main.c (read_config_file): Do not initialize
376
NEWMENU->DEFAULT_ENTRY, NEWMENU->FALLBACK_ENTRY or
378
(grub_normal_execute): Use a data slot to store the menu.
380
* include/grub/normal.h (struct grub_menu): Removed default_entry,
381
fallback_entry and timeout.
382
(struct grub_menu_list): Removed.
383
(grub_menu_list_t): Likewise.
384
(struct grub_context): Likewise.
385
(grub_context_t): Likewise.
386
(grub_context_get): Likewise.
387
(grub_context_get_current_menu): Likewise.
388
(grub_context_push_menu): Likewise.
389
(grub_context_pop_menu): Likewise.
390
(grub_default_init): Likewise.
391
(grub_default_fini): Likewise.
392
(grub_timeout_init): Likewise.
393
(grub_timeout_fini): Likewise.
395
* conf/sparc64-ieee1275.rmk (pkgdata_MODULES): Removed default.mod
397
(normal_mod_SOURCES): Removed normal/context.c.
399
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Removed
400
commands/default.c, commands/timeout.c and normal/context.c.
401
(normal_mod_SOURCES): Removed normal/context.c.
403
* conf/i386-pc.rmk (grub_emu_SOURCES): Removed commands/default.c,
404
commands/timeout.c and normal/context.c.
405
(normal_mod_SOURCES): Removed normal/context.c.
407
* conf/i386-efi.rmk (grub_emu_SOURCES): Removed
408
commands/default.c, commands/timeout.c and normal/context.c.
409
(normal_mod_SOURCES): Removed normal/context.c.
411
* conf/common.rmk (pkgdata_MODULES): Removed default.mod and
413
(default_mod_SOURCES): Removed.
414
(default_mod_CFLAGS): Likewise.
415
(default_mod_LDFLAGS): Likewise.
416
(timeout_mod_SOURCES): Removed.
417
(timeout_mod_CFLAGS): Likewise.
418
(timeout_mod_LDFLAGS): Likewise.
420
* DISTLIST: Removed commands/default.c, commands/timeout.c and
423
* commands/default.c: Removed.
424
* commands/timeout.c: Likewise.
425
* normal/context.c: Likewise.
427
2006-05-07 Vesa Jaaskelainen <chaac@nic.fi>
429
* kern/i386/pc/startup.S (grub_exit): Added missing .code32 tag.
431
2006-05-02 Yoshinori K. Okuji <okuji@enbug.org>
433
* kern/env.c (struct grub_env_context): Removed "sorted". Renamed
434
"next" to "prev" for readability.
435
(struct grub_env_sorted_var): New struct.
436
(grub_env_context): Renamed to ...
437
(initial_context): ... this.
438
(grub_env_var_context): Renamed to ...
439
(current_context): ... this.
440
(grub_env_find): Look only at CURRENT_CONTEXT.
441
(grub_env_context_open): Rewritten to copy exported variables from
443
(grub_env_context_close): Rewritten according to the new
444
scheme. Also, add an assertion to prevent the initial context from
446
(grub_env_insert): Removed the code for the sorted list.
447
(grub_env_remove): Likewise.
448
(grub_env_export): Simply mark the variable with
450
(grub_env_set): A cosmetic change for naming consistency.
451
(grub_env_get): Likewise.
452
(grub_env_unset): Likewise.
453
(grub_env_iterate): Rewritten to sort variables within this
455
(grub_register_variable_hook): Fixed for naming consistency. Call
456
grub_env_find again, only if NAME is not found at the first time.
457
(mangle_data_slot_name): New function.
458
(grub_env_set_data_slot): Likewise.
459
(grub_env_get_data_slot): Likewise.
460
(grub_env_unset_data_slot): Likewise.
462
* include/grub/env.h (grub_env_var_type): New enum.
463
(GRUB_ENV_VAR_LOCAL): New constant.
464
(GRUB_ENV_VAR_GLOBAL): Likewise.
465
(GRUB_ENV_VAR_DATA): Likewise.
466
(struct grub_env_var): Removed "sort_next" and "sort_prevp". Added
468
(grub_env_set): Replace VAR with NAME for consistency.
469
(grub_register_variable_hook): Likewise.
470
(grub_env_export): Specify the name of the argument.
471
(grub_env_set_data_slot): New prototype.
472
(grub_env_get_data_slot): Likewise.
473
(grub_env_unset_data_slot): Likewise.
475
2006-04-30 Yoshinori K. Okuji <okuji@enbug.org>
477
Extend the loader so that GRUB can accept a loader which comes
478
back to GRUB when a loaded image exits. Also, this change adds
479
support for a chainloader on EFI.
481
* term/efi/console.c: Include grub/misc.h.
482
(grub_console_checkkey): Display a scan code on the top for
483
debugging. This will be removed once the EFI port gets stable.
484
Correct the scan code mapping.
486
* kern/efi/mm.c (sort_memory_map): Sort in a descending order to
487
allocate memory from larger regions, in order to reduce the number
488
of allocated regions. Otherwise, the MacOSX loader panics.
489
(filter_memory_map): Avoid less than 1MB for compatibility with
491
(add_memory_regions): Allocate from the tail of a region, if
492
possible, to avoid allocating a region near to 1MB, for the MacOSX
495
* kern/efi/init.c (grub_efi_set_prefix): Specify
496
GRUB_EFI_IMAGE_HANDLE to grub_efi_get_loaded_image.
498
* kern/efi/efi.c (grub_efi_get_loaded_image): Accept a new
499
argument IMAGE_HANDLE and specify it to get a loaded image.
500
(grub_arch_modules_addr): Specify GRUB_EFI_IMAGE_HANDLE to
501
grub_efi_get_loaded_image.
502
(grub_efi_get_filename): Divide the legnth by the size of
504
(grub_efi_get_device_path): New function.
505
(grub_efi_print_device_path): Print End Device Path nodes. Divide
506
the length by the size of grub_efi_char16_t for a file path device
509
* kern/loader.c (grub_loader_noreturn): New variable.
510
(grub_loader_set): Accept a new argument NORETURN. Set
511
GRUB_LOADER_NORETURN to NORETURN.
513
(grub_loader_boot): If GRUB_LOADER_NORETURN is false, do not call
516
* include/grub/efi/efi.h (grub_efi_get_device_path): New
518
(grub_efi_get_loaded_image): Take an argument to specify an image
521
* include/grub/loader.h (grub_loader_set): Added one more argument
524
* disk/efi/efidisk.c (make_devices): Use grub_efi_get_device_path
525
instead of grub_efi_open_protocol.
526
(grub_efidisk_get_device_name): Likewise.
527
(grub_efidisk_close): Print a newline.
528
(grub_efidisk_get_device_handle): Fixed to use
529
GRUB_EFI_DEVICE_PATH_SUBTYPE instead of
530
GRUB_EFI_DEVICE_PATH_TYPE.
532
* disk/efi/efidisk.c (device_path_guid): Moved to ...
533
* kern/efi/efi.c (device_path_guid): ... here.
535
* conf/i386-efi.rmk (pkgdata_MODULES): Added _chain.mod and
537
(kernel_mod_HEADERS): Added efi/disk.h.
538
(_chain_mod_SOURCES): New variable.
539
(_chain_mod_CFLAGS): Likewise.
540
(_chain_mod_LDFLAGS): Likewise.
541
(chain_mod_SOURCES): Likewise.
542
(chain_mod_CFLAGS): Likewise.
543
(chain_mod_LDFLAGS): Likewise.
545
* DISTLIST: Added include/grub/efi/chainloader.h,
546
loader/efi/chainloader.c and loader/efi/chainloader_normal.c.
548
* include/grub/efi/chainloader.h: New file.
549
* loader/efi/chainloader.c: Likewise.
550
* loader/efi/chainloader_normal.c: Likewise.
552
2006-04-30 Marco Gerards <marco@gnu.org>
554
* commands/configfile.c (grub_cmd_source): New function.
555
(GRUB_MOD_INIT): Register the commands `source' and `.'.
556
(GRUB_MOD_FINI): De-register the commands `source' and `.'.
558
2006-04-30 Marco Gerards <marco@gnu.org>
560
* normal/execute.c (grub_script_execute_cmd): Change the return
561
type to `grub_err_t'. Correctly return the error.
562
(grub_script_execute_cmdline): In case a command line is not a
563
command or a function, try to interpret it as an assignment.
565
2006-04-30 Yoshinori K. Okuji <okuji@enbug.org>
567
* fs/hfsplus.c (grub_hfsplus_read_block): Fixed a memory leak.
568
(grub_hfsplus_iterate_dir): Reordered to skip unknown nodes. Also,
569
skip a node whose name is obviously invalid as UTF-16,
570
i.e. contains a NUL character. Stop the iteration when the last
571
directory entry is found. Instead of using the return value of
572
grub_hfsplus_btree_iterate_node, store the value in RET and use
573
it, because the iterator can be stopped by the last directory
576
2006-04-30 Marco Gerards <marco@gnu.org>
578
* include/grub/env.h (grub_env_export): New prototype. Reported
579
by Jan C. Kleinsorge <jan.kleinsorge@udo.edu>.
581
2006-04-30 Marco Gerards <marco@gnu.org>
583
* fs/hfsplus.c (grub_hfsplus_iterate_dir): Correctly calculate the
584
size of the extents in a catalog file record.
586
2006-04-29 Marco Gerards <marco@gnu.org>
588
* commands/configfile.c (grub_cmd_configfile): Execute the
589
configfile within its own context.
591
* include/grub/env.h (grub_env_context_open): New prototype.
592
(grub_env_context_close): Likewise.
594
* kern/env.c (grub_env): Removed.
595
(grub_env_sorted): Likewise.
596
(grub_env_context): New variable.
597
(grub_env_var_context): Likewise.
598
(grub_env_find): Search both the active context and the global
600
(grub_env_context_open): New function.
601
(grub_env_context_close): Likewise.
602
(grub_env_insert): Likewise.
603
(grub_env_remove): Likewise.
604
(grub_env_export): Likewise.
605
(grub_env_set): Changed to use helper functions to avoid code
607
(grub_env_iterate): Rewritten so both the current context and the
608
global context are being used.
610
* normal/command.c (export_command): New function.
611
(grub_command_init): Register the `export' function.
613
2006-04-26 Yoshinori K. Okuji <okuji@enbug.org>
615
* util/i386/pc/grub-mkimage.c (compress_kernel): Cast arguments
616
explicitly to suppress gcc's warnings.
617
* fs/fat.c (grub_fat_find_dir): Likewise.
618
(grub_fat_label): Likewise.
619
* fs/xfs.c (grub_xfs_read_inode): Likewise.
620
(grub_xfs_mount): Likewise.
621
(grub_xfs_label): Likewise.
622
* fs/affs.c (grub_affs_mount): Likewise.
623
(grub_affs_label): Likewise.
624
(grub_affs_iterate_dir): Likewise.
625
* fs/sfs.c (grub_sfs_mount): Likewise.
626
(grub_sfs_iterate_dir): Likewise.
627
* fs/ufs.c (grub_ufs_lookup_symlink): Likewise.
628
* fs/hfs.c (grub_hfs_mount): Likewise.
629
(grub_hfs_cmp_catkeys): Likewise.
630
(grub_hfs_find_dir): Likewise.
631
(grub_hfs_dir): Likewise.
632
(grub_hfs_label): Likewise.
633
* fs/jfs.c (grub_jfs_mount): Likewise.
634
(grub_jfs_opendir): Likewise.
635
(grub_jfs_getent): Likewise.
636
(grub_jfs_lookup_symlink): Likewise.
637
(grub_jfs_label): Likewise.
638
* fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise.
639
(grub_hfsplus_iterate_dir): Likewise.
640
(grub_hfsplus_btree_iterate_node): Made static.
642
* util/grub-emu.c (prefix): New variable.
643
(grub_machine_set_prefix): New function.
644
(main): Do not set the environment variable "prefix" here. Only
645
set PREFIX, which is used later by grub_machine_set_prefix.
647
* include/grub/video.h: Do not include grub/symbol.h.
648
(grub_video_register): Not exported. This symbol is not defined in
650
(grub_video_unregister): Likewise.
651
(grub_video_iterate): Likewise.
652
(grub_video_setup): Likewise.
653
(grub_video_restore): Likewise.
654
(grub_video_get_info): Likewise.
655
(grub_video_get_blit_format): Likewise.
656
(grub_video_set_palette): Likewise.
657
(grub_video_get_palette): Likewise.
658
(grub_video_set_viewport): Likewise.
659
(grub_video_get_viewport): Likewise.
660
(grub_video_map_color): Likewise.
661
(grub_video_map_rgb): Likewise.
662
(grub_video_map_rgba): Likewise.
663
(grub_video_fill_rect): Likewise.
664
(grub_video_blit_glyph): Likewise.
665
(grub_video_blit_bitmap): Likewise.
666
(grub_video_blit_render_target): Likewise.
667
(grub_video_scroll): Likewise.
668
(grub_video_swap_buffers): Likewise.
669
(grub_video_create_render_target): Likewise.
670
(grub_video_delete_render_target): Likewise.
671
(grub_video_set_active_render_target): Likewise.
673
* include/grub/symbol.h [GRUB_SYMBOL_GENERATOR] (EXPORT_FUNC):
675
[GRUB_SYMBOL_GENERATOR] (EXPORT_VAR): Likewise.
677
* conf/sparc64-ieee1275.rmk (grubof_symlist.c): Depended on
678
config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh.
679
(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
680
instead of $(srcdir)/genkernsyms.sh.
682
* conf/powerpc-ieee1275.rmk (grubof_symlist.c): Depended on
683
config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh.
684
(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
685
instead of $(srcdir)/genkernsyms.sh.
687
* conf/i386-pc.rmk (symlist.c): Depended on config.h. Use
688
gensymlist.sh instead of $(srcdir)/gensymlist.sh.
689
(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
690
instead of $(srcdir)/genkernsyms.sh.
692
* conf/i386-efi.rmk (symlist.c): Depended on config.h. Use
693
gensymlist.sh instead of $(srcdir)/gensymlist.sh.
694
(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
695
instead of $(srcdir)/genkernsyms.sh.
697
* configure.ac (AC_CONFIG_FILES): Added gensymlist.sh and
700
* Makefile.in (DISTCLEANFILES): Added gensymlist.sh and
702
(gensymlist.sh): New target.
703
(genkernsyms.sh): Likewise.
705
* DISTLIST: Removed genkernsyms.sh and gensymlist.sh. Added
706
genkernsyms.sh.in and gensymlist.sh.in.
708
* genkernsyms.sh: Removed.
709
* gensymlist.sh: Likewise.
711
* genkernsyms.sh.in: New file.
712
* gensymlist.sh.in: Likewise.
714
2006-04-25 Hollis Blanchard <hollis@penguinppc.org>
716
* kern/powerpc/ieee1275/init.c (grub_machine_set_prefix): Do not
717
clobber "prefix", since we may have already set it manually.
719
2006-04-25 Hollis Blanchard <hollis@penguinppc.org>
721
* kern/misc.c (abort): New alias for grub_abort.
723
2006-04-25 Yoshinori K. Okuji <okuji@enbug.org>
725
A new machine-specific function "grub_machine_set_prefix" is
726
defined. This is called after loading modules, so that a prefix
727
initialization can use modules. Also, this change adds an
728
intensive debugging feature for the memory manager via the
729
configure option "--enable-mm-debug".
731
* partmap/gpt.c (gpt_partition_map_iterate): Add one more into
734
* kern/sparc64/ieee1275/init.c (abort): Removed.
735
(grub_stop): Likewise.
736
(grub_exit): New function.
737
(grub_set_prefix): Renamed to ...
738
(grub_machine_set_prefix): ... this.
739
(grub_machine_init): Do not call grub_set_prefix.
741
* kern/powerpc/ieee1275/init.c (grub_set_prefix): Renamed to ...
742
(grub_machine_set_prefix): ... this.
743
(grub_machine_init): Do not call grub_set_prefix.
745
* kern/i386/pc/init.c (grub_machine_set_prefix): New function.
746
(grub_machine_init): Do not set the prefix here.
748
* kern/i386/efi/init.c (grub_machine_set_prefix): New function.
750
* kern/efi/init.c: Include grub/mm.h.
751
(grub_efi_set_prefix): New function.
753
* kern/efi/efi.c (grub_exit): Call grub_efi_fini.
754
(grub_efi_get_filename): New function.
755
(grub_print_device_path): Renamed to ...
756
(grub_efi_print_device_path): ... this.
758
* kern/mm.c [MM_DEBUG] (grub_malloc): Undefined.
759
[MM_DEBUG] (grub_realloc): Likewise.
760
[MM_DEBUG] (grub_free): Likewise.
761
[MM_DEBUG] (grub_memalign): Likewise.
762
[MM_DEBUG] (grub_mm_debug): New variable.
763
[MM_DEBUG] (grub_debug_malloc): New function.
764
[MM_DEBUG] (grub_debug_free): New function.
765
[MM_DEBUG] (grub_debug_realloc): New function.
766
[MM_DEBUG] (grub_debug_memalign): New function.
768
* kern/misc.c (grub_abort): Print a newline to distinguish
771
* kern/main.c (grub_main): Call grub_machine_set_prefix and
772
grub_set_root_dev after loading modules. This is necessary when
773
setting a prefix depends on modules.
775
* include/grub/efi/efi.h (grub_print_device_path): Renamed to ...
776
(grub_efi_print_device_path): ... this.
777
(grub_efi_get_filename): New prototype.
778
(grub_efi_set_prefix): Likewise.
780
* include/grub/efi/disk.h: Include grub/efi/api.h, grub/symbol.h
782
(grub_efidisk_get_device_handle): New prototype.
783
(grub_efidisk_get_device_name): Likewise.
785
* include/grub/mm.h: Include config.h.
787
[MM_DEBUG && !GRUB_UTIL] (grub_mm_debug): New prototype.
788
[MM_DEBUG && !GRUB_UTIL] (grub_malloc): New macro.
789
[MM_DEBUG && !GRUB_UTIL] (grub_realloc): Likewise.
790
[MM_DEBUG && !GRUB_UTIL] (grub_memalign): Likewise.
791
[MM_DEBUG && !GRUB_UTIL] (grub_free): Likewise.
792
[MM_DEBUG && !GRUB_UTIL] (grub_debug_malloc): New prototype.
793
[MM_DEBUG && !GRUB_UTIL] (grub_debug_realloc): New prototype.
794
[MM_DEBUG && !GRUB_UTIL] (grub_debug_memalign): New prototype.
795
[MM_DEBUG && !GRUB_UTIL] (grub_debug_free): New prototype.
797
* include/grub/kernel.h (grub_machine_set_prefix): New prototype.
799
* disk/efi/efidisk.c: Include grub/partition.h.
800
(iterate_child_devices): New function.
801
(add_device): First, compare only last device path nodes, so that
802
devices are sorted by the types.
803
(grub_efidisk_get_device_handle): New function.
804
(grub_efidisk_get_device_name): Likewise.
806
* configure.ac (--enable-mm-debug): New option to enable the
807
memory manager debugging feature. This makes the binary much
808
bigger, so is disabled by default.
810
2006-04-23 Yoshinori K. Okuji <okuji@enbug.org>
812
Use grub_abort instead of grub_stop, and grub_exit must be
813
define in each architecture now. Also, this change adds support
816
* util/i386/pc/grub-probefs.c: Include grub/term.h.
817
(grub_getkey): New function.
818
(grub_term_get_current): Likewise.
820
* util/i386/pc/grub-setup.c: Include grub/term.h.
821
(grub_getkey): New function.
822
(grub_term_get_current): Likewise.
824
* util/misc.c (grub_stop): Renamed to ...
825
(grub_exit): ... this.
827
* kern/powerpc/ieee1275/init.c (abort): Renamed to ...
828
(grub_exit): ... this.
829
(grub_machine_init): Use grub_abort instead of abort.
830
(grub_stop): Removed.
832
* kern/powerpc/ieee1275/cmain.c (cmain): Use grub_abort instead of
835
* kern/i386/pc/startup.S (grub_exit): New function.
836
(cold_reboot): New label.
838
* kern/efi/init.c: Include grub/efi/disk.h and grub/env.h.
839
(grub_efi_init): Call grub_efidisk_init.
840
(grub_efi_fini): Call grub_efidisk_fini.
842
* kern/efi/efi.c: Include grub/mm.h.
843
(grub_efi_console_control_guid): Renamed to ...
844
(console_control_guid): ... this.
845
(grub_efi_loaded_image_guid): Renamed to ...
846
(loaded_image_guid): ... this.
847
(grub_efi_locate_handle): New function.
848
(grub_efi_open_protocol): Likewise.
849
(grub_efi_set_text_mode): Use CONSOLE_CONTROL_GUID instead of
850
GRUB_EFI_CONSOLE_CONTROL_GUID.
851
(grub_efi_exit): Removed.
852
(grub_stop): Likewise.
853
(grub_efi_get_loaded_image): Use grub_efi_open_protocol.
854
(grub_exit): New function.
855
(grub_print_device_path): Likewise.
857
* kern/rescue.c (grub_rescue_cmd_exit): New function.
858
(grub_enter_rescue_mode): Register "exit".
860
* kern/misc.c (grub_real_dprintf): A cosmetic change.
861
(grub_abort): New function.
863
* kern/err.c (grub_fatal): Use grub_abort instead of grub_stop.
865
* include/grub/sparc64/ieee1275/kernel.h (abort): Removed.
867
* include/grub/powerpc/ieee1275/kernel.h (abort): Removed.
869
* include/grub/efi/efi.h (grub_efi_exit): Removed.
870
(grub_print_device_path): New prototype.
871
(grub_efi_locate_handle): Likewise.
872
(grub_efi_open_protocol): Likewise.
874
* include/grub/efi/disk.h (grub_efidisk_fini): New file.
875
* disk/efi/efidisk.c: Likewise.
877
* DISTLIST: Added disk/efi/efidisk.c and include/grub/efi/disk.h.
879
* include/grub/efi/console_control.h
880
(GRUB_EFI_CONSOLE_CONTROL_GUID): Use an array for the last 8 bytes.
882
* include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): Specify the
883
last 8 bytes as an array.
884
(GRUB_EFI_DISK_IO_GUID): New macro.
885
(GRUB_EFI_BLOCK_IO_GUID): Likewise.
886
(GRUB_EFI_DEVICE_PATH_GUID): Likewise.
887
(grub_efi_ipv6_address_t): Change the type to grub_uint16_t from
889
(struct grub_efi_guid): Use an array to specify the last 8 bytes.
890
(struct grub_efi_device_path): Rename the member "sub_type" to
892
(GRUB_EFI_DEVICE_PATH_TYPE): New macro.
893
(GRUB_EFI_DEVICE_PATH_SUBTYPE): Likewise.
894
(GRUB_EFI_DEVICE_PATH_LENGTH): Likewise.
895
(GRUB_EFI_END_DEVICE_PATH_TYPE): Likewise.
896
(GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE): Likewise.
897
(GRUB_EFI_END_THIS_DEVICE_PATH_SUBTYPE): Likewise.
898
(GRUB_EFI_END_ENTIRE_DEVICE_PATH): Likewise.
899
(GRUB_EFI_NEXT_DEVICE_PATH): Likewise.
900
(GRUB_EFI_HARDWARE_DEVICE_PATH_TYPE): Likewise.
901
(GRUB_EFI_PCI_DEVICE_PATH_SUBTYPE): Likewise.
902
(struct grub_efi_pci_device_path): New structure.
903
(grub_efi_pci_device_path_t): New type.
904
(GRUB_EFI_PCCARD_DEVICE_PATH_SUBTYPE): New macro.
905
(struct grub_efi_pccard_device_path): New structure.
906
(grub_efi_pccard_device_path_t): New type.
907
(GRUB_EFI_MEMORY_MAPPED_DEVICE_PATH_SUBTYPE): New macro.
908
(struct grub_efi_memory_mapped_device_path): New structure.
909
(grub_efi_memory_mapped_device_path_t): New type.
910
(GRUB_EFI_VENDOR_DEVICE_PATH_SUBTYPE): New macro.
911
(struct grub_efi_vendor_device_path): New structure.
912
(grub_efi_vendor_device_path_t): New type.
913
(GRUB_EFI_CONTROLLER_DEVICE_PATH_SUBTYPE): New macro.
914
(struct grub_efi_controller_device_path): New structure.
915
(grub_efi_controller_device_path_t): New type.
916
(GRUB_EFI_ACPI_DEVICE_PATH_TYPE): New macro.
917
(GRUB_EFI_ACPI_DEVICE_PATH_SUBTYPE): Likewise.
918
(struct grub_efi_acpi_device_path): New structure.
919
(grub_efi_acpi_device_path_t): New type.
920
(GRUB_EFI_EXPANDED_ACPI_DEVICE_PATH_SUBTYPE): New macro.
921
(struct grub_efi_expanded_acpi_device_path): New structure.
922
(grub_efi_expanded_acpi_device_path_t): New type.
923
(GRUB_EFI_EXPANDED_ACPI_HIDSTR): New macro.
924
(GRUB_EFI_EXPANDED_ACPI_UIDSTR): Likewise.
925
(GRUB_EFI_EXPANDED_ACPI_CIDSTR): Likewise.
926
(GRUB_EFI_MESSAGING_DEVICE_PATH_TYPE): Likewise.
927
(GRUB_EFI_ATAPI_DEVICE_PATH_SUBTYPE): Likewise.
928
(struct grub_efi_atapi_device_path): New structure.
929
(grub_efi_atapi_device_path_t): New type.
930
(GRUB_EFI_FIBRE_CHANNEL_DEVICE_PATH_SUBTYPE): New macro.
931
(struct grub_efi_fibre_channel_device_path): New structure.
932
(grub_efi_fibre_channel_device_path_t): New type.
933
(GRUB_EFI_1394_DEVICE_PATH_SUBTYPE): New macro.
934
(struct grub_efi_1394_device_path): New structure.
935
(grub_efi_1394_device_path_t): New type.
936
(GRUB_EFI_USB_DEVICE_PATH_SUBTYPE): New macro.
937
(struct grub_efi_usb_device_path): New structure.
938
(grub_efi_usb_device_path_t): New type.
939
(GRUB_EFI_USB_CLASS_DEVICE_PATH_SUBTYPE): New macro.
940
(struct grub_efi_usb_class_device_path): New structure.
941
(grub_efi_usb_class_device_path_t): New type.
942
(GRUB_EFI_I2O_DEVICE_PATH_SUBTYPE): New macro.
943
(struct grub_efi_i2o_device_path): New structure.
944
(grub_efi_i2o_device_path_t): New type.
945
(GRUB_EFI_MAC_ADDRESS_DEVICE_PATH_SUBTYPE): New macro.
946
(struct grub_efi_mac_address_device_path): New structure.
947
(grub_efi_mac_address_device_path_t): New type.
948
(GRUB_EFI_IPV4_DEVICE_PATH_SUBTYPE): New macro.
949
(struct grub_efi_ipv4_device_path): New structure.
950
(grub_efi_ipv4_device_path_t): New type.
951
(GRUB_EFI_IPV6_DEVICE_PATH_SUBTYPE): New macro.
952
(struct grub_efi_ipv6_device_path): New structure.
953
(grub_efi_ipv6_device_path_t): New type.
954
(GRUB_EFI_INFINIBAND_DEVICE_PATH_SUBTYPE): New macro.
955
(struct grub_efi_infiniband_device_path): New structure.
956
(grub_efi_infiniband_device_path_t): New type.
957
(GRUB_EFI_UART_DEVICE_PATH_SUBTYPE): New macro.
958
(struct grub_efi_uart_device_path): New structure.
959
(grub_efi_uart_device_path_t): New type.
960
(GRUB_EFI_VENDOR_MESSAGING_DEVICE_PATH_SUBTYPE): New macro.
961
(struct grub_efi_vendor_messaging_device_path): New structure.
962
(grub_efi_vendor_messaging_device_path_t): New type.
963
(GRUB_EFI_MEDIA_DEVICE_PATH_TYPE): New macro.
964
(GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE): Likewise.
965
(struct grub_efi_hard_drive_device_path): New structure.
966
(grub_efi_hard_drive_device_path_t): New type.
967
(GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE): New macro.
968
(struct grub_efi_cdrom_device_path): New structure.
969
(grub_efi_cdrom_device_path_t): New type.
970
(GRUB_EFI_VENDOR_MEDIA_DEVICE_PATH_SUBTYPE): New macro.
971
(struct grub_efi_vendor_media_device_path): New structure.
972
(grub_efi_vendor_media_device_path_t): New type.
973
(GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE): New macro.
974
(struct grub_efi_file_path_device_path): New structure.
975
(grub_efi_file_path_device_path_t): New type.
976
(GRUB_EFI_PROTOCOL_DEVICE_PATH_SUBTYPE): New macro.
977
(struct grub_efi_protocol_device_path): New structure.
978
(grub_efi_protocol_device_path_t): New type.
979
(GRUB_EFI_BIOS_DEVICE_PATH_TYPE): New macro.
980
(GRUB_EFI_BIOS_DEVICE_PATH_SUBTYPE): Likewise.
981
(struct grub_efi_bios_device_path): New structure.
982
(grub_efi_bios_device_path_t): New type.
983
(struct grub_efi_disk_io): New structure.
984
(grub_efi_disk_io_t): New type.
985
(struct grub_efi_block_io_media): New structure.
986
(grub_efi_block_io_media_t): New type.
987
(struct grub_efi_block_io): New structure.
988
(grub_efi_block_io_t): New type.
990
* include/grub/misc.h (grub_stop): Removed.
991
(grub_exit): New prototype.
992
(grub_abort): Likewise.
994
* include/grub/disk.h (enum grub_disk_dev_id): Added
995
GRUB_DISK_DEVICE_EFIDISK_ID.
997
* conf/i386-efi.rmk (kernel_mod_SOURCES): Added
999
(kernel_syms.lst): Remove the target if an error occurs.
1001
2006-04-22 Yoshinori K. Okuji <okuji@enbug.org>
1003
* kern/misc.c (grub_lltoa): Rewritten the decimal conversion part,
1004
as it was simply too buggy.
1006
2006-04-21 Yoshinori K. Okuji <okuji@enbug.org>
1008
* kern/misc.c (grub_lltoa): New function.
1009
(grub_vsprintf): Added support for the long long suffix,
1012
2006-04-20 Hollis Blanchard <hollis@penguinppc.org>
1014
* Makefile.in (LDFLAGS): Add variable.
1015
(LD): Remove variable.
1016
* configure.ac: Add -m32 to LDFLAGS.
1017
* genmk.rb (PModule#rule): Use $(CC) instead of $(LD).
1018
* conf/powerpc-ieee1275.rmk (COMMON_LDFLAGS): Add variable.
1019
(grubof_LDFLAGS): Use $(COMMON_LDFLAGS).
1020
(_linux_mod_LDFLAGS, linux_mod_LDFLAGS, normal_mod_LDFLAGS,
1021
suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS): New
1023
* conf/sparc64-ieee1275.rmk (COMMON_LDFLAGS): Add -nostdlib.
1024
* conf/i386-pc.rmk (COMMON_LDFLAGS): Add -nostdlib.
1025
* conf/i386-efi.rmk (COMMON_LDFLAGS): Add -nostdlib.
1027
2006-04-20 Vesa Jaaskelainen <chaac@nic.fi>
1029
* term/gfxterm.c (grub_gfxterm_getcharwidth): Fixed character
1030
length for unknown glyph.
1032
2006-04-20 Yoshinori K. Okuji <okuji@enbug.org>
1034
Add support for pre-loaded modules into the EFI port.
1036
* util/i386/efi/grub-mkimage.c (make_mods_section): Rewritten
1037
completely. Accept one more argument DIR. The caller has changed.
1039
* kern/i386/efi/init.c (grub_arch_modules_addr): Removed.
1041
* kern/efi/efi.c: Include grub/efi/pe32.h and grub/kernel.h.
1042
(grub_efi_loaded_image_guid): New variable.
1043
(grub_efi_get_loaded_image): New function.
1044
(grub_arch_modules_addr): Likewise.
1046
* include/grub/efi/efi.h (grub_efi_get_loaded_image): New
1049
* include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): New macro.
1050
(struct grub_efi_loaded_image): New structure.
1051
(grub_efi_loaded_image_t): New type.
1053
2006-04-20 Yoshinori K. Okuji <okuji@enbug.org>
1055
* loader/i386/pc/linux.c (grub_rescue_cmd_linux): Compare the file
1056
size with GRUB_OS_AREA_SIZE as grub_size_t instead of
1057
grub_ssize_t. Reported by Jeff Chua <jeff84@silk.corp.fedex.com>.
1059
2006-04-19 Roger Leigh <rleigh@whinlatter.ukfsn.org>
1061
* DISTLIST: Added `util/powerpc/ieee1275/grub-install.in'.
1063
2006-04-19 Yoshinori K. Okuji <okuji@enbug.org>
1065
* DISTLIST: Added include/grub/efi/console.h,
1066
include/grub/efi/time.h, include/grub/i386/efi/kernel.h,
1067
kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c.
1069
* include/grub/efi/console.h: New file.
1070
* include/grub/efi/time.h: Likewise.
1071
* include/grub/i386/efi/kernel.h: Likewise.
1072
* kern/efi/init.c: Likewise.
1073
* kern/efi/mm.c: Likewise.
1074
* term/efi/console.c: Likewise.
1076
* kern/i386/efi/init.c: Do not include grub/machine/time.h.
1077
(grub_stop): Removed.
1078
(grub_get_rtc): Likewise.
1079
(grub_machine_init): Simply call grub_efi_init.
1080
(grub_machine_fini): Call grub_efi_fini.
1082
* kern/efi/efi.c: Include grub/machine/time.h and grub/term.h.
1083
(grub_efi_output_string): Removed.
1084
(grub_efi_stall): New function.
1085
(grub_stop): Likewise.
1086
(grub_get_rtc): Likewise.
1088
* include/grub/efi/efi.h (grub_efi_output_string): Removed.
1089
(grub_efi_stall): New prototype.
1090
(grub_efi_allocate_pages): Likewise.
1091
(grub_efi_free_pages): Likewise.
1092
(grub_efi_get_memory_map): Likewise.
1093
(grub_efi_mm_init): Likewise.
1094
(grub_efi_mm_fini): Likewise.
1095
(grub_efi_init): Likewise.
1096
(grub_efi_fini): Likewise.
1098
* include/grub/i386/efi/time.h: Do not include
1099
grub/symbol.h. Include grub/efi/time.h.
1100
(GRUB_TICKS_PER_SECOND): Removed.
1101
(grub_get_rtc): Likewise.
1103
* include/grub/efi/api.h (struct grub_efi_memory_descriptor):
1104
Added padding. The EFI spec is buggy.
1105
(GRUB_EFI_BLACK): New macro.
1106
(GRUB_EFI_BLUE): Likewise.
1107
(GRUB_EFI_GREEN): Likewise.
1108
(GRUB_EFI_CYAN): Likewise.
1109
(GRUB_EFI_RED): Likewise.
1110
(GRUB_EFI_MAGENTA): Likewise.
1111
(GRUB_EFI_BROWN): Likewise.
1112
(GRUB_EFI_LIGHTGRAY): Likewise.
1113
(GRUB_EFI_BRIGHT): Likewise.
1114
(GRUB_EFI_DARKGRAY): Likewise.
1115
(GRUB_EFI_LIGHTBLUE): Likewise.
1116
(GRUB_EFI_LIGHTGREEN): Likewise.
1117
(GRUB_EFI_LIGHTCYAN): Likewise.
1118
(GRUB_EFI_LIGHTRED): Likewise.
1119
(GRUB_EFI_LIGHTMAGENTA): Likewise.
1120
(GRUB_EFI_YELLOW): Likewise.
1121
(GRUB_EFI_WHITE): Likewise.
1122
(GRUB_EFI_BACKGROUND_BLACK): Likewise.
1123
(GRUB_EFI_BACKGROUND_BLUE): Likewise.
1124
(GRUB_EFI_BACKGROUND_GREEN): Likewise.
1125
(GRUB_EFI_BACKGROUND_CYAN): Likewise.
1126
(GRUB_EFI_BACKGROUND_RED): Likewise.
1127
(GRUB_EFI_BACKGROUND_MAGENTA): Likewise.
1128
(GRUB_EFI_BACKGROUND_BROWN): Likewise.
1129
(GRUB_EFI_BACKGROUND_LIGHTGRAY): Likewise.
1130
(GRUB_EFI_TEXT_ATTR): Likewise.
1132
* conf/i386-efi.rmk (kernel_mod_SOURCES): Added kern/efi/efi.c,
1133
kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c.
1134
(kernel_mod_HEADERS): Added efi/time.h.
1136
2006-04-18 Yoshinori K. Okuji <okuji@enbug.org>
1138
* DISTLIST: Added conf/i386-efi.mk, conf/i386-efi.rmk,
1139
include/grub/efi/api.h, include/grub/efi/console_control.h,
1140
include/grub/efi/efi.h, include/grub/efi/pe32.h,
1141
include/grub/i386/efi/time.h, kern/efi/efi.c,
1142
kern/i386/efi/init.c, kern/i386/efi/startup.S,
1143
and util/i386/efi/grub-mkimage.c.
1145
* Makefile.in (RMKFILES): Added i386-efi.rmk.
1147
* genmk.rb (PModule#rule): Do not export symbols if
1148
#{prefix}_EXPORTS is set to "no".
1150
* conf/i386-efi.mk: New file.
1151
* conf/i386-efi.rmk: Likewise.
1152
* include/grub/efi/api.h: Likewise.
1153
* include/grub/efi/console_control.h: Likewise.
1154
* include/grub/efi/efi.h: Likewise.
1155
* include/grub/efi/pe32.h: Likewise.
1156
* include/grub/i386/efi/time.h: Likewise.
1157
* kern/efi/efi.c: Likewise.
1158
* kern/i386/efi/init.c: Likewise.
1159
* kern/i386/efi/startup.S: Likewise.
1160
* util/i386/efi/grub-mkimage.c: Likewise.
1162
2006-04-17 Marco Gerards <marco@gnu.org>
1164
* include/grub/script.h: Include <grub/parser.h> and
1165
"grub_script.tab.h".
1166
(struct grub_lexer_param): New struct.
1167
(struct grub_parser_param): Likewise.
1168
(grub_script_create_arglist): Pass the state in an argument.
1169
(grub_script_add_arglist): Likewise.
1170
(grub_script_create_cmdline): Likewise.
1171
(grub_script_create_cmdblock): Likewise.
1172
(grub_script_create_cmdif): Likewise.
1173
(grub_script_create_cmdmenu): Likewise.
1174
(grub_script_add_cmd): Likewise.
1175
(grub_script_arg_add): Likewise.
1176
(grub_script_lexer_ref): Likewise.
1177
(grub_script_lexer_deref): Likewise.
1178
(grub_script_lexer_record_start): Likewise.
1179
(grub_script_lexer_record_stop): Likewise.
1180
(grub_script_mem_record): Likewise.
1181
(grub_script_mem_record_stop): Likewise.
1182
(grub_script_malloc): Likewise.
1183
(grub_script_yylex): Likewise.
1184
(grub_script_yyparse): Likewise.
1185
(grub_script_yyerror): Likewise.
1186
(grub_script_yylex): Likewise.
1187
(grub_script_lexer_init): Return the state.
1189
* normal/lexer.c (grub_script_lexer_state): Removed variable.
1190
(grub_script_lexer_done): Likewise.
1191
(grub_script_lexer_getline): Likewise.
1192
(grub_script_lexer_refs): Likewise.
1194
(newscript): Likewise.
1196
(recording): Likewise.
1197
(recordpos): Likewise.
1198
(recordlen): Likewise.
1199
(grub_script_lexer_init): Return the state instead of setting
1201
(grub_script_lexer_ref): Use the newly added argument for state
1203
(grub_script_lexer_deref): Likewise.
1204
(grub_script_lexer_record_start): Likewise.
1205
(grub_script_lexer_record_stop): Likewise.
1206
(recordchar): Likewise.
1207
(nextchar): Likewise.
1208
(grub_script_yylex2): Likewise.
1209
(grub_script_yylex): Likewise.
1210
(grub_script_yyerror): Likewise.
1212
* normal/parser.y (func_mem): Removed variable.
1213
(menu_entry): Likewise.
1215
(%lex-param): New parser option.
1216
(%parse-param): Likewise.
1217
(script): Always return the AST.
1218
(argument): Pass the state around.
1219
(arguments): Likewise.
1220
(grubcmd): Likewise.
1221
(commands): Likewise.
1222
(function): Likewise.
1223
(menuentry): Likewise.
1224
(if_statement): Likewise.
1227
* normal/script.c (grub_script_memused): Removed variable.
1228
(grub_script_parsed): Likewise.
1229
(grub_script_malloc): Added a state argument. Use that instead of
1231
(grub_script_mem_record): Likewise.
1232
(grub_script_mem_record_stop): Likewise.
1233
(grub_script_arg_add): Likewise.
1234
(grub_script_add_arglist): Likewise.
1235
(grub_script_create_cmdline): Likewise.
1236
(grub_script_create_cmdif): Likewise.
1237
(grub_script_create_cmdmenu): Likewise.
1238
(grub_script_add_cmd): Likewise.
1239
(grub_script_parse): Setup the state before calling the parser.
1241
2006-04-16 Marco Gerards <marco@gnu.org>
1243
* normal/command.c (grub_command_init): Remove the title command.
1245
* normal/lexer.c (grub_script_yylex): Renamed from this...
1246
(grub_script_yylex2): ... to this.
1247
(grub_script_yylex): New function. Temporary
1248
introduced to filter some tokens.
1249
(grub_script_yyerror): Print a newline.
1251
* normal/main.c (read_config_file): Output information about the
1252
lines that contain errors. Wait for a key after all lines have
1253
been processed. Don't return an empty menu.
1255
* normal/parser.y (func_mem): Don't initialize.
1256
(menu_entry): Likewise.
1257
(err): New variable.
1258
(script): Don't return anything when an error was encountered.
1259
(ws, returns): Removed rules.
1260
(argument): Disabled concatenated variable support.
1261
(arguments): Remove explicit separators.
1262
(grubcmd): Likewise.
1263
(function): Likewise.
1264
(menuentry): Likewise.
1266
(commands): Likewise. Add error handling.
1268
* normal/script.c (grub_script_create_cmdline): If
1269
`grub_script_parsed' is 0, assume the parser encountered an error.
1271
2006-04-02 Yoshinori K. Okuji <okuji@enbug.org>
1273
* configure.ac: Add support for EFI. Fix the typo
1274
BUILD_LDDFLAGS. Restore the LDFLAGS after testing.
1276
2006-04-01 Vesa Jaaskelainen <chaac@nic.fi>
1278
* util/unifont2pff.rb: Removed unnecessary byte ordering. Now
1279
foreign multibyte characters should be shown correctly.
1281
2006-04-01 Vesa Jaaskelainen <chaac@nic.fi>
1283
* normal/main.c (grub_normal_menu_addentry): Fixed menu size
1285
(read_config_file): Made it to close file before returning.
1287
2006-03-31 Vesa Jaaskelainen <chaac@nic.fi>
1289
* DISTLIST: Added include/grub/i386/pc/vbeblit.h,
1290
include/grub/i386/pc/vbefill.h, video/i386/pc/vbeblit.c,
1291
video/i386/pc/vbefill.c.
1293
* conf/i386-pc.rmk (vbe_mod_SOURCES): Added video/i386/pc/vbeblit.c,
1294
video/i386/pc/vbefill.c.
1296
* include/grub/video.h (grub_video_blit_format): New enum.
1297
(grub_video_mode_info): Added new member blit_format.
1298
(grub_video_get_blit_format): New function prototype.
1300
* include/grub/i386/pc/vbe.h (grub_video_vbe_get_video_ptr): New
1302
(grub_video_vbe_map_rgb): Likewise.
1303
(grub_video_vbe_unmap_color): Likewise.
1305
* include/grub/i386/pc/vbeblit.h: New file.
1307
* include/grub/i386/pc/vbefill.h: New file.
1309
* video/video.c (grub_video_get_blit_format): New function.
1310
(grub_video_vbe_get_video_ptr): Re-declared as non-static.
1311
(grub_video_vbe_map_rgb): Likewise.
1312
(grub_video_vbe_unmap_color): Likewise.
1314
* video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Changed to use more
1316
(grub_video_vbe_blit_render_target): Changed to use more optimized
1318
(grub_video_vbe_setup): Added detection for optimized settings.
1319
(grub_video_vbe_create_render_target): Likewise.
1321
* video/i386/pc/vbeblit.c: New file.
1323
* video/i386/pc/vbefill.c: New file.
1325
2006-03-30 Vesa Jaaskelainen <chaac@nic.fi>
1327
* font/manager.c (grub_font_get_glyph): Removed font fixup from
1330
* util/unifont2pff.rb: ... and moved it to here. Improved argument
1331
parsing to support both hex and dec ranges. If filename was missing
1332
show usage information.
1334
2006-03-14 Vesa Jaaskelainen <chaac@nic.fi>
1336
* DISTLIST: Added include/grub/video.h, term/gfxterm.c,
1337
video/video.c, commands/videotest.c. Removed term/i386/pc/vesafb.c.
1339
* conf/i386-pc.rmk (pkgdata_MODULES): Added video.mod,
1340
gfxterm.mod, videotest.mod. Removed vga.mod, vesafb.mod.
1341
(video_mod_SOURCES): Added.
1342
(video_mod_CFLAGS): Likewise.
1343
(video_mod_LDFLAGS): Likewise.
1344
(gfxterm_mod_SOURCES): Likewise.
1345
(gfxterm_mod_CFLAGS): Likewise.
1346
(gfxterm_mod_LDFLAGS): Likewise.
1347
(videotest_mod_SOURCES): Likewise.
1348
(videotest_mod_CFLAGS): Likewise.
1349
(videotest_mod_LDFLAGS): Likewise.
1350
(vesafb_mod_SOURCES): Removed.
1351
(vesafb_mod_CFLAGS): Likewise.
1352
(vesafb_mod_LDFLAGS): Likewise.
1353
(vga_mod_SOURCES): Likewise.
1354
(vga_mod_CFLAGS): Likewise.
1355
(vga_mod_LDFLAGS): Likewise.
1357
* commands/videotest.c: New file.
1359
* font/manager.c (fill_with_default_glyph): Modified to use
1361
(grub_font_get_glyph): Likewise.
1362
(fontmanager): Renamed from this...
1363
(font_manager): ... to this.
1365
* include/grub/font.h (grub_font_glyph): Added new structure.
1366
(grub_font_get_glyph): Modified to use grub_font_glyph.
1368
* include/grub/misc.h (grub_abs): Added as inline function.
1370
* include/grub/video.h: New file.
1372
* include/grub/i386/pc/vbe.h (GRUB_VBE_STATUS_OK): New macro.
1373
(GRUB_VBE_MEMORY_MODEL_PACKED_PIXEL): Likewise.
1374
(GRUB_VBE_MEMORY_MODEL_DIRECT_COLOR): Likewise.
1375
(grub_vbe_get_controller_info): Renamed from this...
1376
(grub_vbe_bios_get_controller_info): ... to this.
1377
(grub_vbe_get_mode_info): Renamed from this...
1378
(grub_vbe_bios_get_mode_info): ... to this.
1379
(grub_vbe_set_mode): Renamed from this...
1380
(grub_vbe_bios_set_mode): ... to this.
1381
(grub_vbe_get_mode): Renamed from this...
1382
(grub_vbe_bios_get_mode): ... to this.
1383
(grub_vbe_set_memory_window): Renamed from this...
1384
(grub_vbe_bios_set_memory_window): ... to this.
1385
(grub_vbe_get_memory_window): Renamed from this...
1386
(grub_vbe_bios_get_memory_window): ... to this.
1387
(grub_vbe_set_scanline_length): Renamed from this...
1388
(grub_vbe_set_scanline_length): ... to this.
1389
(grub_vbe_get_scanline_length): Renamed from this...
1390
(grub_vbe_bios_get_scanline_length): ... to this.
1391
(grub_vbe_set_display_start): Renamed from this...
1392
(grub_vbe_bios_set_display_start): ... to this.
1393
(grub_vbe_get_display_start): Renamed from this...
1394
(grub_vbe_bios_get_display_start): ... to this.
1395
(grub_vbe_set_palette_data): Renamed from this...
1396
(grub_vbe_bios_set_palette_data): ... to this.
1397
(grub_vbe_set_pixel_rgb): Removed.
1398
(grub_vbe_set_pixel_index): Likewise.
1400
* kern/i386/pc/startup.S (grub_vbe_get_controller_info): Renamed
1402
(grub_vbe_bios_get_controller_info): ... to this.
1403
(grub_vbe_get_mode_info): Renamed from this...
1404
(grub_vbe_bios_get_mode_info): ... to this.
1405
(grub_vbe_set_mode): Renamed from this...
1406
(grub_vbe_bios_set_mode): ... to this.
1407
(grub_vbe_get_mode): Renamed from this...
1408
(grub_vbe_bios_get_mode): ... to this.
1409
(grub_vbe_set_memory_window): Renamed from this...
1410
(grub_vbe_bios_set_memory_window): ... to this.
1411
(grub_vbe_get_memory_window): Renamed from this...
1412
(grub_vbe_bios_get_memory_window): ... to this.
1413
(grub_vbe_set_scanline_length): Renamed from this...
1414
(grub_vbe_set_scanline_length): ... to this.
1415
(grub_vbe_get_scanline_length): Renamed from this...
1416
(grub_vbe_bios_get_scanline_length): ... to this.
1417
(grub_vbe_set_display_start): Renamed from this...
1418
(grub_vbe_bios_set_display_start): ... to this.
1419
(grub_vbe_get_display_start): Renamed from this...
1420
(grub_vbe_bios_get_display_start): ... to this.
1421
(grub_vbe_set_palette_data): Renamed from this...
1422
(grub_vbe_bios_set_palette_data): ... to this.
1423
(grub_vbe_bios_get_controller_info): Fixed problem with registers
1424
getting corrupted after calling it. Added more pushes and pops.
1425
(grub_vbe_bios_set_mode): Likewise.
1426
(grub_vbe_bios_get_mode): Likewise.
1427
(grub_vbe_bios_get_memory_window): Likewise.
1428
(grub_vbe_bios_set_scanline_length): Likewise.
1429
(grub_vbe_bios_get_scanline_length): Likewise.
1430
(grub_vbe_bios_get_display_start): Likewise.
1431
(grub_vbe_bios_set_palette_data): Likewise.
1433
* normal/cmdline.c (cl_set_pos): Refresh the screen.
1434
(cl_insert): Likewise.
1435
(cl_delete): Likewise.
1437
* term/gfxterm.c: New file.
1439
* term/i386/pc/vesafb.c: Removed file.
1441
* video/video.c: New file.
1443
* video/i386/pc/vbe.c (real2pm): Added new function.
1444
(grub_video_vbe_draw_pixel): Likewise.
1445
(grub_video_vbe_get_video_ptr): Likewise.
1446
(grub_video_vbe_get_pixel): Likewise
1447
(grub_video_vbe_init): Likewise.
1448
(grub_video_vbe_fini): Likewise.
1449
(grub_video_vbe_setup): Likewise.
1450
(grub_video_vbe_get_info): Likewise.
1451
(grub_video_vbe_set_palette): Likewise.
1452
(grub_video_vbe_get_palette): Likewise.
1453
(grub_video_vbe_set_viewport): Likewise.
1454
(grub_video_vbe_get_viewport): Likewise.
1455
(grub_video_vbe_map_color): Likewise.
1456
(grub_video_vbe_map_rgb): Likewise.
1457
(grub_video_vbe_map_rgba): Likewise.
1458
(grub_video_vbe_unmap_color): Likewise.
1459
(grub_video_vbe_fill_rect): Likewise.
1460
(grub_video_vbe_blit_glyph): Likewise.
1461
(grub_video_vbe_blit_bitmap): Likewise.
1462
(grub_video_vbe_blit_render_target): Likewise.
1463
(grub_video_vbe_scroll): Likewise.
1464
(grub_video_vbe_swap_buffers): Likewise.
1465
(grub_video_vbe_create_render_target): Likewise.
1466
(grub_video_vbe_delete_render_target): Likewise.
1467
(grub_video_vbe_set_active_render_target): Likewise.
1468
(grub_vbe_set_pixel_rgb): Remove function.
1469
(grub_vbe_set_pixel_index): Likewise.
1470
(index_color_mode): Remove static variable.
1471
(active_mode): Likewise.
1472
(framebuffer): Likewise.
1473
(bytes_per_scan_line): Likewise.
1474
(grub_video_vbe_adapter): Added new static variable.
1475
(framebuffer): Likewise.
1476
(render_target): Likewise.
1477
(initial_mode): Likewise.
1478
(mode_in_use): Likewise.
1479
(mode_list): Likewise.
1481
2006-03-10 Marco Gerards <marco@gnu.org>
1483
* configure.ac (AC_INIT): Bumped to 1.93.
1485
* DISTLIST: Added `include/grub/hfs.h'.
1487
2006-02-01 Yoshinori K. Okuji <okuji@enbug.org>
1489
* boot/i386/pc/boot.S (general_error): Before looping, try INT
1490
18H, which might help the BIOS falling back to next boot media.
1492
2006-01-25 Yoshinori K. Okuji <okuji@enbug.org>
1494
* util/i386/pc/grub-install.in: Escape a backslash. Reported by
1495
Poe Chen <poe.poechen@gmail.com>.
1497
2006-01-17 Marco Gerards <marco@gnu.org>
1499
* include/grub/normal.h: Include <grub/script.h>.
1500
(grub_command_list): Removed struct.
1501
(grub_command_list_t): Removed type.
1502
(grub_menu_entry): Remove members `num' and `command_list'. Add
1503
members `commands' and `sourcecode'.
1504
* include/grub/script.h: Add inclusion guards.
1505
(grub_script_cmd_menuentry): New struct.
1506
(grub_script_execute_menuentry): New prototype.
1507
(grub_script_lexer_record_start): Likewise.
1508
(grub_script_lexer_record_stop): Likewise.
1509
* normal/execute.c (grub_script_execute_menuentry): New function.
1510
* normal/lexer.c (record, recording, recordpos, recordlen): New
1512
(grub_script_lexer_record_start): New function.
1513
(grub_script_lexer_record_stop): Likewise.
1514
(recordchar): Likewise.
1515
(nextchar): Likewise.
1516
(grub_script_yylex): Use `nextchar' to fetch new characters. Use
1517
2048 as the buffer size. Add the tokens `menuentry' and `@'.
1518
* normal/main.c: Include <grub/parser.h> and <grub/script.h>
1519
(current_menu): New variable.
1520
(free_menu): Mainly rewritten.
1521
(grub_normal_menu_addentry): New function.
1522
(read_config_file): Rewritten.
1523
* normal/menu.c (run_menu_entry): Mainly rewritten.
1524
* normal/menu_entry.c (make_screen): Rewritten te code to insert
1526
(run): Mainly rewritten.
1527
* normal/parser.y (menu_entry): New variable.
1528
(GRUB_PARSER_TOKEN_MENUENTRY): New token.
1529
(menuentry): New rule.
1530
(command): Add `menuentry'.
1531
(if_statement): Allow additional returns before `fi'.
1532
* normal/script.c (grub_script_create_cmdmenu): New function.
1534
2006-01-03 Marco Gerards <marco@gnu.org>
1536
* INSTALL: GNU Bison is required.
1537
* configure.ac: Rewritten the test to detect Bison.
1538
* Makefile.in (YACC): New variable. Reported by Xun Sun
1539
<xun.sun.cn@gmail.com>.
1541
2006-01-03 Marco Gerards <marco@gnu.org>
1543
* fs/hfsplus.c (grub_hfsplus_read_block): Convert the offset of
1544
the HFS+ filesystem to filesystem blocks.
1545
(grub_hfsplus_iterate_dir): Cast the `fileinfo' assignment so a
1546
GCC warning is silenced.
1548
2006-01-03 Marco Gerards <marco@gnu.org>
1550
* partmap/apple.c (apple_partition_map_iterate): Convert the data
1551
read from disk from big endian to host byte order.
1553
2006-01-03 Hollis Blanchard <hollis@penguinppc.org>
1555
* fs/hfs.c: Include <grub/hfs.h>. Added reference to the official
1557
(GRUB_HFS_EMBED_HFSPLUS_SIG): New macro.
1558
(grub_hfs_mount): Grammar fix in error. Make sure this is not an
1559
embedded HFS+ filesystem.
1560
(GRUB_HFS_MAGIC, grub_hfs_extent, grub_hfs_datarecord_t)
1561
(grub_hfs_sblock): Move from here...
1562
* include/grub/hfs.h: To here... New file.
1563
* fs/hfsplus.c: Include <grub/hfs.h>. Added reference to the official
1565
(GRUB_HFSPLUS_MAGIC, GRUB_HFSPLUSX_MAGIC, GRUB_HFSPLUS_SBLOCK):
1567
(grub_hfsplus_volheader): Change type of member `magic' to
1569
(grub_hfsplus_data): Add new member `embedded_offset'.
1570
(grub_hfsplus_read_block): Add the HFS+ wrapper offset to the
1572
(grub_hfsplus_mount): Read the HFS+ wrapper if it exists.
1573
Calculate the offset.
1575
2005-12-25 Yoshinori K. Okuji <okuji@enbug.org>
1577
* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRP_ADDR):
1579
(GRUB_BOOT_MACHINE_DRP_SIZE): Likewise.
1
1581
2005-12-25 Yoshinori K. Okuji <okuji@enbug.org>
3
1583
* kern/env.c (grub_env_set): Check if ENV->VALUE instead of