~hamo/ubuntu/precise/grub2/grub2.hi_res

« back to all changes in this revision

Viewing changes to ChangeLog

  • Committer: Bazaar Package Importer
  • Author(s): Colin Watson, Colin Watson, Robert Millan, Updated translations
  • Date: 2010-11-22 12:24:56 UTC
  • mfrom: (1.26.4 upstream) (17.3.36 sid)
  • mto: (17.3.43 sid)
  • mto: This revision was merged to the branch mainline in revision 89.
  • Revision ID: james.westby@ubuntu.com-20101122122456-y82z3sfb7k4zfdcc
Tags: 1.99~20101122-1
[ Colin Watson ]
* New Bazaar snapshot.  Too many changes to list in full, but some of the
  more user-visible ones are as follows:
  - GRUB script:
    + Function parameters, "break", "continue", "shift", "setparams",
      "return", and "!".
    + "export" command supports multiple variable names.
    + Multi-line quoted strings support.
    + Wildcard expansion.
  - sendkey support.
  - USB hotunplugging and USB serial support.
  - Rename CD-ROM to cd on BIOS.
  - Add new --boot-directory option to grub-install, grub-reboot, and
    grub-set-default; the old --root-directory option is still accepted
    but was often confusing.
  - Basic btrfs detection/UUID support (but no file reading yet).
  - bash-completion for utilities.
  - If a device is listed in device.map, always assume that it is
    BIOS-visible rather than using extra layers such as LVM or RAID.
  - Add grub-mknetdir script (closes: #550658).
  - Remove deprecated "root" command.
  - Handle RAID devices containing virtio components.
  - GRUB Legacy configuration file support (via grub-menulst2cfg).
  - Keyboard layout support (via grub-mklayout and grub-kbdcomp).
  - Check generated grub.cfg for syntax errors before saving.
  - Pause execution for at most ten seconds if any errors are displayed,
    so that the user has a chance to see them.
  - Support submenus.
  - Write embedding zone using Reed-Solomon, so that it's robust against
    being partially overwritten (closes: #550702, #591416, #593347).
  - GRUB_DISABLE_LINUX_RECOVERY and GRUB_DISABLE_NETBSD_RECOVERY merged
    into a single GRUB_DISABLE_RECOVERY variable.
  - Fix loader memory allocation failure (closes: #551627).
  - Don't call savedefault on recovery entries (closes: #589325).
  - Support triple-indirect blocks on ext2 (closes: #543924).
  - Recognise DDF1 fake RAID (closes: #603354).

[ Robert Millan ]
* Use dpkg architecture wildcards.

[ Updated translations ]
* Slovenian (Vanja Cvelbar).  Closes: #604003
* Dzongkha (dawa pemo via Tenzin Dendup).  Closes: #604102

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2010-11-22  Colin Watson  <cjwatson@ubuntu.com>
 
2
 
 
3
        * util/grub-install.in: Remove excessive quoting that broke
 
4
        installations to RAID devices.
 
5
 
 
6
2010-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
7
 
 
8
        * grub-core/loader/i386/linux.c (grub_cmd_linux): Pass correctly the
 
9
        bootloader version instead of 0.
 
10
 
 
11
2010-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
12
 
 
13
        * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix spurious
 
14
        warning.
 
15
 
 
16
2010-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
17
 
 
18
        * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Don't try to
 
19
        retrieve the metadat sector if size isn't known.
 
20
        * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
 
21
 
 
22
2010-11-18  Robert Millan  <rmh@gnu.org>
 
23
 
 
24
        * grub-core/fs/btrfs.c (grub_btrfs_mount): Replace grub_strncmp()
 
25
        with grub_memcmp().
 
26
 
 
27
2010-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
28
 
 
29
        * grub-core/normal/menu_entry.c (print_up): Fix displacement of up
 
30
        arrow.
 
31
        Reported by: Jordan Uggla.
 
32
 
 
33
2010-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
34
 
 
35
        Make better UTF compliant.
 
36
 
 
37
        * grub-core/normal/charset.c (grub_utf8_to_utf16): Handle 6- and 7-byte
 
38
        sequences as incorrect.
 
39
        (grub_is_valid_utf8): Likewise.
 
40
        (grub_utf8_to_ucs4): Likewise.
 
41
        (grub_ucs4_to_utf8): Handle codepoints outside of BMP.
 
42
        (grub_ucs4_to_utf8_alloc): Likewise.
 
43
        * include/grub/charset.h (grub_utf16_to_utf8): Likewise.
 
44
 
 
45
2010-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
46
 
 
47
        Make legacy_source behave like source.
 
48
 
 
49
        * grub-core/commands/legacycfg.c (legacy_file): Don't call
 
50
        grub_show_menu.
 
51
        (grub_cmd_legacy_source): Call grub_show_menu if needed.
 
52
 
 
53
2010-11-16  Colin Watson  <cjwatson@debian.org>
 
54
 
 
55
        * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-unused-parameter.
 
56
        (-Wunused implies -Wunused-parameter, but not vice versa).
 
57
 
 
58
2010-11-16  Colin Watson  <cjwatson@ubuntu.com>
 
59
 
 
60
        * configure.ac: Make error messages less confusing by testing for
 
61
        -Wtrampolines rather than -Wno-trampolines (since -Wno-* is always
 
62
        accepted, but produces a diagnostic if something else is wrong).
 
63
 
 
64
2010-11-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
65
 
 
66
        * grub-core/term/at_keyboard.c (grub_keyboard_controller_read)
 
67
        [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: ifdef-ed out
 
68
        (now unused).
 
69
        (grub_keyboard_controller_init)
 
70
        [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: Don't attempt to
 
71
        read the initial state since controller isn't inited yet.
 
72
 
 
73
2010-11-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
74
 
 
75
        * grub-core/lib/relocator.c (malloc_in_range): Take into account that
 
76
        allocate_regbeg may need to create new chunk header.
 
77
 
 
78
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
79
 
 
80
        Fix quoting in legacy parser.
 
81
 
 
82
        * grub-core/lib/legacy_parse.c (grub_legacy_escape): Correctly handle
 
83
        single quotes.
 
84
        (grub_legacy_parse): Likewise.
 
85
        Reported by: Jordan Uggla.
 
86
        Tested by: Jordan Uggla.
 
87
 
 
88
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
89
 
 
90
        Don't add -lgcc on i386 and x86_64.
 
91
 
 
92
        * configure.ac (LIBS): Don't add -lgcc on i386 and x86_64.
 
93
        * conf/Makefile.common (LDADD_KERNEL): Likewise.
 
94
        * grub-core/Makefile.core.def (kernel): Use LDADD_KERNEL.
 
95
 
 
96
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
97
 
 
98
        * configure.ac: Add -Wno-trampolines when supported.
 
99
 
 
100
2010-11-14  Modestas Vainius <modax@debian.org>
 
101
 
 
102
        * grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Recognise ddf1_
 
103
        fakeraid.
 
104
 
 
105
2010-11-14  Giuseppe Caizzone <acaizzo@gmail.com>
 
106
 
 
107
        Add generic logical block size support for UDF.
 
108
 
 
109
        * grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
 
110
        (GRUB_UDF_BLKSZ): Removed.
 
111
        (struct grub_udf_data): New field "lbshift" to hold the logical block
 
112
        size of the file system in log2 format. All users updated.
 
113
        (sblocklist): Change type to unsigned.
 
114
        (grub_udf_mount): Change type of "sblklist" to unsigned.
 
115
        Move AVDP search before VRS recognition, because the latter requires
 
116
        knowledge of the logical block size, which is detected during the
 
117
        former.
 
118
        Detect and validate logical block size during AVDP search, adding
 
119
        support for block sizes 512, 1024 and 4096.
 
120
        Make VRS recognition independent of block size.
 
121
 
 
122
2010-11-14  Giuseppe Caizzone <acaizzo@gmail.com>
 
123
 
 
124
        Properly handle deleted files on UDF.
 
125
 
 
126
        * grub-core/fs/udf.c (grub_udf_iterate_dir): Skip directory entries
 
127
        whose "characteristics" field has the bit GRUB_UDF_FID_CHAR_DELETED
 
128
        set.
 
129
 
 
130
2010-11-14  Giuseppe Caizzone <acaizzo@gmail.com>
 
131
 
 
132
        Support reading files larger than 2 GiB.
 
133
 
 
134
        * grub-core/fs/udf.c (grub_udf_iterate_dir): Change type of variable
 
135
        "offset" to grub_off_t.
 
136
        (grub_udf_read_file): Likewise for parameter "pos".
 
137
 
 
138
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
139
 
 
140
        * docs/grub.texi (Changes from GRUB Legacy): Note when save_env is
 
141
        unavailable.
 
142
        (Simple configuration): Refer to Changes from GRUB Legacy about
 
143
        save_env availability.
 
144
 
 
145
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
146
 
 
147
        * util/grub-install.in: Ignore empty partition table detection
 
148
        instead of trying to include part_ module.
 
149
 
 
150
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
151
 
 
152
        * grub-core/disk/lvm.c (GRUB_MOD_FINI): Reset the vg_list. Fixes
 
153
        LVM on RAID support.
 
154
 
 
155
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
156
 
 
157
        Properly define WORDS_BIGENDIAN in wrapped environments.
 
158
 
 
159
        * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN): New
 
160
        definition.
 
161
        * grub-core/lib/posix_wrap/sys/types.h (WORDS_BIGENDIAN): Likewise.
 
162
 
 
163
        Reported by: Manoel Rebelo Abranches.
 
164
        Tested by: Manoel Rebelo Abranches.
 
165
 
 
166
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
167
 
 
168
        * util/grub-mkconfig.in: Fix quoting.
 
169
 
 
170
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
171
 
 
172
        Support big ext2 files.
 
173
 
 
174
        * grub-core/fs/ext2.c (grub_ext2_inode): Rename dir_acl to size_high.
 
175
        (grub_ext2_read_block): Support triple indirect blocks.
 
176
        (grub_ext2_read_file): Use 64-bit types and read size_high.
 
177
        (grub_ext2_open): Read size_high.
 
178
        Reported by: Ximin Luo.
 
179
        Tested by: Manoel Rebelo Abranches.
 
180
 
 
181
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
182
 
 
183
        * util/grub-install.in: Handle filenames containing spaces.
 
184
        Reported by: Jordan Uggla.
 
185
        Tested by: Jordan Uggla.
 
186
 
 
187
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
188
 
 
189
        * util/grub-mkconfig.in (grub_script_check): New variable.
 
190
        Use grub_script_check instead of grub-script-check.
 
191
        Reported by: Barry Jackson.
 
192
 
 
193
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
194
 
 
195
        * docs/grub.texi (menu): Correct the order.
 
196
        Reported by: D. Hugh Redelmeier.
 
197
 
 
198
2010-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
199
 
 
200
        * grub-core/kern/i386/pc/startup.S (multiboot_trampoline): Add missing
 
201
        jump.
 
202
 
 
203
2010-11-08  Manoel Rebelo Abranches <mrabran@br.ibm.com>
 
204
 
 
205
        * include/grub/elfload.h (grub_elf32_size): New parameter.
 
206
        All users updated.
 
207
        Return maximum segments alignment.
 
208
        (grub_elf64_size): Likewise.
 
209
        * kern/elf.c (grub_elf32_size): New parameter. All users updated.
 
210
        Return maximum segments alignment.
 
211
        (grub_elf64_size): Likewise.
 
212
        * grub-core/loader/powerpc/ieee1275/linux.c:
 
213
        (grub_linux_claimmap_iterate): New function. Uses the
 
214
        "available" property in the "memory" node for memory allocation
 
215
        for kernel in the PowerPC loader.
 
216
        (grub_linux_load32): Correctly find linux entry point offset.
 
217
        (grub_linux_load64): Likewise.
 
218
 
 
219
2010-11-07  Robert Millan  <rmh@gnu.org>
 
220
 
 
221
        On mips-yeeloong, build with -march=loongson2f when this flag is
 
222
        available (GCC >= 4.4).
 
223
        * conf/Makefile.common [COND_mips_yeeloong] (CFLAGS_PLATFORM): Remove
 
224
        `-march=mips3'.
 
225
        * configure.ac: For mips-yeeloong, add -march=loongson2f if available,
 
226
        or otherwise add -march=mips3.
 
227
 
 
228
2010-11-07  BVK Chaitanya  <bvk.groups@gmail.com>
 
229
 
 
230
        Suppress shell expansion on echo '*' and echo "*" like cases.
 
231
        Reported by: Jordan Uggla.
 
232
 
 
233
        * grub-core/script/execute.c (grub_script_arglist_to_argv): Escape
 
234
        string arguments before shell expansion.
 
235
        * tests/grub_cmd_echo.in: New testcases.
 
236
 
 
237
2010-11-07  Robert Millan  <rmh@gnu.org>
 
238
 
 
239
        * conf/mips-qemu-mips.rmk: Remove stale file from previous
 
240
        transition.
 
241
 
 
242
2010-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
243
 
 
244
        * grub-core/kern/emu/hostdisk.c
 
245
        (convert_system_partition_to_system_disk): Handle devices like "sdaa1".
 
246
 
 
247
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
248
 
 
249
        * include/grub/emu/misc.h: Don't include grub/util/libzfs.h.
 
250
        * include/grub/emu/misc.h (grub_get_libzfs_handle): Move from here ...
 
251
        * include/grub/util/libzfs.h (grub_get_libzfs_handle): ... here.
 
252
 
 
253
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
254
 
 
255
        * grub-core/fs/ntfs.c (grub_ntfs_uuid): Make uppercase.
 
256
 
 
257
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
258
 
 
259
        * util/grub-install.in: Replace useless recomendation to pass
 
260
        --modules with a recomendation to report a bug.
 
261
 
 
262
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
263
 
 
264
        Properly register serial terminfo.
 
265
        Reported by: Jordan Uggla
 
266
 
 
267
        * grub-core/term/serial.c (grub_serial_terminfo_input_template): New
 
268
        const.
 
269
        (grub_serial_terminfo_output_template): Likewise.
 
270
        (grub_cmd_serial): Register "serial" with terminfo.
 
271
        (GRUB_MOD_INIT(serial)): Fill grub_serial_terminfo_input and
 
272
        grub_serial_terminfo_output.
 
273
 
 
274
2010-11-05  Robert Millan  <rmh@gnu.org>
 
275
 
 
276
        * util/grub-mkconfig.in: Remove gfxterm.mod probe (no longer
 
277
        needed).
 
278
 
 
279
2010-11-05  Robert Millan  <rmh@gnu.org>
 
280
 
 
281
        On Yeeloong, pass machine type information to Linux.
 
282
 
 
283
        * grub-core/loader/mips/linux.c [GRUB_MACHINE_MIPS_YEELOONG]
 
284
        (LOONGSON_MACHTYPE): New macro, set to
 
285
        "machtype=lemote-yeeloong-2f-8.9inches".
 
286
        [LOONGSON_MACHTYPE] (grub_cmd_linux): Pass LOONGSON_MACHTYPE as
 
287
        additional argument to Linux.
 
288
 
 
289
2010-11-04  Robert Millan  <rmh@gnu.org>
 
290
 
 
291
        * util/deviceiter.c (grub_util_iterate_devices): Increase SCSI
 
292
        limit to 48 (to cope with Sun Fire X4500), and IDE limit to 96
 
293
        (its SATA disks are detected as slaveless IDE master drives on
 
294
        kFreeBSD).
 
295
        Reported by Carsten Aulbert.
 
296
 
 
297
2010-11-02  Colin Watson  <cjwatson@ubuntu.com>
 
298
 
 
299
        * util/bin2h.c (main): Fix spelling error in generated output.
 
300
 
 
301
2010-11-01  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
302
 
 
303
        * grub-core/partmap/bsdlabel.c (iterate_real): Fix an integer overflow.
 
304
 
 
305
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
306
 
 
307
        * grub-core/loader/i386/linux.c (grub_cmd_linux): Autoload vbe.mod if
 
308
        vga= option is supplied.
 
309
 
 
310
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
311
 
 
312
        * util/grub.d/10_hurd.in: Don't call savedefault on recovery entries.
 
313
        * util/grub.d/10_kfreebsd.in: Likewise.
 
314
        * util/grub.d/10_linux.in: Likewise.
 
315
        * util/grub.d/20_linux_xen.in: Likewise.
 
316
 
 
317
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
318
 
 
319
        * grub-core/lib/arg.c (grub_arg_parse): Avoid interpreting direct
 
320
        argument as an argument to no-argument option.
 
321
 
 
322
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
323
 
 
324
        * util/grub.d/10_linux.in: Add missing load_video with explicit
 
325
        GRUB_GFXPAYLOAD_LINUX.
 
326
 
 
327
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
328
 
 
329
        * Makefile.am (libgrub.pp): Propagate the libgrub.a split.
 
330
 
 
331
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
332
 
 
333
        * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Do not put
 
334
        elements with invlid index.
 
335
        * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
 
336
        * grub-core/disk/raid.c (insert_array): Automatically reallocate
 
337
        members.
 
338
        * include/grub/raid.h (grub_raid_member): New struct.
 
339
        (grub_raid_array): Transform devices and start_sector into usage of
 
340
        grub_raid_member. All users updated
 
341
        (allocated_devs): New member.
 
342
 
 
343
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
344
 
 
345
        * docs/man/grub-set-default.h2m: Clarify that only saved default entry
 
346
        is modified
 
347
 
 
348
2010-10-29  BVK Chaitanya  <bvk.groups@gmail.com>
 
349
 
 
350
        NetBSD build fix for getline function conflict from gnulib.
 
351
 
 
352
        * Makefile.util.def (libgrubkern.a): New library for grub kernel
 
353
        components that depend on gnulib headers.
 
354
        (libgrubmods.a): Renamed from earlier libgrub.a.
 
355
        * conf/Makefile.common: Remove gnulib from *_LIBRARY flags.
 
356
 
 
357
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
358
 
 
359
        * util/grub-setup.c (setup): Refuse to do a cross-disk embeddingless
 
360
        install rather than creating a broken install.
 
361
 
 
362
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
363
 
 
364
        * util/grub-setup.c (argp): Remove misleading example of installing to
 
365
        a partition.
 
366
 
 
367
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
368
 
 
369
        * util/grub-setup.c (setup): Clarify the error message.
 
370
 
 
371
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
372
 
 
373
        * include/grub/types.h (grub_target_off_t): Removed no longer used type.
 
374
 
 
375
2010-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
376
 
 
377
        * grub-core/kern/emu/misc.c
 
378
        (grub_make_system_path_relative_to_its_root)
 
379
        [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Fix mountpoint return on ZFS.
 
380
 
 
381
2010-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
382
 
 
383
        * grub-core/kern/emu/misc.c
 
384
        (grub_make_system_path_relative_to_its_root): Revert r2882.
 
385
 
 
386
2010-10-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
387
 
 
388
        * grub-core/lib/relocator.c (grub_relocator_subchunk): Remove now
 
389
        useless field head. All users updated.
 
390
        (free_subchunk): Correct handling of IN_REGION subchunk.
 
391
 
 
392
2010-10-22  Colin Watson  <cjwatson@ubuntu.com>
 
393
 
 
394
        * docs/grub.texi (Installing GRUB using grub-install): Proofread.
 
395
        (Supported kernels): Likewise.
 
396
 
 
397
2010-10-18  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
398
 
 
399
        Make mktemp invocations portable.
 
400
 
 
401
        * grub-core/genmod.sh.in: Use mktemp with an explicit template, and
 
402
        exit if mktemp fails.
 
403
        * tests/grub_script_blockarg.in: Likewise.
 
404
        * tests/partmap_test.in: Likewise.
 
405
        * tests/util/grub-shell-tester.in: Likewise.
 
406
        * tests/util/grub-shell.in: Likewise.
 
407
        * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
 
408
        * Makefile.am: Likewise, and chain shell commands with `&&'
 
409
        instead of ';'.
 
410
        * util/grub-mkrescue.in: Use the same explicit template as above, and
 
411
        exit if mktemp fails.
 
412
 
 
413
2010-10-18  BVK Chaitanya  <bvk.groups@gmail.com>
 
414
 
 
415
        * util/grub.d/10_linux.in: Fix built-in initramfs image mode for
 
416
        Linux kernel, reported by Dennis Schridde.
 
417
 
 
418
2010-10-17  Szymon Janc <szymon@janc.net.pl>
 
419
 
 
420
       * grub-core/normal/auth.c (grub_auth_check_authentication):
 
421
       Set-but-not-used variable removed.
 
422
 
 
423
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
424
 
 
425
        * docs/grub.texi (GNU/Linux): Document APM unavailability with
 
426
        32-bit linux protocol.
 
427
 
 
428
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
429
 
 
430
        * grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Check
 
431
        cursor shape for sanity.
 
432
 
 
433
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
434
 
 
435
        * docs/grub.texi (Installation): Document buggy BIOS install.
 
436
 
 
437
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
438
 
 
439
        * docs/grub.texi (Installation): Indent.
 
440
 
 
441
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
442
 
 
443
        * util/grub-setup.c (setup): New parameter allow_floppy.
 
444
        (arguments): New member allow_floppy.
 
445
        (argp_parser): Handle --allow-floppy.
 
446
        (main): Pass allow_floppy.
 
447
        * util/grub-install.in: New option --allow-floppy passed though to
 
448
        grub-setup.
 
449
 
 
450
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
451
 
 
452
        * util/grub-install.in: Handle partitionless disks.
 
453
 
 
454
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
455
 
 
456
        * util/grub-setup.c (setup): Don't clean blocklists before readability
 
457
        verfification.
 
458
 
 
459
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
460
 
 
461
        * docs/grub.texi (Installation): Document embedding zone. Remove
 
462
        obsolete grub-install example.
 
463
 
 
464
2010-10-16  Szymon Janc <szymon@janc.net.pl>
 
465
 
 
466
        * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel):
 
467
        Set-but-not-used variable ifdef'ed.
 
468
        * grub-core/lib/legacy_parse.c (grub_legacy_parse): Likewise.
 
469
        * grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Set-but-not-used
 
470
        variable removed.
 
471
        * grub-core/disk/lvm.c (grub_lvm_scan_device): Likewise.
 
472
        * grub-core/fs/jfs.c (grub_jfs_find_file): Likewise.
 
473
        * grub-core/fs/minix.c (grub_minix_dir): Likewise.
 
474
        * grub-core/fs/sfs.c (grub_sfs_read_extent): Likewise.
 
475
        * grub-core/fs/ufs.c (grub_ufs_dir): Likewise.
 
476
        * grub-core/gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
 
477
        * grub-core/gfxmenu/view.c (redraw_menu_visit): Likewise.
 
478
        * grub-core/gfxmenu/widget-box.c (draw): Likewise.
 
479
        * grub-core/lib/relocator.c (malloc_in_range): Likewise.
 
480
        * grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta): Likewise.
 
481
        * grub-core/loader/i386/bsd_pagetable.c (fill_bsd64_pagetable):
 
482
        Likewise.
 
483
 
 
484
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
485
 
 
486
        * grub-core/commands/acpihalt.c (skip_ext_op): Skip index field op.
 
487
        * include/grub/acpi.h (GRUB_ACPI_EXTOPCODE_INDEX_FIELD_OP): New
 
488
        enum value.
 
489
 
 
490
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
491
 
 
492
        * grub-core/commands/acpihalt.c (get_sleep_type): Accept \_S5_ as
 
493
        synonym to _S5_. Needed for some DSDTs.
 
494
 
 
495
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
496
 
 
497
        Userspace ACPI parser debugging.
 
498
 
 
499
        * grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Include userspace
 
500
        headers and add relevant defines. Don't include standard headers.
 
501
        (main) [GRUB_DSDT_TEST]: New function.
 
502
        * include/grub/acpi.h [GRUB_DSDT_TEST]: Don't include standard headers.
 
503
        Don't declare functions.
 
504
 
 
505
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
506
 
 
507
        Remove dead grub_efi_mm_fini.
 
508
 
 
509
        * grub-core/kern/efi/mm.c (allocated_page): Removed.
 
510
        (ALLOCATED_PAGES_SIZE): Likewise.
 
511
        (MAX_ALLOCATED_PAGES): Likewise.
 
512
        (allocated_pages): Likewise.
 
513
        (grub_efi_allocate_pages): Don't record allocated pages.
 
514
        (grub_efi_free_pages): Likewise.
 
515
        (grub_efi_mm_init): Likewise.
 
516
        (grub_efi_mm_fini): Removed.
 
517
 
 
518
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
519
 
 
520
        * grub-core/kern/efi/mm.c (BYTES_TO_PAGES): Round up instead of down.
 
521
        (grub_efi_mm_init): Take into account the memory map size increase.
 
522
 
 
523
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
524
 
 
525
        * grub-core/term/ns8250.c (do_real_config): Set port->broken to 0.
 
526
        (serial_hw_put): Wait based on real time rather than port reads. Don't
 
527
        roken ports.
 
528
        * include/grub/serial.h (grub_serial_port): New field broken.
 
529
 
 
530
2010-10-16  Robert Millan  <rmh@gnu.org>
 
531
 
 
532
        * grub-core/kern/emu/misc.c
 
533
        (grub_make_system_path_relative_to_its_root): Fix premature return
 
534
        when processing non-root ZFS filesystems.
 
535
        Reported by Sergio Talens-Oliag.
 
536
 
 
537
2010-10-15  Robert Millan  <rmh@gnu.org>
 
538
 
 
539
        * util/grub.d/10_linux.in (list): Expand "vmlinu[zx]" instances to
 
540
        guarantee compressed ones are processed first.
 
541
 
 
542
2010-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
543
 
 
544
        * grub-core/efiemu/main.c (grub_efiemu_prepare): Handle errors from
 
545
        grub_efiemu_autocore.
 
546
 
 
547
2010-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
548
 
 
549
        * grub-core/kern/i386/pc/startup.S (bypass_table): Use 0x1b explicitly
 
550
        rather than 0x1b.
 
551
        (grub_console_getkey): Use correct jae opcode rather than ja.
 
552
 
 
553
2010-10-12  Robert Millan  <rmh@gnu.org>
 
554
 
 
555
        * util/grub-mkconfig.in: Merge `GRUB_DISABLE_LINUX_RECOVERY' and
 
556
        `GRUB_DISABLE_NETBSD_RECOVERY' into a single `GRUB_DISABLE_RECOVERY'
 
557
        variable.  All references updated.
 
558
 
 
559
        * util/grub.d/10_kfreebsd.in: Support recovery boot entries.
 
560
 
 
561
2010-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
 
562
 
 
563
        Correctly distinguish mdraid flavours.
 
564
 
 
565
        * grub-core/disk/raid.c (grub_raid_getname) [GRUB_UTIL]: New function.
 
566
        (insert_array): New argument raid.
 
567
        * include/grub/disk.h (grub_disk_dev) [GRUB_UTIL]: New member raidname.
 
568
        * include/grub/raid.h (grub_raid_array) [GRUB_UTIL]: New member driver.
 
569
        * util/grub-probe.c (probe): PRint raidname instead of plainly "mdraid".
 
570
 
 
571
2010-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
572
 
 
573
        * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Fix incorrect
 
574
        handling of special keys.
 
575
 
 
576
2010-10-02  Aleš Nesrsta <starous@volny.cz>
 
577
 
 
578
        * include/grub/scsi.h (grub_make_scsi_id): Fix incorrect usgae of
 
579
        GRUB_SCSI_ID_BUS_SHIFT instead of GRUB_SCSI_ID_LUN_SHIFT.
 
580
 
 
581
2010-10-02  Aleš Nesrsta <starous@volny.cz>
 
582
 
 
583
        * grub-core/bus/usb/ohci.c (GRUB_OHCI_TDS): Increase.
 
584
        * grub-core/bus/usb/uhci.c (N_TD): New definition. All previous implicit
 
585
        users updated.
 
586
        * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_setup_readwrite):
 
587
        Use right endpoint when querying descriptor.
 
588
 
 
589
2010-10-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
590
 
 
591
        Clear out 0x80 color bit on EFI.
 
592
        Tested by: decoder
 
593
        Reported by: decoder and meta tech.
 
594
 
 
595
        * grub-core/term/efi/console.c (grub_console_standard_color): Removed.
 
596
        (grub_console_setcolorstate): Clear out 0x80 bit.
 
597
        Use GRUB_TERM_DEFAULT_STANDARD_COLOR.
 
598
        (grub_console_output): Use GRUB_TERM_DEFAULT_NORMAL_COLOR.
 
599
        Use GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR.
 
600
 
 
601
2010-10-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
602
 
 
603
        * grub-core/loader/i386/linux.c (DEFAULT_VIDEO_MODE) [GRUB_MACHINE_EFI]:
 
604
        Set to "auto".
 
605
 
 
606
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
607
 
 
608
        * grub-core/gettext/gettext.c (grub_gettext_init_ext): Avoid using
 
609
        mo_file after freeing.
 
610
 
 
611
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
612
 
 
613
        * grub-core/normal/term.c (read_terminal_list): Free in a right order.
 
614
 
 
615
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
616
 
 
617
        * grub-core/script/execute.c (grub_script_execute_sourcecode): Set
 
618
        flags.
 
619
 
 
620
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
621
 
 
622
        * util/grub-setup.c (main) [GRUB_MACHINE_IEEE1275]: Propagate argp
 
623
        usage.
 
624
 
 
625
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
626
 
 
627
        Put terminfo into core on ieee1275 and yeeloong (needed for console).
 
628
 
 
629
        * gentpl.py: New groups terminfoinkernel and terminfomodule.
 
630
        * grub-core/Makefile.am (KERNEL_HEADER_FILES): Include extcmd.h, arg.h
 
631
        and terminfo.h when needed.
 
632
        * grub-core/Makefile.core.def (kernel): Include term/terminfo.c,
 
633
        term/tparm.c, commands/extcmd.c, lib/arg.c on terminfokernel.
 
634
        (terminfo): Enable only on terminfokernel.
 
635
        (extcmd): Likewise.
 
636
        * include/grub/extcmd.h: Add missing EXPORT_FUNC.
 
637
        * include/grub/lib/arg.h: Likewise.
 
638
        * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Fix
 
639
        incorrect usage of ->.
 
640
 
 
641
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
642
 
 
643
        * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi]
 
644
        [GRUB_MACHINE_EFI && __i386__]: Fix typo.
 
645
 
 
646
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
647
 
 
648
        Fix coreboot compilation.
 
649
 
 
650
        * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
 
651
        Take VBE info into account even if only text is supported.
 
652
        (fill_vbe_info): Take into account the case when only VGA text
 
653
        is supported.
 
654
        * include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): Set to zero
 
655
        on coreboot, multiboot and qemu.
 
656
 
 
657
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
658
 
 
659
        * grub-core/lib/relocator.c (malloc_in_range): Trim too verbose
 
660
        debug messages.
 
661
        (grub_relocator_prepare_relocs): Set movers_chunk.srcv.
 
662
 
 
663
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
664
 
 
665
        * grub-core/loader/i386/bsd.c (grub_cmd_netbsd): Provide default serial
 
666
        parameters.
 
667
 
 
668
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
669
 
 
670
        * grub-core/lib/arg.c (grub_arg_parse): Fix treating of all commands as
 
671
        if they were BSD-style.
 
672
 
 
673
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
674
 
 
675
        * grub-core/boot/i386/pc/lnxboot.S: Replace
 
676
        GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE with
 
677
        GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART.
 
678
 
 
679
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
680
 
 
681
        Write embedding zone using Reed-Solomon.
 
682
 
 
683
        * Makefile.util.def (grub-setup): Add grub-core/lib/reed_solomon.c.
 
684
        * grub-core/Makefile.am (rs_decoder.S): New target.
 
685
        (kern/i386/pc/startup.S): Depend on rs_decoder.S.
 
686
        * grub-core/kern/i386/pc/startup.S (reed_solomon_redundancy): New field.
 
687
        (multiboot): Move to RS part.
 
688
        (post_reed_solomon): New label.
 
689
        (grub_boot_drive): Move to non-RS part since it's modified in memory
 
690
        on boot.
 
691
        Include rs_decoder.S.
 
692
        * grub-core/lib/reed_solomon.c: New file.
 
693
        * include/grub/offsets.h (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY):
 
694
        New definition.
 
695
        (GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE): Removed.
 
696
        (GRUB_KERNEL_I386_PC_RAW_SIZE): Updated.
 
697
        (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): New definition.
 
698
        * include/grub/partition.h (grub_partition_map): Change prototype of
 
699
        embed to allow returning additional sectors.
 
700
        * include/grub/reed_solomon.h: New file.
 
701
        * util/grub-setup.c (setup): Handle Reed-Solomon.
 
702
 
 
703
2010-09-28  Colin Watson  <cjwatson@ubuntu.com>
 
704
 
 
705
        * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
 
706
        i386 and x86-64 definedness tests.
 
707
 
 
708
2010-09-27  Yves Blusseau  <blusseau@zetam.org>
 
709
 
 
710
        Fix generation of kernel_syms.lst
 
711
 
 
712
        * grub-core/Makefile.am (kernel_syms.lst): Fix value and position of
 
713
        ASM_PREFIX
 
714
 
 
715
2010-09-26  Robert Millan  <rmh@gnu.org>
 
716
 
 
717
        Support degraded ZFS arrays in "grub-probe -t device" resolution.
 
718
 
 
719
        * grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): When
 
720
        the pool is an array of devices, iterate through it and return the
 
721
        first device that passes a stat() test (instead of blindly returning
 
722
        the first one).
 
723
 
 
724
2010-09-26  Robert Millan  <rmh@gnu.org>
 
725
 
 
726
        Build fixes for GNU/kFreeBSD.
 
727
 
 
728
        * Makefile.util.def: Add `$(LIBZFS) $(LIBNVPAIR)' library dependencies
 
729
        to programs that require ZFS conversion.
 
730
        * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Support
 
731
        kernels that don't have FLOPPY_MAJOR.
 
732
 
 
733
2010-09-25  BVK Chaitanya  <bvk.groups@gmail.com>
 
734
 
 
735
        * grub-core/kern/emu/full.c (grub_emu_post_init):  Fix typo.
 
736
 
 
737
2010-09-25  BVK Chaitanya  <bvk.groups@gmail.com>
 
738
 
 
739
        Fix grub-emu build.
 
740
 
 
741
        * grub-core/kern/emu/main.c: Remove #include <getopt.h>.
 
742
        * grub-core/kern/emu/full.c: Split grub_mdraid_{init,fini} into
 
743
        mdraid09 and mdraid1x.
 
744
 
 
745
2010-09-24  Colin Watson  <cjwatson@ubuntu.com>
 
746
 
 
747
        Re-enable grub-extras.
 
748
 
 
749
        * autogen.sh: Create symlinks to ${GRUB_CONTRIB} if necessary to
 
750
        avoid confusing Automake.  Run autogen only twice, once for the top
 
751
        level and once for grub-core.  Add Makefile.util.def and
 
752
        Makefile.core.def from extra modules to the appropriate autogen
 
753
        invocations.  If Makefile.common exists in an extra module, include
 
754
        it in both Makefile.util.am and grub-core/Makefile.core.am;
 
755
        similarly, include any Makefile.util.common file in Makefile.util.am
 
756
        and any Makefile.core.common file in grub-core/Makefile.core.am.
 
757
        * conf/Makefile.common ($(top_srcdir)/grub-core/Makefile.core.am):
 
758
        Depend on $(top_srcdir)/grub-core/Makefile.gcry.def.
 
759
        ($(top_srcdir)/grub-core/Makefile.gcry.def): Remove.
 
760
        * grub-core/Makefile.am: Remove inclusion of Makefile.gcry.am.
 
761
 
 
762
        * gentpl.py (gvar_add): Turn GVARS into a set.
 
763
        (global_variable_initializers): Sort global variables on output.
 
764
        (vars_init): New function.
 
765
        (first_time): Likewise.
 
766
        (library): Ensure that non-global variable initialisations are
 
767
        emitted before the first time we emit code for a library block.
 
768
        Append to variables rather than setting them.  Only emit
 
769
        noinst_LIBRARIES, BUILT_SOURCES, and CLEANFILES the first time for
 
770
        each conditional path.
 
771
        (program): installdir() emits an Autogen macro, so must be passed to
 
772
        var_add rather than gvar_add.
 
773
        (data): Likewise.
 
774
        (script): Likewise.
 
775
        (rules): New function, centralising handling for different target
 
776
        types.  Set up Guile association lists for first_time and vars_init,
 
777
        and send most output to a diversion so that variable initialisations
 
778
        can be emitted first.
 
779
        (module_rules): Use new rules function.
 
780
        (kernel_rules): Likewise.
 
781
        (image_rules): Likewise.
 
782
        (library_rules): Likewise.
 
783
        (program_rules): Likewise.
 
784
        (script_rules): Likewise.
 
785
        (data_rules): Likewise.
 
786
 
 
787
        * configure.ac: Add AC_PROG_LN_S, for the benefit of ntldr-img.
 
788
 
 
789
        * .bzrignore: Add contrib and grub-core/contrib.  Remove
 
790
        grub-core/Makefile.gcry.am.
 
791
 
 
792
2010-09-24  Yves Blusseau  <blusseau@zetam.org>
 
793
 
 
794
        * grub-core/lib/LzFind.c: Add missing include.
 
795
        * grub-core/lib/LzmaEnc.c: Likewise.
 
796
        * grub-core/script/lexer.c: Likewise.
 
797
        * grub-core/script/yylex.l: Likewise.
 
798
        * util/grub-macho2img.c: Likewise.
 
799
        * util/grub-menulst2cfg.c: Likewise.
 
800
        * util/grub-mklayout.c: Likewise.
 
801
        * util/grub-mkpasswd-pbkdf2.c
 
802
        * util/grub-mkrelpath.c: Likewise.
 
803
        * util/resolve.c: Likewise.
 
804
 
 
805
2010-09-24  BVK Chaitanya  <bvk.groups@gmail.com>
 
806
 
 
807
        * Makefile.util.def (example_unit_test): Add
 
808
        grub-core/gnulib/libgnu.a.
 
809
 
 
810
2010-09-23  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
811
 
 
812
        * grub-core/commands/acpihalt.c (get_sleep_type): Initialize prev.
 
813
 
 
814
2010-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
815
 
 
816
        Support xz compression on yeeloong.
 
817
 
 
818
        * Makefile.util.def (grub-mkimage): Add $(LIBLZMA).
 
819
        * configure.ac: Check for LZMA.
 
820
        * grub-core/Makefile.core.def (xz_decompress): New target.
 
821
        (none_decompress): Likewise.
 
822
        * grub-core/boot/decompressor/minilib.c: New file.
 
823
        * grub-core/boot/decompressor/none.c: Likewise.
 
824
        * grub-core/boot/decompressor/xz.c: Likewise.
 
825
        * grub-core/kern/mips/cache.S: Change to noreorder nomacro.
 
826
        * grub-core/kern/mips/cache_flush.S: Likewise.
 
827
        * grub-core/kern/i386/pc/lzma_decode.S: Remove dead code.
 
828
        * grub-core/kern/mips/startup.S: Move first stage to ...
 
829
        * grub-core/boot/mips/startup_raw.S: ...here. Change to noreorder
 
830
        nomacro.
 
831
        * grub-core/kern/mips/startup.S: Change to noreorder nomacro.
 
832
        * grub-core/lib/mips/relocator_asm.S: Change to noreorder nomacro.
 
833
        * grub-core/lib/xzembed/xz_dec_bcj.c [GRUB_EMBED_DECOMPRESSOR]:
 
834
        Allocate statically.
 
835
        * grub-core/lib/xzembed/xz_dec_lzma2.c [GRUB_EMBED_DECOMPRESSOR]:
 
836
        Allocate statically or use scratch. Don't check CRC32.
 
837
        * grub-core/lib/xzembed/xz_dec_stream.c [GRUB_EMBED_DECOMPRESSOR]:
 
838
        Allocate statically. Don't check CRC32.
 
839
        * include/grub/decompressor.h: New file.
 
840
        * include/grub/offsets.h (GRUB_KERNEL_MIPS_YEELOONG_RAW_SIZE):
 
841
        Removed.
 
842
        (GRUB_KERNEL_MIPS_YEELOONG_UNCOMPRESSED_SIZE): New field.
 
843
        (GRUB_KERNEL_MIPS_YEELOONG_TOTAL_MODULE_SIZE): Adjusted.
 
844
        (GRUB_KERNEL_MIPS_YEELOONG_PREFIX): Likewise.
 
845
        (GRUB_KERNEL_MIPS_YEELOONG_PREFIX_END): Likewise.
 
846
        (GRUB_KERNEL_MACHINE_UNCOMPRESSED_SIZE): New define.
 
847
        * util/grub-mkimage.c (grub_compression_t): New type.
 
848
        (PLATFORM_FLAGS_DECOMPRESSORS): New flag.
 
849
        (image_target_desc): New field default_compression.
 
850
        (image_targets): Adjust yeeloong targets.
 
851
        (compress_kernel_xz) [HAVE_LIBLZMA]: New function.
 
852
        (compress_kernel): New parameter comp.
 
853
        (generate_image): Likewise. Handle new compression case.
 
854
        (options): New option --compression
 
855
        (help): Likewise.
 
856
        (main): Handle new option.
 
857
 
 
858
2010-09-22  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
859
 
 
860
        * grub-core/kern/emu/hostdisk.c [__NetBSD__]: Define FLOPPY_MAJOR.
 
861
 
 
862
2010-09-22  Colin Watson  <cjwatson@ubuntu.com>
 
863
 
 
864
        * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
 
865
        typo in __i386__ conditional.
 
866
 
 
867
2010-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
868
 
 
869
        * grub-core/loader/multiboot_mbi2.c (GRUB_MACHINE_EFI): Add missing
 
870
        include.
 
871
 
 
872
2010-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
873
 
 
874
        Implement EFI and ACPI multiboot2 extensions.
 
875
 
 
876
        * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare
 
877
        new tags as supported.
 
878
        (acpiv2_size): New function.
 
879
        (grub_multiboot_get_mbi_size): Take new tags into account.
 
880
        (grub_multiboot_make_mbi): Add new tags.
 
881
        * include/grub/multiboot.h (GRUB_MACHINE_HAS_ACPI): New definition.
 
882
 
 
883
2010-09-21  Aleš Nesrsta <starous@volny.cz>
 
884
 
 
885
        * grub-core/bus/usb/serial/common.c (grub_usbserial_attach):
 
886
        Added missing configuration of USB device.
 
887
 
 
888
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
889
 
 
890
        * grub-core/normal/menu_entry.c (run): Make sure we always return
 
891
        a value.
 
892
 
 
893
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
894
 
 
895
        * grub-core/commands/efi/lsefimmap.c (grub_cmd_lsefimmap):
 
896
        NumberOfPages is UINT64 according to the UEFI specification, not
 
897
        UINTN.  Fix printf format.
 
898
 
 
899
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
900
 
 
901
        * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Change type of
 
902
        `err' to grub_usb_err_t.
 
903
        Reported and tested by: KESHAV P.R.
 
904
 
 
905
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
906
 
 
907
        * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Make
 
908
        tpart non-const, so that we can assign to it.  (Since this is a
 
909
        typedef, the constness refers to the pointer rather than what it
 
910
        points to.)
 
911
 
 
912
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
913
 
 
914
        * conf/Makefile.common (CPPFLAGS_GNULIB): Add
 
915
        $(top_srcdir)/grub-core/gnulib as well as
 
916
        $(top_builddir)/grub-core/gnulib.
 
917
        Reported by: KESHAV P.R.
 
918
 
 
919
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
920
 
 
921
        * util/grub-install.in: Fix the bootloader ID option to be
 
922
        consistently --bootloader-id, not --bootloader_id.
 
923
        Reported by: KESHAV P.R.
 
924
 
 
925
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
926
 
 
927
        * grub-core/commands/hashsum.c (GRUB_MOD_INIT): Make "Compute or
 
928
        check hash checksum." consistently translatable.
 
929
 
 
930
2010-09-21  Yves Blusseau  <blusseau@zetam.org>
 
931
 
 
932
        * conf/Makefile.common (CPPFLAGS_GNULIB): Replace $(top_srcdir) with
 
933
        $(top_builddir).
 
934
 
 
935
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
936
 
 
937
        * grub-core/commands/hashsum.c (aliases): Add sha1sum alias.
 
938
        (GRUB_MOD_INIT): Register sha1sum command.
 
939
        (GRUB_MOD_FINI): Unregister sha1sum command.
 
940
 
 
941
2010-09-21  Yves Blusseau  <blusseau@zetam.org>
 
942
 
 
943
        Keep boot and grub directory names in sync with utils scripts
 
944
 
 
945
        * configure.ac: Define GRUB_BOOT_DIR_NAME and GRUB_DIR_NAME macros.
 
946
        * config.h.in: Add previous macros.
 
947
        * include/grub/emu/misc.h (DEFAULT_DIRECTORY): Use previous macros.
 
948
        * util/grub-install.in: Use $bootdir and $grubdir variables.
 
949
 
 
950
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
951
 
 
952
        * grub-core/kern/emu/hostdisk.c (find_system_device): Only try to
 
953
        convert partition names to disk names if the new `convert' parameter
 
954
        is set.
 
955
        (grub_util_biosdisk_get_grub_dev): If opening the disk device
 
956
        returns GRUB_ERR_UNKNOWN_DEVICE, treat the partition device as a
 
957
        disk in its own right.  This can happen with Xen disk images.
 
958
 
 
959
2010-09-21  Yves Blusseau  <blusseau@zetam.org>
 
960
 
 
961
        * util/grub-editenv.c: Update strings to avoid warnings when generating
 
962
        grub.pot file.
 
963
        * util/grub-setup.c: Likewise.
 
964
 
 
965
2010-09-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
966
 
 
967
        * configure.ac: Change version to 1.99~beta0.
 
968
 
 
969
2010-09-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
970
 
 
971
        * grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
 
972
        Add BADRAM.
 
973
        * grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap):
 
974
        Likewise.
 
975
        * include/multiboot.h: Resynced with specification.
 
976
        * include/multiboot2.h: Likewise.
 
977
 
 
978
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
 
979
 
 
980
        Fix po directory handling.
 
981
 
 
982
        * configure.ac: Create po/Makefile.in rather than po/Makefile.
 
983
        * grub-core/gnulib/Makefile.am: Import gettext module.
 
984
        * m4/gnulib-cache.m4: Likewise.
 
985
        * m4/gnulib-comp.m4: Likewise.
 
986
        * m4/gettext.m4: New file, from gnulib.
 
987
        * m4/glibc2.m4: Likewise.
 
988
        * m4/iconv.m4: Likewise.
 
989
        * m4/intdiv0.m4: Likewise.
 
990
        * m4/intl.m4: Likewise.
 
991
        * m4/intldir.m4: Likewise.
 
992
        * m4/intlmacosx.m4: Likewise.
 
993
        * m4/intmax.m4: Likewise.
 
994
        * m4/inttypes-pri.m4: Likewise.
 
995
        * m4/lcmessage.m4: Likewise.
 
996
        * m4/lib-ld.m4: Likewise.
 
997
        * m4/lib-link.m4: Likewise.
 
998
        * m4/lib-prefix.m4: Likewise.
 
999
        * m4/lock.m4: Likewise.
 
1000
        * m4/nls.m4: Likewise.
 
1001
        * m4/po.m4: Likewise.
 
1002
        * m4/printf-posix.m4: Likewise.
 
1003
        * m4/progtest.m4: Likewise.
 
1004
        * m4/threadlib.m4: Likewise.
 
1005
        * m4/uintmax_t.m4: Likewise.
 
1006
        * m4/visibility.m4: Likewise.
 
1007
        * po/Makefile.am: Remove.
 
1008
        * po/Makefile.in.in: New file, from gettext.
 
1009
        ($(DOMAIN).pot-update): Support POTFILES-shell.
 
1010
        * po/Makevars: New file.
 
1011
        * po/POTFILES-shell: Rename to ...
 
1012
        * po/POTFILES-shell.in: ... this.  Update.
 
1013
        * po/POTFILES: Rename to ...
 
1014
        * po/POTFILES.in: ... this.  Update.
 
1015
        * po/Rules-quot: New file, from gettext.
 
1016
        * po/boldquot.sed: Likewise.
 
1017
        * po/en@boldquot.header: Likewise.
 
1018
        * po/en@quot.header: Likewise.
 
1019
        * po/insert-header.sin: Likewise.
 
1020
        * po/quot.sed: Likewise.
 
1021
        * po/remove-potcdate.sin: Likewise.
 
1022
 
 
1023
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1024
 
 
1025
        * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Use UUID when possible.
 
1026
 
 
1027
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1028
 
 
1029
        * util/grub.d/20_linux_xen.in: Use submenus.
 
1030
 
 
1031
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1032
 
 
1033
        Support submenus.
 
1034
 
 
1035
        * grub-core/commands/menuentry.c (grub_normal_add_menu_entry): New
 
1036
        parameter submenu. All users updated.
 
1037
        * grub-core/normal/main.c (free_menu): Rename to ...
 
1038
        (grub_normal_free_menu): ... this. Made global.
 
1039
        * grub-core/normal/menu.c (grub_menu_execute_entry): Open new context
 
1040
        if requested.
 
1041
        * grub-core/normal/menu_entry.c (screen): New field submenu.
 
1042
        (make_screen): Set submenu.
 
1043
        (run): Open new context if requested.
 
1044
        * include/grub/menu.h (grub_menu_entry): New field submenu.
 
1045
        * include/grub/normal.h (grub_normal_free_menu): New proto.
 
1046
 
 
1047
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1048
 
 
1049
        Menu entries extractor.
 
1050
 
 
1051
        * grub-core/commands/configfile.c (grub_cmd_source): Implement extractor
 
1052
        variants.
 
1053
        (GRUB_MOD_INIT): Register new variants.
 
1054
        (GRUB_MOD_FINI): Unregister new variants.
 
1055
        * grub-core/commands/legacycfg.c (grub_cmd_legacy_configfile): Merge
 
1056
        into grub_cmd_legacy_source.
 
1057
        (grub_cmd_legacy_source): Implement extractor variants.
 
1058
        (GRUB_MOD_INIT): Register new variants.
 
1059
        (GRUB_MOD_FINI): Unregister new variants.
 
1060
        * grub-core/commands/menuentry.c (grub_menu_init): Declare menuentry
 
1061
        as an extractor.
 
1062
        * grub-core/commands/search_wrap.c (GRUB_MOD_INIT): Declare
 
1063
        search as an extractor.
 
1064
        * grub-core/commands/test.c (GRUB_MOD_INIT): Declare
 
1065
        test as an extractor.
 
1066
        * grub-core/kern/corecmd.c (grub_register_core_commands): Declare set
 
1067
        as an extractor.
 
1068
        * grub-core/normal/context.c (grub_env_context_open): Reorganised.
 
1069
        (grub_env_new_context): New function.
 
1070
        (grub_env_context_open): Likewise.
 
1071
        (grub_env_extractor_open): Likewise.
 
1072
        (grub_env_extractor_close): Likewise.
 
1073
        * grub-core/script/execute.c (grub_script_execute_cmdline): Handle
 
1074
        grub_extractor_level.
 
1075
        * include/grub/command.h (GRUB_COMMAND_FLAG_EXTRACTOR): New flag.
 
1076
        * include/grub/env.h (grub_env_extractor_open): New proto.
 
1077
        (grub_env_extractor_close): Likewise.
 
1078
        * include/grub/normal.h (grub_extractor_level): New external variable.
 
1079
 
 
1080
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1081
 
 
1082
        Make cutmem accept a region specification.
 
1083
        Suggested by: Samuel Thibault
 
1084
 
 
1085
        * grub-core/mmap/mmap.c (parsemem): New function.
 
1086
        (grub_cmd_cutmem): Handle new arguments.
 
1087
 
 
1088
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1089
 
 
1090
        New command cutmem.
 
1091
 
 
1092
        * grub-core/mmap/mmap.c (grub_cmd_cutmem): New function.
 
1093
        (GRUB_MOD_INIT): Register new command.
 
1094
        (GRUB_MOD_FINI): Unregister new command.
 
1095
 
 
1096
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1097
 
 
1098
        Support some annoying BSD and Minix subpartitions.
 
1099
 
 
1100
        * Makefile.util.def (libgrub.a): Add grub-core/partmap/bsdlabel.c.
 
1101
        * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name):
 
1102
        Properly handle concatenation.
 
1103
        * grub-core/kern/device.c (grub_device_iterate): Likewise.
 
1104
        * grub-core/normal/completion.c (iterate_partition): Likewise.
 
1105
        * grub-core/kern/disk.c (grub_disk_open): Make disk->name not
 
1106
        contain partition. All users updated.
 
1107
        * grub-core/partmap/bsdlabel.c (grub_netbsdlabel_partition_map): New
 
1108
        struct.
 
1109
        (grub_openbsdlabel_partition_map): Likewise.
 
1110
        (bsdlabel_partition_map_iterate): Rename to ..
 
1111
        (iterate_real): ... this. New arguments sector, freebsd and pmap.
 
1112
        (bsdlabel_partition_map_iterate): New function.
 
1113
        (netopenbsdlabel_partition_map_iterate): Likewise.
 
1114
        (netbsdlabel_partition_map_iterate): Likewise.
 
1115
        (openbsdlabel_partition_map_iterate): Likewise.
 
1116
        (GRUB_MOD_INIT): Register new partmaps.
 
1117
        (GRUB_MOD_FINI): Unregister new partmaps.
 
1118
        * grub-core/partmap/msdos.c (pc_partition_map_iterate): Rename to ...
 
1119
        (grub_partition_msdos_iterate): ... this. All users updated.
 
1120
        Don't support embedding other than in a minix partition.
 
1121
        * include/grub/msdos_partition.h (grub_partition_msdos_iterate): New
 
1122
        proto.
 
1123
        * include/grub/partition.h (grub_partition): New field msdostype.
 
1124
        * util/grub-install.in: Handle openbsd and netbsd types being in
 
1125
        part_bsd module.
 
1126
 
 
1127
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1128
 
 
1129
        Split mdraid.mod into mdraid09.mod and mdraid1x.mod.
 
1130
 
 
1131
        * Makefile.util.def (libgrub.a): Add grub-core/disk/mdraid1x_linux.c.
 
1132
        * grub-core/Makefile.core.def (mdraid): Renamed to ...
 
1133
        (mdraid09): ... this.
 
1134
        (mdraid1x): New module.
 
1135
        * grub-core/disk/mdraid_linux.c: Move 1.x parts ...
 
1136
        * grub-core/disk/mdraid1x_linux.c: ...here. All users updated.
 
1137
 
 
1138
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1139
 
 
1140
        * grub-core/kern/emu/misc.c (asprintf): Use vsnprintf instead of
 
1141
        vsprintf.
 
1142
 
 
1143
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1144
 
 
1145
        * grub-core/commands/efi/lsefimmap.c: Correct header.
 
1146
        * NEWS: Update.
 
1147
 
 
1148
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1149
 
 
1150
        * util/grub-editenv.c (argp_parser): Don't pass translated strings
 
1151
        as printf format strings; the translations might contain '%' which
 
1152
        could cause a crash.
 
1153
        (main): Likewise.
 
1154
        * util/grub-fstest.c (argp_parser): Likewise.
 
1155
        * util/grub-setup.c (argp_parser): Likewise.
 
1156
        (main): Likewise.
 
1157
 
 
1158
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1159
 
 
1160
        Use argp in grub-fstest.
 
1161
 
 
1162
        * util/grub-fstest.c: Don't include getopt.h.
 
1163
        Include argp.h.
 
1164
        (root): New variable.
 
1165
        (args_count): Likewise.
 
1166
        (nparm): Likewise.
 
1167
        (num_disks): Likewise.
 
1168
        (images): Likewise.
 
1169
        (cmd): Likewise.
 
1170
        (debug_str): Likewise.
 
1171
        (args): Likewise.
 
1172
        (options): Transformed to argp.
 
1173
        (usage): Removed.
 
1174
        (main): Split argument parsing into ...
 
1175
        (argp_parser): ... this. Changed to argp format.
 
1176
        (argp): New variable.
 
1177
        (main): Use argp_parse.
 
1178
 
 
1179
2010-09-20  Tristan Gingold  <gingold@free.fr>
 
1180
2010-09-20  Robert Millan  <rmh.grub@aybabtu.com>
 
1181
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1182
 
 
1183
        * grub-core/commands/efi/lsefimmap.c: New file.
 
1184
        * grub-core/Makefile.core.def (lsefimmap): New module.
 
1185
        * include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): New definition.
 
1186
 
 
1187
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1188
 
 
1189
        Pause the execution (10s max) if any errors are displayed so the user
 
1190
        has a chance to see them.
 
1191
 
 
1192
        * grub-core/kern/err.c (grub_err_printed_errors): New variable.
 
1193
        (grub_print_error): Increment grub_err_printed_errors.
 
1194
        * grub-core/normal/menu.c (grub_menu_execute_entry): Pause the
 
1195
        execution if any errors were displayed.
 
1196
        (show_menu): Remove old code for pause.
 
1197
        * grub-core/normal/menu_entry.c (run): Likewise.
 
1198
        * grub-core/normal/term.c (grub_normal_char_counter): Removed. All
 
1199
        users updated.
 
1200
        (grub_normal_get_char_counter): Likewise.
 
1201
        * include/grub/err.h (grub_err_printed_errors): New external variable.
 
1202
        * include/grub/normal.h (grub_normal_get_char_counter): Removed.
 
1203
 
 
1204
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1205
 
 
1206
        Support multiboot VBE info.
 
1207
 
 
1208
        * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
 
1209
        Take VBE info into account.
 
1210
        (fill_vbe_info) [GRUB_MACHINE_HAS_VBE]: New function.
 
1211
        (retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
 
1212
        Call fill_vbe_info when appropriate.
 
1213
        (grub_multiboot_make_mbi): Account for the size occupied by VBE info.
 
1214
        * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare tags
 
1215
        as supported.
 
1216
        (grub_multiboot_get_mbi_size): Take new tags into account.
 
1217
        (fill_vbe_tag) [GRUB_MACHINE_HAS_VBE]: New function.
 
1218
        (retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
 
1219
        Call fill_vbe_tag when appropriate.
 
1220
        (grub_multiboot_make_mbi): Properly align tags.
 
1221
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_pm_interface): New
 
1222
        function.
 
1223
        * include/grub/i386/pc/vbe.h (grub_vbe_bios_get_pm_interface): New
 
1224
        proto.
 
1225
        * include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): New definition.
 
1226
 
 
1227
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1228
 
 
1229
        Suport manual terminal geometry specification.
 
1230
 
 
1231
        * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions):
 
1232
        Save state in grub_ofconsole_terminfo_output.
 
1233
        (grub_ofconsole_term): Use grub_terminfo_getwh.
 
1234
        (grub_ofconsole_getwh): Removed.
 
1235
        * grub-core/term/serial.c (grub_serial_getwh): Removed.
 
1236
        (grub_serial_term): Use grub_terminfo_getwh.
 
1237
        * grub-core/term/terminfo.c (grub_terminfo_getwh): New function.
 
1238
        (options): New struct.
 
1239
        (OPTION_*): New enum.
 
1240
        (grub_cmd_terminfo): Transform into extcmd and handle new parameters.
 
1241
        * include/grub/terminfo.h (grub_terminfo_output_state): New fields
 
1242
        width and height.
 
1243
        (grub_terminfo_getwh): New proto.
 
1244
        * grub-core/lib/legacy_parse.c (grub_legacy_parse): Handle --lines.
 
1245
 
 
1246
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1247
 
 
1248
        Handle legacy "terminal" command.
 
1249
 
 
1250
        * grub-core/lib/legacy_parse.c (legacy_command): New flags FLAG_TITLE
 
1251
        and FLAG_TERMINAL.
 
1252
        (legacy_commands): Add terminal and title.
 
1253
        (grub_legacy_parse): Handle terminal. Simplify title handling.
 
1254
 
 
1255
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1256
 
 
1257
        * grub-core/lib/arg.c (grub_arg_show_help): Correctly handle
 
1258
        parameters overflow.
 
1259
 
 
1260
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1261
 
 
1262
        * .bzrignore: Add grub-core/gnulib/sys, widthspec.bin, and
 
1263
        widthspec.h.
 
1264
 
 
1265
        * docs/grub.texi (Shell-like scripting): Document `!'.
 
1266
        (Network): Simplify using new i386-pc-pxe format.  Mention
 
1267
        grub-mknetdir.
 
1268
 
 
1269
        * NEWS: Update.
 
1270
 
 
1271
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1272
 
 
1273
        * Makefile.am (SUBDIRS): Restore "."; it's important to force
 
1274
        ordering, so that e.g. ascii.h is built before grub-core/font/font.c
 
1275
        when needed.
 
1276
 
 
1277
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1278
 
 
1279
        * grub-core/commands/efi/lsefisystab.c: Correct header.
 
1280
        * grub-core/commands/efi/lssal.c: Likewise.
 
1281
        * grub-core/commands/testload.c: Likewise.
 
1282
 
 
1283
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1284
 
 
1285
        * util/grub-mkrescue.in: Add explicit root argument to --set to
 
1286
        prevent the UUID being interpreted as an argument to --set (matches
 
1287
        previous change to prepare_grub_to_access_device).
 
1288
 
 
1289
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
 
1290
 
 
1291
        * kern/emu/hostdisk.c: Include <sys/ioctl.h> and <sys/disklabel.h>
 
1292
        on FreeBSD.  Define HAVE_DIOCGDINFO on NetBSD and FreeBSD to reduce
 
1293
        the verbosity of later #ifs.
 
1294
        (find_partition_start): Define this function on FreeBSD too.
 
1295
        (device_is_wholedisk) [__FreeBSD__ || __FreeBSD_kernel__]: New
 
1296
        function.
 
1297
        (grub_util_biosdisk_get_grub_dev): Use partition-start-sector logic
 
1298
        on FreeBSD.
 
1299
 
 
1300
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
 
1301
 
 
1302
        * util/grub-editenv.c: Use argp instead of getopt.
 
1303
 
 
1304
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
 
1305
 
 
1306
        * util/grub-setup.c: Use argp instead of getopt.
 
1307
 
 
1308
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
 
1309
 
 
1310
        Use gnulib-tool to create gnulib source files.
 
1311
 
 
1312
        * Add gnulib files generated by gnulib-tool in build-aux, m4 and
 
1313
        grub-core/gnulib directories
 
1314
        * .bzignore: Add **/.deps and autogenerated gnulib files
 
1315
        * configure.ac: Assign auxiliary directory to build-aux, add invocation
 
1316
        of gnulib macros, add grub-core/gnulib/Makefile
 
1317
        * Makefile.am: Add gnulib directory in SUBDIRS (removing unnecessary .),
 
1318
        include m4 directory to aclocal.
 
1319
        * Makefile.util.def: Remove direct compilation of gnulib source files
 
1320
        and use the new grub-core/gnulib/libgnu.a.
 
1321
        * build-aux/config.rpath: move config.rpath from top directory to
 
1322
        build-aux
 
1323
        * conf/Makefile.common: Remove the macro _GL_UNUSED already defined
 
1324
        in gnulib headers
 
1325
        * conf/Makefile.extra-dist: Add m4/gnulib-cache.m4
 
1326
        * grub-core/Makefile.core.def: Remove unnecessary extra_dist
 
1327
        * grub-core/lib/posix_wrap/localcharset.h (locale_charset): Update
 
1328
        header.
 
1329
        * grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Return static
 
1330
        string.
 
1331
 
 
1332
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
 
1333
 
 
1334
        * .bzrignore: Add grub-kbdcomp, grub-menulst2cfg, *.marker,
 
1335
        grub-core/genmod.sh and grub-core/gensyminfo.sh
 
1336
 
 
1337
2010-09-20  BVK Chaitanya  <bvk.groups@gmail.com>
 
1338
 
 
1339
        Add a test for echo command options.
 
1340
 
 
1341
        * tests/grub_cmd_echo.in: New test.
 
1342
        * Makefile.util.def: Rules for new test.
 
1343
 
 
1344
2010-09-20  Szymon Janc <szymon@janc.net.pl>
 
1345
 
 
1346
        Remove crc.mod and move crc command to hashsum.mod.
 
1347
        Remove lib/crc.c - users updated to use gcrypt implementation.
 
1348
 
 
1349
        * grub-core/commands/crc.c: Removed.
 
1350
        * grub-core/Makefile.core.def (crc): Module removed.
 
1351
        * grub-core/commands/hashsum.c (aliases[]): Add crc alias.
 
1352
        * grub-core/commands/hashsum.c (GRUB_MOD_INIT): Register crc command.
 
1353
        * grub-core/commands/hashsum.c (GRUB_MOD_FINI): Unregister crc command.
 
1354
        * grub-core/lib/crc.c: Removed.
 
1355
        * include/grub/lib/crc.h: Removed.
 
1356
        * Makefile.util.def (crc): Remove lib/crc.c
 
1357
        * grub-core/Makefile.core.def (libgrub.a): Remove grub-core/lib/crc.c.
 
1358
        * util/grub-fstest.c (cmd_crd): Use libgcrypt crc implementation.
 
1359
        * Makefile.util.def (libgrub.a): Add grub-core/lib/libgcrypt-grub/cipher/crc.c.
 
1360
        * Makefile.util.def (grub-fstest): Add CFLAGS_GCRY to cflags.
 
1361
        * Makefile.util.def (grub-fstest): Add CPPFLAGS_GCRY to cppflags.
 
1362
        * grub-core/efiemu/prepare.c (grub_efiemu_crc): Use libgcrypt crc implementation.
 
1363
 
 
1364
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
1365
 
 
1366
        * grub-core/boot/i386/pc/boot.S: Ignore %dl if it's not in a sane range.
 
1367
 
 
1368
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
1369
 
 
1370
        Split config.h for util and core.
 
1371
 
 
1372
        * acinclude.m4 (HAVE_ASM_USCORE): Transformed into a variable.
 
1373
        (ADDR32): Likewise.
 
1374
        (DATA32): Likewise.
 
1375
        (BSS_START_SYMBOL): Likewise.
 
1376
        (END_SYMBOL): Likewise.
 
1377
        (NEED_ENABLE_EXECUTE_STACK): Likewise. All users updated.
 
1378
        (grub_I386_ASM_ABSOLUTE_WITHOUT_ASTERISK): Removed.
 
1379
        * config.h.in: New file.
 
1380
        * configure.ac: Use config-util.h as config define file.
 
1381
        Rename MACHINE into GRUB_MACHINE. All users updated.
 
1382
        (NEED_REGISTER_FRAME_INFO): Transformed into a variable. All users
 
1383
        updated.
 
1384
        (NESTED_FUNC_ATTR): Likewise.
 
1385
        Substitue new variables.
 
1386
        (COND_HAVE_ASM_USCORE): New conditional.
 
1387
        * grub-core/Makefile.am (ASM_PREFIX): New variable.
 
1388
        (kernel_syms.lst): Use ASM_PREFIX.
 
1389
        * grub-core/kern/emu/console.c: Include config-util.h.
 
1390
        * grub-core/kern/emu/misc.c: Likewise.
 
1391
        * grub-core/kern/emu/mm.c: Likewise.
 
1392
        * include/grub/emu/misc.h: Likewise.
 
1393
        * include/grub/libgcc.h: Likewise.
 
1394
 
 
1395
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
1396
 
 
1397
        * grub-core/term/efi/console.c (efi_codes): Fix GRUB_TERM_KEY_*
 
1398
        constants usage.
 
1399
        * grub-core/kern/emu/console.c (grub_ncurses_getkey):
 
1400
        Fix GRUB_TERM_KEY_* constants usage.
 
1401
        * grub-core/kern/emu/misc.c (asprintf): Fix vasprintf usage.
 
1402
 
 
1403
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
1404
 
 
1405
        * grub-core/bus/usb/ohci.c (grub_ohci_cancel_transfer): Use %p to
 
1406
        print pointer.
 
1407
        * grub-core/bus/usb/uhci.c: Remove empty define.
 
1408
        (grub_uhci_check_transfer): Add missing cast.
 
1409
        * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Use %p to
 
1410
        print pointer.
 
1411
        * grub-core/term/usb_keyboard.c (grub_usb_keyboard_getkey): Use
 
1412
        PRIuGRUB_SIZE.
 
1413
        * include/grub/types.h (PRIuGRUB_SIZE): New definition.
 
1414
 
 
1415
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
1416
 
 
1417
        * grub-core/Makefile.core.def (legacycfg): Add
 
1418
        lib/i386/pc/vesa_modes_table.c on emu.
 
1419
 
 
1420
2010-09-19  BVK Chaitanya  <bvk.groups@gmail.com>
 
1421
 
 
1422
        Reduce number of temporary files generated by build system.
 
1423
 
 
1424
        * grub-core/gencmdlist.sh: Removed.
 
1425
        * grub-core/genfslist.sh: Removed.
 
1426
        * grub-core/genhandlerlist.sh: Removed.
 
1427
        * grub-core/genmodsrc.sh: Removed.
 
1428
        * grub-core/genpartmaplist.sh: Removed.
 
1429
        * grub-core/genparttoollist.sh: Removed.
 
1430
        * grub-core/gentermiinallist.sh: Removed.
 
1431
        * grub-core/genvideolist.sh: Removed.
 
1432
 
 
1433
        * grub-core/genmod.sh.in: New file.
 
1434
        * grub-core/gensyminfo.sh.in: New file.
 
1435
 
 
1436
        * conf/Makefile.common (CPPFLAGS_*_LIST): New marker flags.
 
1437
        * conf/Makefile.extra-dist: Update with new files.
 
1438
        * gentpl.py: Remove rules related to unnecessary temporary files.
 
1439
        * grub-core/Makefile.am (syminfo.lst): New replacement for def-*
 
1440
        and und-* files.
 
1441
        * grub-core/Makefile.core.def: New rules for gensyminfo.sh and
 
1442
        genmod.sh scripts.
 
1443
        * grub-core/bus/usb/uhci.c: Remove empty #define.
 
1444
        * grub-core/genmoddep.awk: Updated with new syminfo format.
 
1445
        * util/bash-completion.d/Makefile.am: Add config.log to
 
1446
        CLEANFILES.
 
1447
 
 
1448
2010-09-19  Yves Blusseau  <blusseau@zetam.org>
 
1449
 
 
1450
        * Makefile.util.def: Add forgotten $(LIBINTL) library.
 
1451
 
 
1452
2010-09-19  BVK Chaitanya  <bvk.groups@gmail.com>
 
1453
 
 
1454
        * util/grub-mkconfig.in: Check the config script for syntax errors
 
1455
        before saving.
 
1456
 
 
1457
2010-09-19  Colin Watson  <cjwatson@ubuntu.com>
 
1458
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
1459
 
 
1460
        * Makefile.util.def (grub-install): Use util/grub-install.in on all
 
1461
        platforms.
 
1462
        * util/grub-install.in: Add EFI and IEEE1275 support.
 
1463
        * util/i386/efi/grub-install.in: Removed.
 
1464
        * util/ieee1275/grub-install.in: Likewise.
 
1465
 
 
1466
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
1467
 
 
1468
        * grub-core/commands/i386/cmostest.c (+parse_args): New function.
 
1469
        (grub_cmd_cmosclean): Likewise.
 
1470
        (GRUB_MOD_INIT): Register command cmosclean.
 
1471
        * util/grub-mkconfig.in: Export GRUB_BUTTON_CMOS_CLEAN.
 
1472
        * util/grub.d/00_header.in: Handle GRUB_BUTTON_CMOS_CLEAN.
 
1473
 
 
1474
2010-09-18  Carles Pina i Estany  <carles@pina.cat>
 
1475
2010-09-18  Aleš Nesrsta <starous@volny.cz>
 
1476
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
1477
 
 
1478
        Add keyboard layouts support.
 
1479
 
 
1480
        * Makefile.util.def (grub-mklayout): New file.
 
1481
        (grub-kbdcomp): New script.
 
1482
        * grub-core/Makefile.am (KERNEL_HEADER_FILES) [COND_mips_yeeloong]:
 
1483
        Add keyboard_layouts.h.
 
1484
        * grub-core/Makefile.core.def (kernel): Add commands/keylayouts.c and
 
1485
        commands/boot.c on yeeloong.
 
1486
        (keylayouts): New module.
 
1487
        * grub-core/bus/usb/ohci.c
 
1488
        * grub-core/bus/usb/uhci.c
 
1489
        * grub-core/bus/usb/usbhub.c (rescan): New variable.
 
1490
        (grub_usb_add_hub): Poll interrupt pipe for device handling.
 
1491
        (attach_root_port): Likewise.
 
1492
        (poll_nonroot_hub): Likewise.
 
1493
        (grub_usb_poll_devices): Likewise.
 
1494
        (detach_device): Close transfer.
 
1495
        * grub-core/bus/usb/usbtrans.c (grub_usb_execute_and_wait_transfer): New
 
1496
        function.
 
1497
        (grub_usb_bulk_setup_readwrite): Likewise.
 
1498
        (grub_usb_bulk_finish_readwrite): Likewise.
 
1499
        * grub-core/commands/keylayouts.c: New file.
 
1500
        * grub-core/commands/keystatus.c (grub_getkeystatus): New function.
 
1501
        * grub-core/commands/menuentry.c (hotkey_aliases): All several new
 
1502
        aliases.
 
1503
        * grub-core/term/at_keyboard.c: Restructured to use keylayouts and
 
1504
        support scancode 2.
 
1505
        * grub-core/term/usb_keyboard.c: Restructured to use keylayouts.
 
1506
        * include/grub/keyboard_layouts.h: New file.
 
1507
        * util/grub-mklayout.c: New file.
 
1508
        * util/grub-kbdcomp.in: Likewise.
 
1509
 
 
1510
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
1511
 
 
1512
        Unify memory types.
 
1513
 
 
1514
        * grub-core/Makefile.am (KERNEL_HEADER_FILES): Include memory.h.
 
1515
        * grub-core/commands/lsmmap.c (grub_cmd_lsmmap): Output user-readable
 
1516
        types.
 
1517
        * grub-core/kern/i386/multiboot_mmap.c (grub_lower_mem): Removed.
 
1518
        (grub_upper_mem): Likewise.
 
1519
        * grub-core/kern/ieee1275/init.c (grub_upper_mem): Likewise.
 
1520
        * include/grub/memory.h (grub_memory_type_t): New enum.
 
1521
        All users updated.
 
1522
 
 
1523
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
1524
 
 
1525
        * grub-core/Makefile.core.def (lsapm): New module.
 
1526
        * grub-core/commands/i386/pc/lsapm.c: New file.
 
1527
        * grub-core/loader/i386/multiboot_mbi.c (make_mbi) [GRUB_MACHINE_PCBIOS]: Pass APM info.
 
1528
        * grub-core/loader/multiboot_mbi2.c (make_mbi) [GRUB_MACHINE_PCBIOS]:
 
1529
        Likewise.
 
1530
        * include/grub/i386/pc/apm.h: New file.
 
1531
        * include/multiboot.h (multiboot_apm_info): New struct.
 
1532
 
 
1533
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
1534
 
 
1535
        GRUB-legacy configuration file support.
 
1536
 
 
1537
        * Makefile.util.def (grub-menulst2cfg): New util.
 
1538
        * docs/man/grub-menulst2cfg.h2m: New file.
 
1539
        * grub-core/Makefile.core.def (legacycfg): New module.
 
1540
        * grub-core/commands/legacycfg.c: New file.
 
1541
        * grub-core/commands/menuentry.c (append_menu_entry): Rename to ...
 
1542
        (grub_normal_add_menu_entry): ... this.
 
1543
        * grub-core/commands/password.c (grub_cmd_password): Split main part to ...
 
1544
        (grub_normal_set_password): ...this.
 
1545
        * grub-core/commands/videoinfo.c (grub_cmd_videoinfo): Support MODE.
 
1546
        * grub-core/loader/i386/linux.c (linux_vesafb_res): Move to ..,
 
1547
        * grub-core/lib/i386/pc/vesa_modes_table.c: ... here.
 
1548
        * grub-core/lib/legacy_parse.c: New file.
 
1549
        * grub-core/normal/auth.c (grub_cmd_authenticate): New command.
 
1550
        * include/grub/i386/pc/vesa_modes_table.h: New file.
 
1551
        * include/grub/legacy_parse.h: Likewise.
 
1552
        * include/grub/normal.h (grub_normal_add_menu_entry): New proto.
 
1553
        * util/grub-menulst2cfg.c: New file.
 
1554
 
 
1555
2010-09-17  Colin Watson  <cjwatson@ubuntu.com>
 
1556
 
 
1557
        * grub-core/kern/emu/hostdisk.c
 
1558
        (convert_system_partition_to_system_disk): Initialise node.
 
1559
 
 
1560
2010-09-17  Colin Watson  <cjwatson@ubuntu.com>
 
1561
 
 
1562
        * grub-core/kern/emu/hostdisk.c
 
1563
        (convert_system_partition_to_system_disk): Fix devmapper memory pool
 
1564
        leak.
 
1565
        Reported and based on patch by: Modestas Vainius.
 
1566
 
 
1567
2010-09-17  Colin Watson  <cjwatson@ubuntu.com>
 
1568
 
 
1569
        Fix DM-RAID probing with recent versions of device-mapper udev
 
1570
        rules.
 
1571
 
 
1572
        * grub-core/kern/emu/hostdisk.c (read_device_map): Don't
 
1573
        canonicalise device paths under /dev/mapper/.
 
1574
        (convert_system_partition_to_system_disk): Compare the
 
1575
        uncanonicalised path to /dev/mapper/ rather than the canonicalised
 
1576
        path, since device nodes under /dev/mapper/ are often symlinks.
 
1577
 
 
1578
2010-09-17  Yves Blusseau  <blusseau@zetam.org>
 
1579
 
 
1580
        * .bzrignore: *.d removed (old rule), add *.image and symlist.h.
 
1581
 
 
1582
2010-09-16  Yves Blusseau  <blusseau@zetam.org>
 
1583
 
 
1584
        * configure.ac: Avoid some annoying error messages if freetype-config
 
1585
        program is not found.
 
1586
 
 
1587
2010-09-16  Colin Watson  <cjwatson@ubuntu.com>
 
1588
 
 
1589
        Support RAID on virtio devices, and others.
 
1590
 
 
1591
        * grub-core/kern/emu/getroot.c [__MINGW32__] (find_root_device):
 
1592
        Rename to ...
 
1593
        [__MINGW32__] (grub_find_device): ... this.
 
1594
        [! __MINGW32__ && ! __CYGWIN__] (find_root_device): Rename to ...
 
1595
        [! __MINGW32__ && ! __CYGWIN__] (grub_find_device): ... this.  Use a
 
1596
        reasonable default if dir is NULL.
 
1597
        [! __MINGW32__ && __CYGWIN__] (find_cygwin_root_device): Rename to
 
1598
        ...
 
1599
        [! __MINGW32__ && __CYGWIN__] (grub_find_device): ... this.
 
1600
        (grub_guess_root_device): Update callers.
 
1601
        * include/grub/emu/getroot.h (grub_find_device): Add prototype.
 
1602
 
 
1603
        * util/raid.c (grub_util_getdiskname): Remove.
 
1604
        (grub_util_raid_getmembers): Use grub_find_device rather than
 
1605
        grub_util_getdiskname.
 
1606
 
 
1607
2010-09-16  Colin Watson  <cjwatson@ubuntu.com>
 
1608
 
 
1609
        * docs/grub.texi (serial): Remove obsolete comment about GRUB
 
1610
        needing to be compiled with serial support.
 
1611
        (ls): Indicate that multiple files are accepted.
 
1612
        * grub-core/commands/ls.c (GRUB_MOD_INIT): Update help text to
 
1613
        indicate that multiple files are accepted.
 
1614
 
 
1615
2010-09-16  Colin Watson  <cjwatson@ubuntu.com>
 
1616
 
 
1617
        * .bzrignore: Add *.1, *.8, grub-shell, grub-shell-tester,
 
1618
        libgrub_a_init.c, and util/bash-completion.d/grub.
 
1619
 
 
1620
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
1621
 
 
1622
        * util/grub-setup.c (setup): Fix incorrect container semantics.
 
1623
 
 
1624
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
1625
 
 
1626
        * grub-core/commands/parttool.c (grub_cmd_parttool): Fix a variable
 
1627
        misusage.
 
1628
        Reported by: J. Nick Terry
 
1629
 
 
1630
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
1631
 
 
1632
        Move embedding routines to partmap sources files.
 
1633
 
 
1634
        * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot)
 
1635
        [GRUB_UTIL]: New variable.
 
1636
        (gpt_partition_map_iterate): Set part.parent.
 
1637
        (gpt_partition_map_embed) [GRUB_UTIL]: New function.
 
1638
        (grub_gpt_partition_map) [GRUB_UTIL]: Set .embed.
 
1639
        * grub-core/partmap/msdos.c (pc_partition_map_embed) [GRUB_UTIL]:
 
1640
        New function.
 
1641
        (grub_msdos_partition_map) [GRUB_UTIL]: Set .embed.
 
1642
        * include/grub/partition.h (grub_embed_type_t) [GRUB_UTIL]: New type.
 
1643
        (grub_partition_map) [GRUB_UTIL]: New field embed.
 
1644
        * util/grub-setup.c (grub_gpt_partition_type_bios_boot): Removed.
 
1645
        (setup): Use ->embed.
 
1646
 
 
1647
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
1648
 
 
1649
        * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): New
 
1650
        function.
 
1651
        * include/grub/emu/hostdisk.h (grub_util_biosdisk_is_floppy): New proto.
 
1652
        * util/grub-setup.c (setup): Use grub_util_biosdisk_is_floppy.
 
1653
 
 
1654
2010-09-15  Yves Blusseau  <blusseau@zetam.org>
 
1655
 
 
1656
        Add function to get completions from usage.
 
1657
 
 
1658
        * util/bash-completion.d/grub-completion.bash.in: Add function to get
 
1659
        completions from usage. Use LC_ALL=C to get options properly.
 
1660
 
 
1661
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
1662
 
 
1663
        * grub-core/gnulib/basename-lgpl.c: Imported.
 
1664
        * grub-core/gnulib/basename.c: Likewise.
 
1665
        * grub-core/gnulib/dirname-lgpl.c: Likewise.
 
1666
        * grub-core/gnulib/dirname.c: Likewise.
 
1667
        * grub-core/gnulib/dirname.h: Likewise.
 
1668
        * grub-core/gnulib/stripslash.c: Likewise.
 
1669
 
 
1670
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
1671
 
 
1672
        * grub-core/gnulib/error.c: Resynced.
 
1673
        * grub-core/gnulib/getopt.c: Likewise.
 
1674
        * grub-core/gnulib/getopt_int.h: Likewise.
 
1675
        * grub-core/gnulib/regex.h: Likewise.
 
1676
        * grub-core/gnulib/regex_internal.c: Likewise.
 
1677
        * grub-core/gnulib/regex_internal.h: Likewise.
 
1678
 
 
1679
2010-09-15  Szymon Janc <szymon@janc.net.pl>
 
1680
 
 
1681
        * grub-core/lib/xzembed/xz_dec_stream.c (dec_main): Fix index and block
 
1682
        CRC calculations and validity checks.
 
1683
        * grub-core/lib/xzembed/xz_dec_stream.c (dec_index): Fix index CRC
 
1684
        calculations.
 
1685
 
 
1686
2010-09-15  Szymon Janc <szymon@janc.net.pl>
 
1687
 
 
1688
        * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_end): Fix memory leak.
 
1689
 
 
1690
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1691
 
 
1692
        Fix incorrect echo options handling.
 
1693
        Reported by: Yves Blusseau.
 
1694
 
 
1695
        * include/grub/command.h (grub_command_flags_t): New flags
 
1696
        GRUB_COMMAND_ACCEPT_DASH and GRUB_COMMAND_OPTIONS_AT_START.
 
1697
        * grub-core/lib/arg.c (grub_arg_parse): Handle new flags.
 
1698
        * grub-core/commands/echo.c (GRUB_MOD_INIT): Use new flags.
 
1699
 
 
1700
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1701
 
 
1702
        * include/grub/command.h (GRUB_COMMAND_FLAG_CMDLINE): Removed. All
 
1703
        users updated.
 
1704
        (GRUB_COMMAND_FLAG_MENU): Likewise.
 
1705
        (GRUB_COMMAND_FLAG_BOTH): Likewise.
 
1706
        (GRUB_COMMAND_FLAG_TITLE): Removed.
 
1707
        (GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
 
1708
        (GRUB_COMMAND_FLAG_EXTCMD): Moved into enum.
 
1709
        (GRUB_COMMAND_FLAG_DYNCMD): Likewise.
 
1710
        (GRUB_COMMAND_FLAG_BLOCKS): Likewise.
 
1711
        (grub_command_flags_t): New enum. All users updated.
 
1712
 
 
1713
2010-09-14  Seth Goldberg <seth.goldberg@oracle.com>
 
1714
 
 
1715
        Fix solaris compilation.
 
1716
 
 
1717
        * grub-core/Makefile.core.def (kernel): Include gnulib/error.c on emu.
 
1718
        (grub-emu): Add LIBZFS and LIBNVPAIR to ldadd.
 
1719
        (grub-emu-list): Likewise.
 
1720
 
 
1721
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1722
 
 
1723
        Remove deprecated root command.
 
1724
 
 
1725
        * grub-core/commands/minicmd.c (grub_mini_cmd_root): Removed. All users
 
1726
        updated.
 
1727
 
 
1728
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1729
 
 
1730
        * util/i386/pc/grub-setup.c: Merge this ...
 
1731
        * util/sparc64/ieee1275/grub-setup.c:  ... and this ...
 
1732
        * util/grub-setup.c: ... into this.
 
1733
        * include/grub/sparc64/ieee1275/boot.h (grub_boot_blocklist) [ASM_FILE]:
 
1734
        New struct.
 
1735
 
 
1736
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1737
 
 
1738
        * grub-core/fs/ext2.c (grub_ext2_open): Use return error value when
 
1739
        possible.
 
1740
 
 
1741
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1742
 
 
1743
        * grub-core/partmap/sun.c (sun_partition_map_iterate): Don't needlesly
 
1744
        allocate p.
 
1745
 
 
1746
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1747
 
 
1748
        * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add
 
1749
        explicit root argument to set to prevent UUID to be interpreted as
 
1750
        argument to set.
 
1751
 
 
1752
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1753
 
 
1754
        * grub-core/kern/sparc64/ieee1275/crt0.S: Align stack.
 
1755
 
 
1756
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1757
 
 
1758
        Don't export grub_gate_a20.
 
1759
 
 
1760
        * grub-core/kern/i386/pc/init.c: Remove leftovers.
 
1761
        * grub-core/kern/i386/pc/startup.S (FUNCTION(grub_gate_a20)): Rename
 
1762
        to ...
 
1763
        (grub_gate_a20): ... this. All users updated.
 
1764
        * include/grub/i386/pc/init.h: Removed. All users updated.
 
1765
 
 
1766
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1767
 
 
1768
        Create euro.pf2 which supports most European languages.
 
1769
 
 
1770
        * Makefile.am (grubdata_DATA): Add euro.pf2.
 
1771
        (euro.pf2): New target.
 
1772
        (CLEANFILES): Add euro.pf2.
 
1773
 
 
1774
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
1775
 
 
1776
        * configure.ac: Disable emu-usb by default to prevent inadvertent
 
1777
        device takeover.
 
1778
 
 
1779
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1780
 
 
1781
        Disable usbserial on grub-emu since our libusb code isn't good enough
 
1782
        yet.
 
1783
 
 
1784
        * grub-core/Makefile.core.def (usbserial_common): Disable on emu.
 
1785
        (usbserial_pl2303): Likewise.
 
1786
        (usbserial_ftdi): Likewise.
 
1787
 
 
1788
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1789
 
 
1790
        * include/grub/disk.h (grub_disk): Remove has_partitions.
 
1791
        All users updated.
 
1792
        * disk/loopback.c (grub_loopback): Remove has_partitions.
 
1793
        All users updated.
 
1794
        (options): Remove partitions. All users updated.
 
1795
        * util/grub-fstest.c (fstest): Don't pass "-p" to loopback.
 
1796
        * util/i386/pc/grub-setup.c (setup): copy partition table only when
 
1797
        actual partition table is found.
 
1798
 
 
1799
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1800
 
 
1801
        Remove readability checks (too many false negatives).
 
1802
 
 
1803
        * util/grub-install.in: Remove readability checks.
 
1804
        * util/grub-mkconfig.in: Likewise.
 
1805
        * util/grub.d/10_hurd.in: Likewise.
 
1806
        * util/grub.d/10_kfreebsd.in: Likewise.
 
1807
        * util/grub.d/10_linux.in: Likewise.
 
1808
        * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Revert to old
 
1809
        way.
 
1810
 
 
1811
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1812
 
 
1813
        Enable acpi shutdown on all ACPI platforms.
 
1814
 
 
1815
        * grub-core/Makefile.core.def (halt): Inlude commands/acpihalt.c
 
1816
        on coreboo, multiboot and EFI.
 
1817
        * grub-core/commands/acpihalt.c (get_sleep_type): Add missing casts.
 
1818
        (grub_acpi_halt): Likewise.
 
1819
        * grub-core/commands/i386/pc/halt.c (grub_halt): Call grub_acpi_halt.
 
1820
        (grub_cmd_halt): Don't call grub_acpi_halt directly.
 
1821
        * grub-core/lib/efi/halt.c (grub_halt): Call grub_acpi_halt.
 
1822
        * grub-core/lib/i386/halt.c (grub_halt)
 
1823
        [GRUB_MACHINE_COREBOOT || GRUB_MACHINE_MULTIBOOT]: Likewise.
 
1824
 
 
1825
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1826
 
 
1827
        * grub-core/commands/iorw.c (grub_cmd_read): Declare buf in smallest
 
1828
        context.
 
1829
 
 
1830
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1831
 
 
1832
        * grub-core/video/efi_gop.c: Fix over-80-chars line.
 
1833
        * grub-core/video/efi_uga.c: Likewise.
 
1834
 
 
1835
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1836
 
 
1837
        Filter devaliases and never open same device twice.
 
1838
 
 
1839
        * grub-core/disk/ieee1275/ofdisk.c (last_devpath): New variable.
 
1840
        (last_ihandle): Likewise.
 
1841
        (ofdisk_hash_ent): New member shortest.
 
1842
        (ofdisk_hash_add): Add canonical path too.
 
1843
        (scan): New function.
 
1844
        (grub_ofdisk_iterate): Iterate over hashed entries.
 
1845
        (compute_dev_path): Don't add :0.
 
1846
        (grub_ofdisk_open): Don't really open the disk.
 
1847
        (grub_ofdisk_close): Avoid closing unrelated disk.
 
1848
        (grub_ofdisk_read): Implement reopen logic.
 
1849
        * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_canonicalise_devname):
 
1850
        New function.
 
1851
        * include/grub/ieee1275/ieee1275.h (grub_ieee1275_canonicalise_devname):
 
1852
        New proto.
 
1853
 
 
1854
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1855
 
 
1856
        Fix sparc64.
 
1857
 
 
1858
        * configure.ac (GRUB_KERNEL_MACHINE_LINK_ADDR): Removed.
 
1859
        * grub-core/Makefile.core.def (kernel): Make ldflags just use the
 
1860
        right address. Add sparc64_ieee1275_ldflags.
 
1861
        * grub-core/loader/sparc64/ieee1275/linux.c: Remove leftover include.
 
1862
        * util/grub-mkimagexx.c (locate_sections): Correct grub_host_to_target32
 
1863
        to grub_host_to_target_addr
 
1864
        (load_image): Likewise.
 
1865
 
 
1866
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1867
 
 
1868
        * grub-core/normal/completion.c (complete_file): Handle device
 
1869
        containing slash.
 
1870
        Fix based on patch by Doug Nazar.
 
1871
 
 
1872
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1873
 
 
1874
        grub-mknetdir script.
 
1875
 
 
1876
        * Makefile.util.def (grub-mknetdir): New module.
 
1877
        * tests/util/grub-shell.in: Support boot=net
 
1878
        * util/grub-mknetdir.in: New file.
 
1879
 
 
1880
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1881
 
 
1882
        videoinfo on non-vbe.
 
1883
 
 
1884
        * grub-core/Makefile.core.def (vbeinfo): Removed.
 
1885
        (vbetest): Removed.
 
1886
        (videoinfo): New module.
 
1887
        * grub-core/commands/i386/pc/vbeinfo.c: Removed.
 
1888
        * grub-core/commands/i386/pc/vbetest.c: Removed.
 
1889
        * grub-core/commands/videoinfo.c: New file.
 
1890
        * grub-core/commands/videotest.c (grub_cmd_videotest): Support mode
 
1891
        specification.
 
1892
        (grub_cmd_videotest) [GRUB_MACHINE_PCBIOS]: Load vbe.mod when invoked
 
1893
        as vbetest.
 
1894
        (GRUB_MOD_INIT) [GRUB_MACHINE_PCBIOS]: New command vbetest.
 
1895
        (GRUB_MOD_FINI) [GRUB_MACHINE_PCBIOS]: Unregister vbetest.
 
1896
        * grub-core/video/efi_gop.c (grub_video_gop_fill_mode_info): Fill
 
1897
        mode_number. New parameter mode. All users updated.
 
1898
        (grub_video_gop_iterate): New function.
 
1899
        (grub_video_efi_gop): New member iterate.
 
1900
        * grub-core/video/i386/pc/vbe.c (framebuffer): Removed leftover fields.
 
1901
        (grub_vbe_set_video_mode): Remove setting useless fields.
 
1902
        (vbe2videoinfo): New function.
 
1903
        (grub_video_vbe_iterate): Likewise.
 
1904
        (grub_video_vbe_setup): Use vbe2videoinfo.
 
1905
        (grub_video_vbe_print_adapter_specific_info): New function.
 
1906
        (grub_video_vbe_adapter): New fields iterate and
 
1907
        print_adapter_specific_info.
 
1908
        * include/grub/video.h (GRUB_VIDEO_MODE_*): Transform into enum.
 
1909
        All users updated.
 
1910
        (grub_video_mode_info): New field mode_number.
 
1911
        (grub_video_adapter): New fields iterate and
 
1912
        print_adapter_specific_info.
 
1913
 
 
1914
2010-09-13  Tristan Gingold  <gingold@free.fr>
 
1915
2010-09-13  Robert Millan  <rmh.grub@aybabtu.com>
 
1916
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1917
 
 
1918
        * grub-core/commands/efi/lsefisystab.c: New file.
 
1919
        * grub-core/commands/efi/lssal.c: Likewise.
 
1920
        * grub-core/Makefile.core.def (lsacpi): New module.
 
1921
        (lsefisystab): Likewise.
 
1922
        * include/grub/efi/api.h (GRUB_EFI_SAL_TABLE_GUID): New definition.
 
1923
        (GRUB_EFI_HCDP_TABLE_GUID): Likewise.
 
1924
        (grub_efi_sal_system_table): New struct.
 
1925
        (grub_efi_sal_system_table_entrypoint_descriptor): Likewise.
 
1926
        (grub_efi_sal_system_table_memory_descriptor): Likewise.
 
1927
        (grub_efi_sal_system_table_platform_features): Likewise.
 
1928
        (grub_efi_sal_system_table_translation_register_descriptor): Likewise.
 
1929
        (grub_efi_sal_system_table_purge_translation_coherence): Likewise.
 
1930
        (grub_efi_sal_system_table_ap_wakeup): Likewise.
 
1931
        * include/grub/types.h (PRIuGRUB_UINT64_T): New definition.
 
1932
 
 
1933
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1934
 
 
1935
        Support explicit user claim that a device is BIOS-visible.
 
1936
 
 
1937
        * grub-core/kern/emu/getroot.c (grub_util_get_dev_abstraction):
 
1938
        Return GRUB_DEV_ABSTRACTION_NONE if device is in device.map.
 
1939
        * grub-core/kern/emu/hostdisk.c
 
1940
        (convert_system_partition_to_system_disk): Support mdX.
 
1941
        (find_system_device): New parameter add. All users updated.
 
1942
        (grub_util_biosdisk_is_present): New function.
 
1943
        * include/grub/emu/hostdisk.h (grub_util_biosdisk_is_present): New
 
1944
        proto.
 
1945
 
 
1946
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
1947
 
 
1948
        Search hints support.
 
1949
 
 
1950
        * commands/search.c (FUNC_NAME): New arguments hints and nhints.
 
1951
        All users updated.
 
1952
 
 
1953
2010-09-13  Yves Blusseau  <blusseau@zetam.org>
 
1954
 
 
1955
        Bash completion script for util commands
 
1956
 
 
1957
        * Makefile.am:  Add util/bash-completion.d directory
 
1958
        * configure.ac: Likewise.
 
1959
        * util/bash-completion.d/Makefile.am: New file.
 
1960
        * util/bash-completion.d/grub-completion.bash.in: Likewise.
 
1961
 
 
1962
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1963
 
 
1964
        * grub-core/normal/term.c (put_glyphs_terminal): Correct sign.
 
1965
        (print_backlog): set backlog_ucs4 and backlog_glyphs.
 
1966
        Reported by: Yves Blusseau.
 
1967
 
 
1968
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1969
 
 
1970
        * grub-core/normal/misc.c (grub_normal_print_device_info): Show
 
1971
        partition size and offset.
 
1972
 
 
1973
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1974
 
 
1975
        * grub-core/commands/wildcard.c (make_regex): Escape brackets.
 
1976
 
 
1977
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1978
 
 
1979
        * grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files.
 
1980
 
 
1981
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1982
 
 
1983
        * grub-core/kern/misc.c (grub_vprintf): Use va_copy when necessary.
 
1984
        (grub_xvasprintf): Likewise.
 
1985
 
 
1986
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1987
 
 
1988
        * grub-core/kern/emu/main.c (main): Call hostfs_init only after init_all.
 
1989
 
 
1990
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1991
 
 
1992
        * grub-core/commands/menuentry.c (append_menu_entry): Don't rely on
 
1993
        args ending with NULL.
 
1994
 
 
1995
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
1996
 
 
1997
        * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_reset): Preserve context
 
1998
        pointer.
 
1999
 
 
2000
2010-09-11  Szymon Janc <szymon@janc.net.pl>
 
2001
 
 
2002
        * grub-core/commands/lsacpi.c (grub_cmd_lsacpi): Fix prototype.
 
2003
 
 
2004
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
2005
 
 
2006
        Shutdown using ACPI.
 
2007
 
 
2008
        * grub-core/Makefile.core.def (halt): Add commands/acpihalt.c on i386-pc.
 
2009
        * grub-core/commands/acpihalt.c: New file.
 
2010
        * grub-core/commands/i386/pc/halt.c (grub_cmd_halt): Call grub_acpi_halt.
 
2011
        * include/grub/acpi.h (grub_acpi_fadt): New member pm1a.
 
2012
        (grub_acpi_halt): New proto.
 
2013
        (GRUB_ACPI_SLP_EN): New const.
 
2014
        (GRUB_ACPI_SLP_TYP_OFFSET): Likewise.
 
2015
        (GRUB_ACPI_OPCODE_*): New enum.
 
2016
        (GRUB_ACPI_EXTOPCODE_*): Likewise.
 
2017
 
 
2018
2010-09-11  Tristan Gingold  <gingold@free.fr>
 
2019
2010-09-11  Robert Millan  <rmh.grub@aybabtu.com>
 
2020
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
2021
 
 
2022
        * commands/lsacpi.c: New file.
 
2023
        * grub-core/Makefile.core.def (lsacpi): New module.
 
2024
        * include/grub/acpi.h (GRUB_ACPI_FADT_SIGNATURE): New definition.
 
2025
        (GRUB_ACPI_MADT_SIGNATURE): Likewise.
 
2026
        (grub_acpi_madt_entry_header): New struct.
 
2027
        (grub_acpi_madt): Likewise.
 
2028
        (grub_acpi_madt_entry_interrupt_override): Likewise.
 
2029
        (grub_acpi_madt_entry_sapic): Likewise.
 
2030
        (grub_acpi_madt_entry_lsapic): Likewise.
 
2031
        (grub_acpi_madt_entry_platform_int_source): Likewise.
 
2032
        * include/grub/types.h (PRIxGRUB_UINT32_T): New definition.
 
2033
        (PRIuGRUB_UINT32_T): Likewise.
 
2034
        (PRIxGRUB_UINT64_T): Likewise.
 
2035
 
 
2036
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
2037
 
 
2038
        Implement loading palette on ieee1275_fb.
 
2039
 
 
2040
        * grub-core/video/ieee1275.c (stdout_ihandle): New variable.
 
2041
        (have_setcolors): Likewise.
 
2042
        (grub_video_ieee1275_init): Fill stdout_ihandle and have_setcolors.
 
2043
        (grub_video_ieee1275_setup): Use grub_video_ieee1275_set_palette.
 
2044
        (grub_video_ieee1275_set_palette): Implement.
 
2045
 
 
2046
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
2047
2010-09-11  Colin Watson  <cjwatson@ubuntu.com>
 
2048
 
 
2049
        * util/grub-install.in (grub_partition): New variable.
 
2050
        Set prefix_drive on EFI and PC to (,$grub_partition) as last resort.
 
2051
        * util/i386/pc/grub-setup.c (setup): Don't touch prefix.
 
2052
        Fixes a bug reported by Yves Blusseau.
 
2053
 
 
2054
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
2055
 
 
2056
        Fix emu on mipsel.
 
2057
 
 
2058
        * conf/Makefile.common (CFLAGS_PLATFORM): Add -mflush-func
 
2059
        =grub_cpu_flush_cache on all mips and not only yeeloong.
 
2060
        * configure.ac (COND_mips): New conditional.
 
2061
        * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add libgcc on all
 
2062
        platforms.
 
2063
        * grub-core/kern/emu/cache.S (__mips__): Use _flush_cache.
 
2064
        * grub-core/kern/emu/full.c (grub_arch_dl_init_linker)
 
2065
        [GRUB_LINKER_HAVE_INIT]: New function.
 
2066
        (grub_emu_post_init): Likewise.
 
2067
        * grub-core/kern/emu/lite.c (grub_emu_post_init): Likewise.
 
2068
        * grub-core/kern/emu/main.c: Use grub_emu_post_init.
 
2069
        * include/grub/cache.h (_mips): Include mips/cache.h.
 
2070
        * include/grub/disk.h [GRUB_UTIL || GRUB_MACHINE_EMU]: Add missing
 
2071
        LVM and RAID prototypes.
 
2072
        * include/grub/emu/misc.h (grub_emu_post_init): New proto.
 
2073
        * include/grub/mips/time.h (grub_cpu_idle) [GRUB_MACHINE_EMU]: New
 
2074
        function.
 
2075
 
 
2076
2010-09-10  Colin Watson  <cjwatson@ubuntu.com>
 
2077
 
 
2078
        * util/grub-install.in: Don't try to verify core.img until after
 
2079
        running grub-mkimage to create it.
 
2080
 
 
2081
2010-09-10  Robert Millan  <rmh@gnu.org>
 
2082
 
 
2083
        * util/grub.d/10_hurd.in: Add misc readability checks.
 
2084
        * util/grub.d/10_kfreebsd.in: Likewise.
 
2085
        * util/grub.d/10_linux.in: Likewise.
 
2086
 
 
2087
2010-09-10  Colin Watson  <cjwatson@ubuntu.com>
 
2088
 
 
2089
        * util/grub-install.in: ${imgext} won't be defined here until the
 
2090
        install branch is merged.  For the meantime, only verify core.img on
 
2091
        i386-pc and sparc64-ieee1275 platforms.
 
2092
 
 
2093
2010-09-10  Robert Millan  <rmh@gnu.org>
 
2094
 
 
2095
        Solaris support in grub_find_zpool_from_dir().  Thanks
 
2096
        Seth Goldberg for referring to getextmntent() facility.
 
2097
 
 
2098
        * configure.ac: Check for getextmntent(), `sys/mnttab.h' and
 
2099
        `sys/mkdev.h'.
 
2100
        * grub-core/kern/emu/misc.c [HAVE_SYS_MNTTAB_H]: Include
 
2101
        `<sys/mnttab.h>'.
 
2102
        [HAVE_SYS_MKDEV_H]: Include `<sys/mkdev.h>'.
 
2103
        [HAVE_GETEXTMNTENT] (grub_find_zpool_from_dir): Add getextmntent()
 
2104
        method for finding zpool name.
 
2105
 
 
2106
2010-09-10  Colin Watson  <cjwatson@ubuntu.com>
 
2107
 
 
2108
        grub-fstest needs the host and hostfs modules while other utilities
 
2109
        actively require those modules to be absent, so grub-fstest needs
 
2110
        its own initialisation and finalisation code.
 
2111
 
 
2112
        * Makefile.am (grub_fstest.pp): New target.
 
2113
        (grub_fstest_init.lst): Likewise.
 
2114
        (grub_fstest_init.c): Likewise.
 
2115
        * Makefile.util.def (grub-fstest): Add grub_fstest_init.c.
 
2116
 
 
2117
2010-09-10  Robert Millan  <rmh@gnu.org>
 
2118
 
 
2119
        * configure.ac: Check for `struct statfs.f_fstypename' and
 
2120
        `struct statfs.f_mntfromname'.
 
2121
 
 
2122
        * grub-core/kern/emu/misc.c (grub_find_zpool_from_dir): Conditionalize
 
2123
        kFreeBSD-specific code.
 
2124
 
 
2125
2010-09-10  Robert Millan  <rmh@gnu.org>
 
2126
 
 
2127
        * util/grub.d/10_kfreebsd.in: Fix ${kfreebsd_device} initialization
 
2128
        on ZFS.  Now non-main filesystems are supported as / too.
 
2129
 
 
2130
2010-09-09  Colin Watson  <cjwatson@ubuntu.com>
 
2131
 
 
2132
        * Makefile.util.def (libgrub.a): Move grub-core/kern/emu/hostfs.c
 
2133
        and grub-core/disk/host.c to ...
 
2134
        (grub-fstest): ... here.  Having the host disk implementation
 
2135
        present confuses grub-probe and other utility programs.
 
2136
 
 
2137
        * util/grub-mkconfig.in: Only verify readability of grub.cfg.new
 
2138
        when writing to a file, not when writing to stdout.
 
2139
 
 
2140
2010-09-09  BVK Chaitanya  <bvk.groups@gmail.com>
 
2141
 
 
2142
        * tests/partmap_test.in: New test for partitions.
 
2143
        * Makefile.util.def: Rules for new test.
 
2144
 
 
2145
2010-09-09  Robert Millan  <rmh@gnu.org>
 
2146
 
 
2147
        * util/grub-probe.c (probe): Fix a pair of unhandled error
 
2148
        conditions.
 
2149
 
 
2150
2010-09-09  Robert Millan  <rmh@gnu.org>
 
2151
 
 
2152
        Basic Btrfs support (detection and UUID).
 
2153
 
 
2154
        * grub-core/fs/btrfs.c: New file.
 
2155
        * Makefile.util.def (library): Register btrfs.c.
 
2156
        * grub-core/Makefile.core.def: Likewise.
 
2157
 
 
2158
2010-09-08  Robert Millan  <rmh@gnu.org>
 
2159
 
 
2160
        * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Improve
 
2161
        with (optional) parameters to specify device and relative path.
 
2162
        * util/grub-install.in: Use is_path_readable_by_grub() to
 
2163
        verify readability of a few critical files.
 
2164
        * util/grub-mkconfig.in: Use is_path_readable_by_grub() to
 
2165
        verify readability of grub.cfg.new.
 
2166
 
 
2167
2010-09-08  Vladimir Serbinenko  <phcoder@gmail.com>
 
2168
 
 
2169
        Split minix.mod into minix.mod and minix2.mod.
 
2170
 
 
2171
        * Makefile.util.def (libgrub.a): Add grub-core/fs/minix2.c.
 
2172
        * grub-core/Makefile.core.def (minix2): New module.
 
2173
        * grub-core/fs/minix.c: Use definitions instead of runtime version
 
2174
        checking.
 
2175
        * grub-core/fs/minix2.c: New file.
 
2176
 
 
2177
2010-09-08  Yves Blusseau  <blusseau@zetam.org>
 
2178
 
 
2179
        Add new --boot-directory option to replace --root-directory
 
2180
 
 
2181
        * util/grub-install.in: Add new --boot-directory option
 
2182
        * util/grub-reboot.in: Likewise.
 
2183
        * util/grub-set-default.in: Likewise.
 
2184
 
 
2185
2010-09-08  Yves Blusseau  <blusseau@zetam.org>
 
2186
 
 
2187
        * util/grub-mkconfig.in: Use new variable.
 
2188
 
 
2189
2010-09-08  Yves Blusseau  <blusseau@zetam.org>
 
2190
 
 
2191
        * configure.ac: Define some useful variables.
 
2192
 
 
2193
2010-09-08  Vladimir Serbinenko  <phcoder@gmail.com>
 
2194
 
 
2195
        * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
 
2196
        GRUB_IEEE1275_FLAG_HAS_CURSORONOFF when appropriate.
 
2197
        * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_setcursor):
 
2198
        Use terminfo and don't use cursor-on/cursor-off unless it's known
 
2199
        to work.
 
2200
        * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New element
 
2201
        GRUB_IEEE1275_FLAG_HAS_CURSORONOFF.
 
2202
 
 
2203
2010-09-08  Colin Watson  <cjwatson@ubuntu.com>
 
2204
 
 
2205
        * grub-core/kern/efi/init.c (grub_efi_set_prefix): If the prefix
 
2206
        starts with "(,", fill the drive containing the loaded image in
 
2207
        between those two characters, but expect that a full partition
 
2208
        specification including partition map names will follow.
 
2209
 
 
2210
2010-09-08  Robert Millan  <rmh@gnu.org>
 
2211
 
 
2212
        * configure.ac: Remove `--enable-grub-fstest' option.
 
2213
        * Makefile.util.def (grub-fstest): Remove COND_GRUB_FSTEST condition.
 
2214
 
 
2215
        * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Use
 
2216
        `grub-fstest' instead of `grub-probe' for readability verification.
 
2217
        * util/grub-probe.c (probe): Remove readability verification kludge.
 
2218
 
 
2219
2010-09-08  Robert Millan  <rmh@gnu.org>
 
2220
 
 
2221
        * util/grub-mkconfig.in: Pass `--device ${GRUB_DEVICE}' when
 
2222
        initializing `GRUB_FS'.
 
2223
 
 
2224
2010-09-08  BVK Chaitanya  <bvk.groups@gmail.com>
 
2225
 
 
2226
        Not command (!) support to GRUB script.
 
2227
 
 
2228
        * tests/grub_script_not.in: New test.
 
2229
        * Makefile.util.def: Rules for new test.
 
2230
 
 
2231
        * grub-core/script/execute.c (grub_script_execute_cmdline): Handle
 
2232
        ! command as a special case.
 
2233
        * grub-core/script/yylex.l (GRUB_PARSER_TOKEN_NOT): Removed.
 
2234
 
 
2235
2010-09-07  BVK Chaitanya  <bvk.groups@gmail.com>
 
2236
 
 
2237
        * grub-core/commands/wildcard.c (wildcard_expand): Fix wrong
 
2238
        grub_free.
 
2239
 
 
2240
2010-09-07  BVK Chaitanya  <bvk.groups@gmail.com>
 
2241
 
 
2242
        * docs/grub.texi (Shell-like scripting): Fix @dots to @dots{}.
 
2243
 
 
2244
2010-09-07  BVK Chaitanya  <bvk.groups@gmail.com>
 
2245
 
 
2246
        * docs/grub.texi (Shell-like scripting): Documentation for break,
 
2247
        continue, shift and return commands.
 
2248
 
 
2249
2010-09-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
2250
 
 
2251
        Rename CD-ROM to cd on BIOS.
 
2252
 
 
2253
        * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_drive): Recognise
 
2254
        "cd".
 
2255
        (grub_biosdisk_call_hook): Call with "cd" instead of arbitrary hdX.
 
2256
 
 
2257
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2258
 
 
2259
        * grub-core/kern/emu/main.c (main): Reinit LVM and RAID.
 
2260
        * util/grub-probe.c (main): Likewise.
 
2261
        * util/i386/pc/grub-setup.c (main): Likewise.
 
2262
        * util/sparc64/ieee1275/grub-setup.c (main): Likewise.
 
2263
        Reported and debugged by: alexxy
 
2264
 
 
2265
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2266
 
 
2267
        * grub-core/disk/lvm.c (grub_lvm_scan_device) [GRUB_UTIL]: Output more
 
2268
        diagnostic info.
 
2269
 
 
2270
2010-09-05  Jo Shields <directhex@apebox.org>
 
2271
 
 
2272
        * util/grub.d/30_os-prober.in: Add missing classes.
 
2273
 
 
2274
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2275
 
 
2276
        * docs/grub.texi (Theme file format): Document new position format.
 
2277
 
 
2278
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2279
 
 
2280
        * docs/grub.texi (Theme file format): Replace Box_slice_names.png with
 
2281
        a table. Use @code instead of @verbatim.
 
2282
 
 
2283
2010-09-05  Colin D Bennett  <colin@gibibit.com>
 
2284
 
 
2285
        Gfxmenu documentation.
 
2286
 
 
2287
        * docs/grub.texi (Theme file format): New chapter.
 
2288
 
 
2289
2010-09-05  Szymon Janc <szymon@janc.net.pl>
 
2290
 
 
2291
        * grub-core/Makefile.core.def (xzio): New module.
 
2292
        * grub-core/io/xzio.c: New file.
 
2293
        * grub-core/lib/xzembed/xz.h: New file (from xembed).
 
2294
        * grub-core/lib/xzembed/xz_config.h: Likewise.
 
2295
        * grub-core/lib/xzembed/xz_dec_bcj.c: Likewise.
 
2296
        * grub-core/lib/xzembed/xz_dec_lzma2.c: Likewise.
 
2297
        * grub-core/lib/xzembed/xz_dec_stream.c: Likewise.
 
2298
        * grub-core/lib/xzembed/xz_lzma2.h: Likewise.
 
2299
        * grub-core/lib/xzembed/xz_private.h: Likewise.
 
2300
        * grub-core/lib/xzembed/xz_stream.h: Likewise.
 
2301
        * include/grub/file.h (grub_file_filter_id): New compression filter
 
2302
        GRUB_FILE_FILTER_XZIO.
 
2303
 
 
2304
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2305
 
 
2306
        * include/grub/file.h (GRUB_FILE_SIZE_UNKNOWN): New definition.
 
2307
        * grub-core/disk/loopback.c (grub_loopback_open): Handle unknown file
 
2308
        size.
 
2309
 
 
2310
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2311
 
 
2312
        * include/grub/err.h (grub_err_t): Replace GRUB_ERR_BAD_GZIP_DATA with
 
2313
        GRUB_ERR_BAD_COMPRESSED_DATA. All users updated.
 
2314
 
 
2315
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2316
 
 
2317
        Uncompressed checksum support.
 
2318
 
 
2319
        * grub-core/commands/hashsum.c (options): Add option --uncompress.
 
2320
        (check_list): New parameter uncompress.
 
2321
        (grub_cmd_hashsum): Handle --uncompress.
 
2322
 
 
2323
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2324
 
 
2325
        Reintroduce testload.
 
2326
 
 
2327
        * grub-core/commands/minicmd.c (grub_rescue_cmd_testload) [0]: Moved
 
2328
        from here ...
 
2329
        * grub-core/commands/testload.c (grub_cmd_testload): ... here.
 
2330
        (GRUB_MOD_INIT): New function.
 
2331
        (GRUB_MOD_FINI): Likewise.
 
2332
        * grub-core/Makefile.core.def (testload): New module.
 
2333
 
 
2334
2010-09-05  Szymon Janc <szymon@janc.net.pl>
 
2335
 
 
2336
        * grub-core/lib/posix_wrap/sys/types.h (bool): Transform into an enum.
 
2337
        (uint8_t): New type.
 
2338
        (uint16_t): Likewise.
 
2339
        (uint32_t): Likewise.
 
2340
        (uint64_t): Likewise.
 
2341
 
 
2342
2010-09-05  Szymon Janc <szymon@janc.net.pl>
 
2343
 
 
2344
        * include/grub/crypto.h (GRUB_MD_CRC32): New definition.
 
2345
 
 
2346
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
2347
 
 
2348
        * grub-core/io/gzio.c (grub_gzio_open): Removed "transparent" parameter.
 
2349
        Made static.
 
2350
        (grub_gzfile_open): Removed. All users updated.
 
2351
        (GRUB_MOD_INIT): New function.
 
2352
        (GRUB_MOD_FINI): Likewise.
 
2353
        * grub-core/kern/file.c (grub_file_filters_all): New variable.
 
2354
        (grub_file_filters_enabled): Likewise.
 
2355
        (grub_file_open): Handle filters.
 
2356
        * grub-core/loader/i386/bsd.c (GRUB_MOD_INIT): Load gzio.
 
2357
        * grub-core/normal/main.c (GRUB_MOD_INIT): Likewise.
 
2358
        * include/grub/file.h (grub_file_filter_id_t): New type.
 
2359
        (grub_file_filter_t): Likewise.
 
2360
        (grub_file_filters_all): New extern variable.
 
2361
        (grub_file_filters_enabled): Likewise.
 
2362
        (grub_file_filter_register): New inline function.
 
2363
        (grub_file_filter_unregister): Likewise.
 
2364
        (grub_file_filter_disable): Likewise.
 
2365
        (grub_file_filter_disable_compression): Likewise.
 
2366
        * include/grub/gzio.h: Removed.
 
2367
 
 
2368
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2369
 
 
2370
        Filename expansion support for wildcards in GRUB script.
 
2371
 
 
2372
        * tests/grub_script_expansion.in: New test.
 
2373
        * Makefile.util.def: Rule for new test.
 
2374
 
 
2375
        * grub-core/commands/wildcard.c: New file, implements filename
 
2376
        expansion support for GRUB script.
 
2377
        * grub-core/Makefile.core.def: Rule update for regexp.mod.
 
2378
        * grub-core/script/argv.c: Cosmetic changes.
 
2379
        * grub-core/script/execute.c (grub_script_arglist_to_argv):
 
2380
        Refactored to perform wildcard expansion on arguments.
 
2381
        * include/grub/script_sh.h (grub_script_wildcard_translator): New
 
2382
        struct.
 
2383
 
 
2384
        * tests/util/grub-shell.in: Fix quoting for read input.
 
2385
 
 
2386
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2387
 
 
2388
        Support for updating environment variables with matched substrings
 
2389
        of regexp.
 
2390
 
 
2391
        * tests/grub_cmd_regexp.in: New test.
 
2392
        * Makefile.util.def: Rule for new test.
 
2393
 
 
2394
        * grub-core/commands/regexp.c: New option -s to update environment
 
2395
        variables with regexp matches.
 
2396
 
 
2397
2010-09-04  Szymon Janc <szymon@janc.net.pl>
 
2398
 
 
2399
        * include/grub/file.h (grub_file): New member not_easly_seekable.
 
2400
        (grub_file_seekable): New inline function.
 
2401
        * grub-core/io/gzio.c (test_header): Don't test end magic if file isn't
 
2402
        easily seekable.
 
2403
        (grub_gzio_open): Set not_easly_seekable.
 
2404
        * grub-core/fs/i386/pc/pxe.c (grub_pxefs_open): Set not_easily_seekable.
 
2405
        * grub-core/io/bufio.c (grub_bufio_open): Propagate not_easily_seekable.
 
2406
 
 
2407
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2408
 
 
2409
        Support for options to appear multiple times on cmdline.
 
2410
 
 
2411
        * include/grub/lib/arg.h (grub_arg_list_alloc): New prototype.
 
2412
        * grub-core/commands/extcmd.c: Support for repeatable option.
 
2413
        * grub-core/lib/arg.c (grub_arg_list_alloc): New function for
 
2414
        repeatable option support.
 
2415
 
 
2416
        Refactor menuentry into a regular command.
 
2417
 
 
2418
        * grub-core/commands/menuentry.c: New file, menuentry command
 
2419
        implementation.
 
2420
        * grub-core/Makefile.core.def: Rule update for normal.mod.
 
2421
        * grub-core/normal/main.c: Moved menuentry creation to
 
2422
        grub-core/commands/menuentry.c.
 
2423
        * grub-core/normal/menu.c (grub_menu_execute_entry): Removed.
 
2424
        (grub_menu_execute_entry_real): Removed.
 
2425
        * grub-core/script/execute.c (grub_script_execute_sourcecode): New
 
2426
        function.
 
2427
        (grub_script_execute_menuentry): Removed.
 
2428
        * grub-core/script/parser.y (menuentry): Removed.
 
2429
        * grub-core/script/script.c (grub_script_create_cmdmenu): Removed.
 
2430
        * grub-core/script/yylex.l (menuentry): Removed.
 
2431
        * include/grub/menu.h (grub_menu_init): New prototype.
 
2432
        (grub_menu_fini): New prototype.
 
2433
        * include/grub/normal.h (grub_normal_add_menu_entry): Removed.
 
2434
        * include/grub/script_sh.h (grub_script_cmd_menuentry): Removed.
 
2435
        (grub_script_execute_sourcecode): New prototype.
 
2436
 
 
2437
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2438
 
 
2439
        "return" command for GRUB script functions.
 
2440
 
 
2441
        * tests/grub_script_return.in: New test.
 
2442
        * Makefile.util.def: Rules for new test.
 
2443
 
 
2444
        * grub-core/script/execute.c (grub_script_return): New function.
 
2445
        * grub-core/script/main.c: Register/unregister return commaond.
 
2446
        * include/grub/script_sh.h (grub_script_return): New prototype.
 
2447
 
 
2448
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2449
 
 
2450
        "setparams" command to update positional parameters.
 
2451
 
 
2452
        * tests/grub_script_setparams.in: New test.
 
2453
        * Makefile.util.def: Rules for new test.
 
2454
 
 
2455
        * grub-core/script/argv.c (grub_script_argv_make): New function.
 
2456
        * grub-core/script/execute.c (replace_scope): New function.
 
2457
        (grub_script_setparams): New function.
 
2458
        * grub-core/script/lexer.c: Remove unused variables.
 
2459
        * grub-core/script/main.c: Register/unregister setparams command.
 
2460
        * include/grub/script_sh.h (grub_script_argv_make): New prototype.
 
2461
        (grub_script_setparams): New prototype.
 
2462
 
 
2463
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2464
 
 
2465
        * grub-core/normal/completion.c (grub_normal_do_completion): Fix
 
2466
        grub_free order.
 
2467
 
 
2468
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2469
 
 
2470
        Support for passing block of commands as an argument to extcmds.
 
2471
 
 
2472
        * Makefile.util.def: Rules for new test.
 
2473
        * tests/grub_script_blockarg.in: New test.
 
2474
        * grub-core/tests/test_blockarg.c: New file, block argument
 
2475
        command used in the test.
 
2476
 
 
2477
        * include/grub/extcmd.h (grub_extcmd_context): New struct.
 
2478
        (grub_register_extcmd_prio): New function prototype.
 
2479
        (grub_extcmd_dispatcher): New function prototype.
 
2480
        * include/grub/command.h (GRUB_COMMAND_FLAG_BLOCKS): New command
 
2481
        type.
 
2482
        * include/grub/script_sh.h (struct grub_script): New members
 
2483
        `children', `next_siblings' and `refcnt' for block arguments and
 
2484
        reference counting.
 
2485
        (GRUB_SCRIPT_ARG_TYPE_BLOCK): New argument type.
 
2486
        (grub_script_arg): New member `script' for block argument.
 
2487
        (grub_script_argv): New member `script' for block argument.
 
2488
        (grub_parser_param): New member `scripts' for block argument.
 
2489
        (grub_script_mem_free): New extern function prototype.
 
2490
        (grub_script_ref): New function prototype.
 
2491
        (grub_script_unref): New function prototype.
 
2492
 
 
2493
        * grub-core/normal/dyncmd.c (grub_dyncmd_dispatcher): Moved to
 
2494
        extcmd form to support block arguments.
 
2495
        * grub-core/script/argv.c: Block arguments support.
 
2496
        * grub-core/script/execute.c: Likewise.
 
2497
        * grub-core/script/lexer.c: Likewise.
 
2498
        * grub-core/script/main.c: Likewise.
 
2499
        * grub-core/script/script.c: Likewise.
 
2500
        * grub-core/script/parser.y: Likewise.  New `block' and `block0'
 
2501
        non-terminals.
 
2502
 
 
2503
        * grub-core/commands/acpi.c: Update extcmd implementations with
 
2504
        grub_extcmd_context_t.
 
2505
        * grub-core/commands/cat.c: Likewise.
 
2506
        * grub-core/commands/echo.c: Likewise.
 
2507
        * grub-core/commands/extcmd.c: Likewise.
 
2508
        * grub-core/commands/hashsum.c: Likewise.
 
2509
        * grub-core/commands/hdparm.c: Likewise.
 
2510
        * grub-core/commands/help.c: Likewise.
 
2511
        * grub-core/commands/hexdump.c: Likewise.
 
2512
        * grub-core/commands/i386/cpuid.c: Likewise.
 
2513
        * grub-core/commands/i386/pc/drivemap.c: Likewise.
 
2514
        * grub-core/commands/i386/pc/halt.c: Likewise.
 
2515
        * grub-core/commands/i386/pc/sendkey.c: Likewise.
 
2516
        * grub-core/commands/iorw.c: Likewise.
 
2517
        * grub-core/commands/keystatus.c: Likewise.
 
2518
        * grub-core/commands/loadenv.c: Likewise.
 
2519
        * grub-core/commands/ls.c: Likewise.
 
2520
        * grub-core/commands/lspci.c: Likewise.
 
2521
        * grub-core/commands/memrw.c: Likewise.
 
2522
        * grub-core/commands/probe.c: Likewise.
 
2523
        * grub-core/commands/search_wrap.c: Likewise.
 
2524
        * grub-core/commands/setpci.c: Likewise.
 
2525
        * grub-core/commands/sleep.c: Likewise.
 
2526
        * grub-core/disk/loopback.c: Likewise.
 
2527
        * grub-core/hello/hello.c: Likewise.
 
2528
        * grub-core/loader/i386/bsd.c: Likewise.
 
2529
        * grub-core/loader/xnu.c: Likewise.
 
2530
        * grub-core/term/gfxterm.c: Likewise.
 
2531
        * grub-core/term/serial.c: Likewise.
 
2532
        * grub-core/tests/lib/functional_test.c: Likewise.
 
2533
 
 
2534
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
 
2535
 
 
2536
        Multi-line quoted strings support.
 
2537
 
 
2538
        * grub-core/script/lexer.c (append_newline): Removed.
 
2539
        (grub_script_lexer_yywrap): Refactored.
 
2540
        (grub_script_lexer_init): Refactored.
 
2541
        * grub-core/script/yylex.l (yywrap): New function.
 
2542
        (grub_lexer_resplit): New function.
 
2543
        (grub_lexer_unput): New function.
 
2544
        * include/grub/script_sh.h (grub_lexer_param): New members, unput
 
2545
        and resplit.
 
2546
        * tests/grub_script_echo1.in: Added few more testcases.
 
2547
 
 
2548
2010-09-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
2549
 
 
2550
        * grub-core/kern/misc.c: Don't add abort alias in utils.
 
2551
        Reported by: echoline.
 
2552
 
 
2553
2010-09-03  BVK Chaitanya  <bvk.groups@gmail.com>
 
2554
 
 
2555
        Add missing files into "make dist" tarball for other platforms.
 
2556
 
 
2557
        * gentpl.py (script): Use dist_noinst_DATA instead of EXTRA_DIST.
 
2558
        * conf/Makefile.common (dist_noinst_DATA): New variable.
 
2559
        * conf/Makefile.extra-dist: Added missing make dist files.
 
2560
        * grub-core/Makefile.core.def: Likewise.
 
2561
 
 
2562
2010-09-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
2563
 
 
2564
        Compress grub_prefix.
 
2565
 
 
2566
        * grub-core/boot/i386/pc/lnxboot.S: Use
 
2567
        GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE.
 
2568
        * grub-core/kern/i386/pc/startup.S: Move grub_prefix to compressed part.
 
2569
        * include/grub/offsets.h: Rename GRUB_MACHINE_DATA_END to
 
2570
        GRUB_MACHINE_PREFIX_END. All users updated.
 
2571
        (GRUB_KERNEL_I386_PC_PREFIX): Set to GRUB_KERNEL_I386_PC_RAW_SIZE.
 
2572
        (GRUB_KERNEL_I386_PC_PREFIX_END): Set to GRUB_KERNEL_I386_PC_PREFIX
 
2573
        + 0x40.
 
2574
        (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease.
 
2575
        * util/grub-mkimage.c (image_target_desc): Change data_end to
 
2576
        prefix_end. All users updated.
 
2577
 
 
2578
2010-09-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
2579
 
 
2580
        * grub-core/loader/i386/bsd.c (grub_freebsd_boot): Set %ebp to sane
 
2581
        value.
 
2582
        (grub_openbsd_boot): Likewise.
 
2583
        (grub_netbsd_boot): Likewise.
 
2584
        * grub-core/loader/i386/xnu.c (grub_xnu_boot_resume): Likewise.
 
2585
        (grub_xnu_boot): Likewise.
 
2586
 
 
2587
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
2588
 
 
2589
        * configure.ac: Clean LIBS variable after tests.
 
2590
 
 
2591
2010-09-02  Colin Watson  <cjwatson@ubuntu.com>
 
2592
 
 
2593
        * INSTALL: Document that libdevmapper needs to be 1.02.34 or later.
 
2594
 
 
2595
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
2596
 
 
2597
        * configure.ac: Check for dm_log_with_errno_init in libdevmapper and
 
2598
        echo if libdevmapper will be used.
 
2599
 
 
2600
2010-09-02  Ian Turner  <Ian.Turner@deshaw.com>
 
2601
 
 
2602
        * grub-core/fs/i386/pc/pxe.c (grub_pxefs_read): Keep the blocksize
 
2603
        constant for the same file.
 
2604
 
 
2605
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
2606
 
 
2607
        * grub-core/kern/i386/multiboot_mmap.c: Remove leftover include.
 
2608
 
 
2609
2010-09-02  Colin Watson  <cjwatson@ubuntu.com>
 
2610
 
 
2611
        * .bzrignore: Add *.pp, **/.dirstamp, grub-core/*.module, and
 
2612
        grub-core/*.pp.
 
2613
 
 
2614
2010-09-02  Colin Watson  <cjwatson@ubuntu.com>
 
2615
 
 
2616
        Zero %ebp and %edi when entering Linux's 32-bit entry point, as
 
2617
        required by the boot protocol.
 
2618
 
 
2619
        * include/grub/i386/relocator.h (struct grub_relocator32_state): Add
 
2620
        ebp and edi members.
 
2621
        * grub-core/lib/i386/relocator.c (grub_relocator_boot): Handle
 
2622
        state.ebp and state.edi.
 
2623
        * grub-core/lib/i386/relocator32.S (grub_relocator32_start): Set
 
2624
        %ebp and %edi according to grub_relocator32_ebp and
 
2625
        grub_relocator32_edi respectively.
 
2626
        * grub-core/loader/i386/linux.c (grub_linux_boot): Zero state.ebp
 
2627
        and state.edi.
 
2628
 
 
2629
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
2630
 
 
2631
        Add i386-pc-pxe image target.
 
2632
 
 
2633
        * util/grub-mkimage.c (image_target_desc): New enum value
 
2634
        IMAGE_I386_PC_PXE.
 
2635
        (image_targets): New target i386-pc-pxe.
 
2636
        (generate_image): Handle i386-pc-pxe image.
 
2637
 
 
2638
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
2639
 
 
2640
        Fix grub_pxe_scan.
 
2641
 
 
2642
        * grub-core/fs/i386/pc/pxe.c (grub_pxe_pxenv): Put correct type bangpxe.
 
2643
        (grub_pxe_scan): Fix types and pxe_rm_entry computation.
 
2644
        All users updated.
 
2645
        * include/grub/i386/pc/pxe.h (grub_pxe_bangpxe): New struct.
 
2646
        (grub_pxe_pxenv): Correct type.
 
2647
 
 
2648
2010-09-01  Colin Watson  <cjwatson@ubuntu.com>
 
2649
 
 
2650
        * NEWS: Document most of the important changes since 1.98.
 
2651
 
 
2652
2010-09-01  Colin Watson  <cjwatson@ubuntu.com>
 
2653
 
 
2654
        * util/grub-mkrescue.in (usage): Tidy up usage output (and hence
 
2655
        generated manual page) a little.
 
2656
 
 
2657
2010-09-01  Colin Watson  <cjwatson@ubuntu.com>
 
2658
 
 
2659
        * docs/grub.texi: Add myself as an author.
 
2660
 
 
2661
2010-09-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
2662
 
 
2663
        * Makefile.util.def (libgrub.a): Add missing sunpc.
 
2664
        Reported by: Seth Goldberg.
 
2665
 
 
2666
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2667
 
 
2668
        Interrupt wrapping and code simplifications.
 
2669
 
 
2670
        * Makefile.util.def (grub-mkrescue): Use x86 tg instead of
 
2671
        x86_noieee1275 which are functionaly equivalent in this case.
 
2672
        (grub-install): Make source on each platform explicit. Enable on
 
2673
        all noemu.
 
2674
        * gentpl.py (x86_efi_pc): Removed group.
 
2675
        (x86_noefi): Likewise.
 
2676
        (i386_noefi): Likewise.
 
2677
        (x86_noieee1275): Likewise.
 
2678
        (i386_noieee1275): Likewise.
 
2679
        (i386_noefi_noieee1275): Likewise.
 
2680
        (i386_pc_qemu_coreboot): Likewise.
 
2681
        (i386_coreboot_multiboot): Likewise.
 
2682
        (i386_pc_coreboot_multiboot_qemu): Likewise.
 
2683
        (x86_noefi_mips): Likewise.
 
2684
        (noieee1275): Likewise.
 
2685
        (ieee1275_mips): Likewise.
 
2686
        (noemu_noieee1275): Likewise.
 
2687
        (cmos): New group.
 
2688
        (usb): Likewise.
 
2689
        (videoinkernel): Likewise.
 
2690
        (videomodules): Likewise.
 
2691
        * grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove
 
2692
        include/grub/elf.h, include/grub/elfload.h, include/grub/net.h,
 
2693
        include/grub/reader.h, include/grub/symbol.h, include/grub/types.h,
 
2694
        include/grub/loader.h, include/grub/msdos_partition.h,
 
2695
        include/grub/machine/biosdisk.h, include/grub/machine/boot.h,
 
2696
        include/grub/machine/console.h, include/grub/machine/vga.h,
 
2697
        include/grub/machine/vbe.h, include/grub/machine/init.h,
 
2698
        include/grub/machine/kernel.h, include/grub/cpu/time.h,
 
2699
        include/grub/cpu/types.h, include/grub/gzio.h and include/grub/menu.h
 
2700
        (KERNEL_HEADER_FILES) [i386-pc]: Add include/grub/machine/int.h.
 
2701
        (KERNEL_HEADER_FILES) [i386-ieee1275]: Add include/grub/i386/pit.h
 
2702
        * grub-core/Makefile.core.def (kernel): Explicit the source for
 
2703
        startup. Explicit the platforms using kern/generic/rtc_get_time_ms.c.
 
2704
        Split ieee1275_mips. Remove kern/i386/halt.c. Remove kern/i386/misc.S.
 
2705
        Enable kern/i386/pit.c on all x86. Remove kern/i386/ieee1275/init.c.
 
2706
        Use videoinkernel tag.
 
2707
        (usb): Enable on all usb.
 
2708
        (usbserial_common): Likewise.
 
2709
        (usbserial_pl2303): Likewise.
 
2710
        (usbserial_ftdi): Likewise.
 
2711
        (uhci): Enable on all x86.
 
2712
        (ohci): Enable on all pci.
 
2713
        (cmostest): Enable on all CMOS.
 
2714
        (acpi): Include commands/acpi.c on all platforms.
 
2715
        (halt): Add relevant lib/*/halt.c.
 
2716
        (hdparm): Enable on all pci.
 
2717
        (lspci): Likewise.
 
2718
        (usbtest): Enable on all usb.
 
2719
        (ata): Enable on all pci.
 
2720
        (ata_pthru): Likewise.
 
2721
        (usbms): Enable on all usb.
 
2722
        (usb_keyboard): Likewise.
 
2723
        (font): Use tag videomodules.
 
2724
        (bufio): Likewise.
 
2725
        (datetime): Use tag cmos. Enable on all noemu.
 
2726
        (mmap): Use tags common and x86.
 
2727
        (gfxterm): Use tag videomodules.
 
2728
        (bitmap): Likewise.
 
2729
        (bitmap_scale): Likewise.
 
2730
        (video_fb): Likewise.
 
2731
        (video): Likewise.
 
2732
        * grub-core/bus/usb/ohci.c (grub_ohci_td): Make link_td a pointer and
 
2733
        adjust padding accordingly. All users updated.
 
2734
        (grub_ohci_transaction): Fix bad format specification.
 
2735
        (GRUB_MOD_INIT): Add asserts for struct size.
 
2736
        * grub-core/bus/usb/uhci.c (grub_uhci_pci_iter): Add explicit casts.
 
2737
        (grub_alloc_td): Likewise.
 
2738
        (grub_free_queue): Likewise.
 
2739
        (grub_uhci_transfer): Likewise.
 
2740
        (grub_uhci_transaction): Fix bad format specification.
 
2741
        * grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
 
2742
        (grub_usb_bulk_readwrite): Likewise.
 
2743
        * grub-core/kern/i386/misc.S (grub_stop): Moved from here ...
 
2744
        * grub-core/commands/i386/pc/halt.c (stop): ...here. Transformed into C.
 
2745
        Made static.
 
2746
        * grub-core/lib/i386/halt.c (stop): ... and here. Transformed into C.
 
2747
        Made static.
 
2748
        * grub-core/kern/i386/pc/startup.S (grub_halt): Moved from here ...
 
2749
        * grub-core/commands/i386/pc/halt.c (grub_halt): ...here.
 
2750
        Transformed into C.
 
2751
        * grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_int13_extensions):
 
2752
        Moved from here ...
 
2753
        * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_int13_extensions):
 
2754
        ... here. Transformed into C. Made static.
 
2755
        * grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_standard):
 
2756
        Moved from here ...
 
2757
        * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_standard):
 
2758
        ... here. Transformed into C. Made static.
 
2759
        * grub-core/kern/i386/pc/startup.S
 
2760
        (grub_biosdisk_check_int13_extensions): Moved from here ...
 
2761
        * grub-core/disk/i386/pc/biosdisk.c
 
2762
        (grub_biosdisk_check_int13_extensions): ... here. Transformed into C.
 
2763
        Made static.
 
2764
        * grub-core/kern/i386/pc/startup.S
 
2765
        (grub_biosdisk_get_cdinfo_int13_extensions): Moved from here ...
 
2766
        * grub-core/disk/i386/pc/biosdisk.c
 
2767
        (grub_biosdisk_get_cdinfo_int13_extensions): ... here.
 
2768
        Transformed into C. Made static.
 
2769
        * grub-core/kern/i386/pc/startup.S
 
2770
        (grub_biosdisk_get_diskinfo_int13_extensions): Moved from here ...
 
2771
        * grub-core/disk/i386/pc/biosdisk.c
 
2772
        (grub_biosdisk_get_diskinfo_int13_extensions): ... here.
 
2773
        Transformed into C. Made static.
 
2774
        * grub-core/kern/i386/pc/startup.S
 
2775
        (grub_biosdisk_get_diskinfo_standard): Moved from here ...
 
2776
        * grub-core/disk/i386/pc/biosdisk.c
 
2777
        (grub_biosdisk_get_diskinfo_standard): ... here.
 
2778
        Transformed into C. Made static.
 
2779
        * grub-core/kern/i386/pc/startup.S
 
2780
        (grub_biosdisk_get_num_floppies): Moved from here ...
 
2781
        * grub-core/disk/i386/pc/biosdisk.c
 
2782
        (grub_biosdisk_get_num_floppies): ... here.
 
2783
        Transformed into C. Made static.
 
2784
        * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_diskinfo_real):
 
2785
        New function.
 
2786
        * grub-core/kern/i386/pc/startup.S (grub_pxe_scan): Moved from here ...
 
2787
        * grub-core/fs/i386/pc/pxe.c (grub_pxe_scan): ... here.
 
2788
        Transformed into C. Made static.
 
2789
        * grub-core/kern/i386/pc/startup.S (grub_rm_entry): Moved from here ...
 
2790
        * grub-core/fs/i386/pc/pxe.c (grub_rm_entry): ... here.
 
2791
        Transformed into C. Made static.
 
2792
        * grub-core/kern/i386/ieee1275/init.c: Removed.
 
2793
        * grub-core/kern/i386/misc.S: Likewise.
 
2794
        * grub-core/kern/i386/pc/startup.S (grub_get_memsize):
 
2795
        Splitted from here ...
 
2796
        * grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): ... here.
 
2797
        Transformed into C. Made static. All users updated.
 
2798
        * grub-core/kern/i386/pc/mmap.c (grub_get_ext_memsize): ... and here.
 
2799
        Transformed into C. Made static. All users updated.
 
2800
        * grub-core/kern/i386/pc/startup.S (grub_get_eisa_mmap):
 
2801
        Moved from here...
 
2802
        * grub-core/kern/i386/pc/mmap.c (grub_get_eisa_mmap): ... here.
 
2803
        Transformed into C. Made static. All users updated.
 
2804
        * grub-core/kern/i386/pc/startup.S (grub_get_mmap_entry):
 
2805
        Moved from here...
 
2806
        * grub-core/kern/i386/pc/mmap.c (grub_get_mmap_entry): ... here.
 
2807
        Transformed into C. Made static. All users updated.
 
2808
        * grub-core/kern/i386/pc/startup.S (grub_stop_floppy):
 
2809
        Removed (replaced by C version).
 
2810
        * grub-core/kern/i386/pc/startup.S (grub_vga_set_mode):
 
2811
        Moved from here...
 
2812
        * grub-core/video/i386/pc/vga.c (grub_vga_set_mode): ...here.
 
2813
        Transformed into C. Made static.
 
2814
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_controller_info):
 
2815
        Moved from here...
 
2816
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_controller_info):
 
2817
        ... here. Transformed into C.
 
2818
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode_info):
 
2819
        Moved from here...
 
2820
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode_info):
 
2821
        ... here. Transformed into C.
 
2822
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_mode):
 
2823
        Moved from here...
 
2824
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_mode):
 
2825
        ... here. Transformed into C. Made static.
 
2826
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode):
 
2827
        Moved from here...
 
2828
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode):
 
2829
        ... here. Transformed into C.
 
2830
        * grub-core/kern/i386/pc/startup.S
 
2831
        (grub_vbe_bios_getset_dac_palette_width):Moved from here...
 
2832
        * grub-core/video/i386/pc/vbe.c
 
2833
        (grub_vbe_bios_getset_dac_palette_width):... here. Transformed into C.
 
2834
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_memory_window):
 
2835
        Moved from here...
 
2836
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_memory_window):
 
2837
        ... here. Transformed into C.
 
2838
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_memory_window):
 
2839
        Moved from here...
 
2840
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_memory_window):
 
2841
        ... here. Transformed into C.
 
2842
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_scanline_length):
 
2843
        Moved from here...
 
2844
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_scanline_length):
 
2845
        ... here. Transformed into C.
 
2846
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_scanline_length):
 
2847
        Moved from here...
 
2848
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_scanline_length):
 
2849
        ... here. Transformed into C.
 
2850
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_display_start):
 
2851
        Moved from here...
 
2852
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_display_start):
 
2853
        ... here. Transformed into C. Made static.
 
2854
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_display_start):
 
2855
        Moved from here...
 
2856
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_display_start):
 
2857
        ... here. Transformed into C. Made static.
 
2858
        * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_palette_data):
 
2859
        Moved from here...
 
2860
        * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_palette_data):
 
2861
        ... here. Transformed into C. Made static.
 
2862
        * grub-core/kern/i386/pc/startup.S (grub_pxe_call): Receive
 
2863
        pxe_rm_entry as third argument.
 
2864
        (grub_bios_interrupt): New function.
 
2865
        * grub-core/kern/i386/qemu/mmap.c: Remove useless include.
 
2866
        * grub-core/kern/i386/qemu/startup.S (codestart): Do cli;hlt instead
 
2867
        of calling grub_stop.
 
2868
        * grub-core/kern/efi/efi.c (grub_halt): Moved from here ...
 
2869
        * grub-core/lib/efi/halt.c (grub_halt): ...here.
 
2870
        * grub-core/kern/emu/main.c (grub_halt): Moved from here ...
 
2871
        * grub-core/lib/emu/halt.c (grub_halt): ... here.
 
2872
        * grub-core/lib/i386/halt.c: Moved from here ...
 
2873
        * grub-core/lib/i386/halt.c: ... here.
 
2874
        * grub-core/kern/ieee1275/openfw.c (grub_halt): Moved from here ...
 
2875
        * grub-core/lib/ieee1275/halt.c (grub_halt): ... here.
 
2876
        * grub-core/loader/i386/pc/linux.c (grub_linux16_boot): Call
 
2877
        grub_stop_floppy.
 
2878
        * grub-core/loader/i386/xnu.c (guessfsb) [IEEE1275]: Enable.
 
2879
        * include/grub/i386/coreboot/init.h: Removed.
 
2880
        * include/grub/i386/multiboot/init.h: Likewise.
 
2881
        * include/grub/i386/pc/biosdisk.h: Removed all function prototypes.
 
2882
        * include/grub/i386/pc/init.h: Likewise except grub_gate_a20.
 
2883
        * include/grub/i386/pc/int.h: New file.
 
2884
        * include/grub/i386/pc/pxe.h (GRUB_PXE_SIGNATURE): New definition.
 
2885
        (grub_pxe_scan): Removed.
 
2886
        (grub_pxe_call): Update prototype.
 
2887
        * include/grub/i386/pc/vbe.h: Removed EXPORT_FUNC and useless
 
2888
        prototypes.
 
2889
        * include/grub/i386/pc/vga.h (grub_vga_set_mode): Removed.
 
2890
        * include/grub/i386/qemu/init.h: Removed.
 
2891
        * include/grub/mips/yeeloong/kernel.h (grub_reboot): Add missing
 
2892
        noreturn.
 
2893
        (grub_halt): Likewise.
 
2894
        * include/grub/misc.h (grub_halt): Removed EXPORT_FUNC.
 
2895
        (grub_reboot): Likewise.
 
2896
        * grub-core/kern/i386/coreboot/init.c (grub_stop_floppy): Moved from here...
 
2897
        * include/grub/i386/floppy.h (grub_stop_floppy): ...here. Inlined.
 
2898
        * grub-core/kern/i386/pc/startup.S (grub_hard_stop): Removed.
 
2899
 
 
2900
2010-08-30  Robert Millan  <rmh@gnu.org>
 
2901
 
 
2902
        * NEWS: Document addition of ZFS support in `grub-install' and
 
2903
        `grub-mkconfig'.
 
2904
 
 
2905
2010-08-30  BVK Chaitanya  <bvk.groups@gmail.com>
 
2906
 
 
2907
        * conf/Makefile.common (CPPFLAGS_DEFAULT): Remove leading / from
 
2908
        dprintf output.
 
2909
 
 
2910
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2911
 
 
2912
        Remove leftover embedding of font objects.
 
2913
 
 
2914
        * include/grub/kernel.h (OBJ_TYPE_FONT): Removed.
 
2915
        * util/grub-install.in (font): Removed.
 
2916
        * util/grub-mkimage.c (generate_image): Remove font support. All users
 
2917
        updated.
 
2918
 
 
2919
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2920
 
 
2921
        Remove leftover embedding of font objects.
 
2922
 
 
2923
        * include/grub/kernel.h (OBJ_TYPE_FONT): Removed.
 
2924
        * util/grub-install.in (font): Removed.
 
2925
        * util/grub-mkimage.c (generate_image): Remove font support. All users
 
2926
        updated.
 
2927
 
 
2928
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2929
 
 
2930
        * docs/grub.texi (Network): Fix reference to pxe_blksize.
 
2931
        Reported by: Ian Turner
 
2932
 
 
2933
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2934
 
 
2935
        * grub-core/normal/menu.c (grub_wait_after_message): Add a 10 second
 
2936
        timeout to avoid indefinite boot stalling.
 
2937
 
 
2938
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2939
 
 
2940
        * grub-core/normal/color.c (grub_env_write_color_normal): Fix a warning.
 
2941
        (grub_env_write_color_highlight): Likewise.
 
2942
 
 
2943
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2944
 
 
2945
        * grub-core/normal/term.c (print_more): Return to normal and not
 
2946
        to standard state after printing "---MORE---".
 
2947
 
 
2948
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
2949
 
 
2950
        * grub-core/term/i386/vga_common.c (grub_console_setcolorstate):
 
2951
        Mask out the bit 0x80 since it has other meaning that specifiing color.
 
2952
 
 
2953
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
2954
 
 
2955
        New relocator. Allows for more kernel support and more straightforward
 
2956
        loader writing.
 
2957
 
 
2958
        * Makefile.am (BOOTTARGET): New variable.
 
2959
        (QEMU32): Likewise.
 
2960
        (linux.init.x86_64): New target.
 
2961
        (linux.init.i386): Likewise.
 
2962
        (multiboot.elf): Likewise.
 
2963
        (kfreebsd.elf): Likewise.
 
2964
        (kfreebsd.aout): Likewise.
 
2965
        (pc-chainloader.elf): Likewise.
 
2966
        (pc-chainloader.bin): Likewise.
 
2967
        (ntldr.elf): Likewise.
 
2968
        (ntldr.bin): Likewise.
 
2969
        (multiboot2.elf): Likewise.
 
2970
        (kfreebsd.init.x86_64): Likewise.
 
2971
        (kfreebsd.init.i386): Likewise.
 
2972
        (knetbsd.init.i386): Likewise.
 
2973
        (kopenbsd.init.i386): Likewise.
 
2974
        (knetbsd.init.x86_64): Likewise.
 
2975
        (kopenbsd.init.x86_64): Likewise.
 
2976
        (linux-initramfs.i386): Likewise.
 
2977
        (linux-initramfs.x86_64): Likewise.
 
2978
        (kfreebsd-mfsroot.i386.img): Likewise.
 
2979
        (knetbsd.image.i386): Likewise.
 
2980
        (kopenbsd.image.i386): Likewise.
 
2981
        (kopenbsd.image.x86_64): Likewise.
 
2982
        (knetbsd.miniroot-image.i386.img): Likewise.
 
2983
        (kfreebsd-mfsroot.x86_64.img): Likewise.
 
2984
        (knetbsd.image.x86_64): Likewise.
 
2985
        (knetbsd.miniroot-image.x86_64.img): Likewise.
 
2986
        (kfreebsd-mfsroot.i386.gz): Likewise.
 
2987
        (bootcheck-kfreebsd-i386): Likewise.
 
2988
        (kfreebsd-mfsroot.x86_64.gz): Likewise.
 
2989
        (bootcheck-kfreebsd-x86_64): Likewise.
 
2990
        (knetbsd.miniroot-image.i386.gz): Likewise.
 
2991
        (bootcheck-knetbsd-i386): Likewise.
 
2992
        (bootcheck-kopenbsd-i386): Likewise.
 
2993
        (bootcheck-kopenbsd-x86_64): Likewise.
 
2994
        (knetbsd.miniroot-image.x86_64.gz): Likewise.
 
2995
        (bootcheck-knetbsd-x86_64): Likewise.
 
2996
        (bootcheck-linux-i386): Likewise.
 
2997
        (bootcheck-linux-x86_64): Likewise.
 
2998
        (bootcheck-linux16-i386): Likewise.
 
2999
        (bootcheck-linux16-x86_64): Likewise.
 
3000
        (bootcheck-multiboot): Likewise.
 
3001
        (bootcheck-multiboot2): Likewise.
 
3002
        (bootcheck-kfreebsd-aout): Likewise.
 
3003
        (bootcheck-pc-chainloader): Likewise.
 
3004
        (bootcheck-ntldr): Likewise.
 
3005
        (CLEANFILES): Add new targets.
 
3006
        (BOOTCHECKS): New variable.
 
3007
        (.PHONY): Add bootchecks.
 
3008
        (SUCCESSFUL_BOOT_STRING): New variable.
 
3009
        (BOOTCHECK_TIMEOUT): Likewise.
 
3010
        (bootcheck): New target
 
3011
        * Makefile.util.def (grub-mkrescue): Enable on i386-multiboot.
 
3012
        * configure.ac: Correct efiemu excuse.
 
3013
        * docs/grub.texi (Supported kernels): New chapter.
 
3014
        * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add
 
3015
        include/grub/mm_private.h. Simplify inclusion of
 
3016
        include/grub/boot.h, include/grub/loader.h
 
3017
        and include/grub/msdos_partition.h
 
3018
        (KERNEL_HEADER_FILES) [i386_coreboot]:
 
3019
        Remove include/grub/machine/loader.h. Add include/grub/i386/pit.h.
 
3020
        (KERNEL_HEADER_FILES) [i386_multiboot]: Likewise.
 
3021
        (KERNEL_HEADER_FILES) [i386_qemu]: Likewise.
 
3022
        (KERNEL_HEADER_FILES) [i386_ieee1275]: Remove
 
3023
        include/grub/machine/loader.h.
 
3024
        (KERNEL_HEADER_FILES) [x86_64-efi]: Likewise.
 
3025
        * grub-core/Makefile.core.def (kernel): Remove kern/i386/loader.S from
 
3026
        extra_dist.
 
3027
        (pci.mod): Enable on i386-multiboot.
 
3028
        (acpi.mod): Enable on i386-multiboot and i386-coreboot.
 
3029
        (efiemu.mod): Enable on i386-coreboot, i386-ieee1275, i386-multiboot and
 
3030
        i386-qemu.
 
3031
        (relocator.mod): Rewritten.
 
3032
        (aout.mod): Enable on all x86.
 
3033
        (bsd.mod): Likewise.
 
3034
        (ntldr.mod): New module.
 
3035
        (linux.mod): Use loader/i386/linux.c on all x86.
 
3036
        (xnu.mod): Enable on all x86.
 
3037
        (vga_text.mod): disable on EFI and QEMU.
 
3038
        * grub-core/efiemu/i386/coredetect.c: Remove useless include.
 
3039
        * grub-core/efiemu/i386/pc/cfgtables.c: Likewise.
 
3040
        * grub-core/efiemu/loadcore.c: Likewise.
 
3041
        * grub-core/efiemu/main.c: Likewise.
 
3042
        (grub_efiemu_exit_boot_services): Removed.
 
3043
        (grub_efiemu_finish_boot_services): Likewise.
 
3044
        * grub-core/efiemu/mm.c (grub_efiemu_finish_boot_services): New
 
3045
        function.
 
3046
        * grub-core/efiemu/i386/nocfgtables.c: New file.
 
3047
        * grub-core/kern/dl.c (grub_dl_unload_all): Removed.
 
3048
        * grub-core/kern/efi/efi.c (grub_efi_exit_boot_services): Removed.
 
3049
        (grub_efi_finish_boot_services): Moved from here ...
 
3050
        * grub-core/kern/efi/mm.c (grub_efi_finish_boot_services): ...here.
 
3051
        Fille finish memory map and related data.
 
3052
        (finish_mmap_buf): New variable.
 
3053
        (grub_efi_uintn_t finish_mmap_size): Likewise.
 
3054
        (grub_efi_uintn_t finish_key): Likewise.
 
3055
        (grub_efi_uintn_t finish_desc_size): Likewise.
 
3056
        (grub_efi_uint32_t finish_desc_version): Likewise.
 
3057
        (grub_efi_is_finished): Likewise.
 
3058
        (grub_efi_get_memory_map): Use saved memory map if EFI is already
 
3059
        finished.
 
3060
        * grub-core/kern/elf.c (grub_elf32_phdr_iterate): Make global.
 
3061
        (grub_elf64_phdr_iterate): Likewise.
 
3062
        * grub-core/kern/i386/coreboot/init.c (grub_os_area_addr): Removed.
 
3063
        (grub_os_area_size): Likewise.
 
3064
        (grub_machine_init): Don't reserve os area.
 
3065
        * grub-core/kern/i386/coreboot/startup.S: Don't include loader.S.
 
3066
        * grub-core/kern/i386/ieee1275/startup.S: Likewise.
 
3067
        * grub-core/kern/i386/loader.S: Removed.
 
3068
        * grub-core/kern/i386/pc/init.c (grub_os_area_addr): Removed.
 
3069
        (grub_os_area_size): Likewise.
 
3070
        (grub_machine_init): Don't reserve os area.
 
3071
        * grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot):
 
3072
        Don't call grub_dl_unload_all.
 
3073
        Don't include loader.S.
 
3074
        * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
 
3075
        Declare the memory after _end as available.
 
3076
        * grub-core/kern/mm.c (GRUB_MM_FREE_MAGIC): Moved from here...
 
3077
        * include/grub/mm_private.h (GRUB_MM_FREE_MAGIC): ... here.
 
3078
        (GRUB_MM_ALLOC_MAGIC): Moved from here...
 
3079
        * include/grub/mm_private.h (GRUB_MM_ALLOC_MAGIC): ... here.
 
3080
        * grub-core/kern/mm.c (grub_mm_header): Moved from here...
 
3081
        * include/grub/mm_private.h (grub_mm_header): ... here.
 
3082
        * grub-core/kern/mm.c (GRUB_MM_ALIGN): Moved from here...
 
3083
        * include/grub/mm_private.h (GRUB_MM_ALIGN): ... here.
 
3084
        * grub-core/kern/mm.c (grub_mm_region): Moved from here ...
 
3085
        (grub_mm_region): ..here. Removed addr. Added pre_size.
 
3086
        All users updated.
 
3087
        * grub-core/kern/mm.c (base): Renamed to ...
 
3088
        (grub_mm_base): ... this. Made global.
 
3089
        (grub_real_malloc): Alloc from end of region.
 
3090
        (grub_memalign): Don't attempt to malloc if grub_mm_base is NULL.
 
3091
        * grub-core/kern/powerpc/cache.S (grub_arch_sync_caches): Move to ...
 
3092
        * grub-core/kern/powerpc/cache_flush.S: ... here.
 
3093
        * grub-core/lib/efi/relocator.c: New file.
 
3094
        * grub-core/lib/i386/relocator.c: Rewritten.
 
3095
        * grub-core/lib/i386/relocator16.S: New file.
 
3096
        * grub-core/lib/i386/relocator32.S: Likewise.
 
3097
        * grub-core/lib/i386/relocator64.S: Likewise.
 
3098
        * grub-core/lib/i386/relocator_asm.S: Rewritten.
 
3099
        * grub-core/lib/i386/relocator_common.S: New file.
 
3100
        * grub-core/lib/ieee1275/relocator.c: Likewise.
 
3101
        * grub-core/lib/mips/relocator.c: Rewritten.
 
3102
        * grub-core/lib/mips/relocator_asm.S: Renamed variables and minor
 
3103
        stylistic adjustments.
 
3104
        * grub-core/lib/powerpc/relocator.c: New file.
 
3105
        * grub-core/lib/powerpc/relocator_asm.S: Likewise.
 
3106
        * grub-core/lib/relocator.c: Rewritten.
 
3107
        * grub-core/lib/x86_64/relocator_asm.S: New file.
 
3108
        * grub-core/loader/aout.c (grub_aout_load): Make load_addr a void *.
 
3109
        * grub-core/loader/i386/bsd.c (NETBSD_DEFAULT_VIDEO_MODE): New const.
 
3110
        (bsd_tag): New struct.
 
3111
        (tags): New variable.
 
3112
        (tags_last): Likewise.
 
3113
        (netbsd_module): New struct.
 
3114
        (netbsd_mods): New variable.
 
3115
        (netbsd_mods_last): Likewise.
 
3116
        (openbsd_opts): New parameter "serial".
 
3117
        (OPENBSD_SERIAL_ARG): New definition.
 
3118
        (netbsd_opts): New parameter "serial".
 
3119
        (NETBSD_SERIAL_ARG): New definition.
 
3120
        (grub_freebsd_add_meta): Reorganised into ...
 
3121
        (grub_bsd_add_meta): ...this. All users updated.
 
3122
        (grub_freebsd_add_mmap): Reorganised into ...
 
3123
        (generate_e820_mmap):  ...this...
 
3124
        (grub_bsd_add_mmap): ...and this.  All users updated.
 
3125
        (grub_freebsd_list_modules): Use tags.
 
3126
        (grub_netbsd_add_meta_module): New function.
 
3127
        (grub_netbsd_list_modules): Likewise.
 
3128
        (grub_freebsd_boot): Use relocator and finish EFI.
 
3129
        (grub_openbsd_boot): Likewise.
 
3130
        (grub_netbsd_setup_video): New function.
 
3131
        (grub_netbsd_add_modules): Likewise.
 
3132
        (grub_netbsd_boot): Use grub_netbsd_add_modules, relocator, netbsd_tags
 
3133
        and finish EFI.
 
3134
        (grub_bsd_unload): Unload tags.
 
3135
        (grub_bsd_load_aout): Use relocator.
 
3136
        (grub_bsd_elf32_size_hook): New function.
 
3137
        (grub_bsd_elf32_hook): Use relocator.
 
3138
        (grub_bsd_elf64_size_hook): New function.
 
3139
        (grub_bsd_elf64_hook): Use relocator.
 
3140
        (grub_bsd_load_elf): Use relocator and call grub_openbsd_find_ramdisk.
 
3141
        (grub_bsd_load): Zero-out openbsd_ramdisk.
 
3142
        (grub_bsd_load): Use relocator.
 
3143
        (grub_cmd_openbsd): Support serial.
 
3144
        (grub_cmd_netbsd): Support modules.
 
3145
        (grub_cmd_freebsd_module): Use relocator.
 
3146
        (grub_netbsd_module_load): New function.
 
3147
        (grub_cmd_netbsd_module): Likewise.
 
3148
        (grub_cmd_openbsd_ramdisk): Likewise.
 
3149
        (GRUB_MOD_INIT): Register knetbsd_module, knetbsd_module_elf and
 
3150
        kopenbsd_ramdisk.
 
3151
        (GRUB_MOD_FINI): Unregister new commands.
 
3152
        * grub-core/loader/i386/bsdXX.c (load): Remove useless checks.
 
3153
        (grub_freebsd_load_elfmodule_obj): Use relocator.
 
3154
        (grub_freebsd_load_elfmodule): Likewise.
 
3155
        (grub_freebsd_load_elf_meta): Likewise.
 
3156
        (grub_netbsd_load_elf_meta): New function.
 
3157
        (grub_openbsd_find_ramdisk): Likewise.
 
3158
        * grub-core/loader/i386/bsd_helper.S: Removed.
 
3159
        * grub-core/loader/i386/bsd_pagetable.c: Support relocator.
 
3160
        * grub-core/loader/i386/bsd_trampoline.S: Removed.
 
3161
        * grub-core/loader/i386/efi/linux.c: Likewise.
 
3162
        * grub-core/loader/i386/ieee1275/linux.c: Likewise.
 
3163
        * grub-core/loader/i386/linux.c (HAS_VGA_TEXT): New const.
 
3164
        (DEFAULT_VIDEO_MODE): Likewise.
 
3165
        (real_mode_target): New variable.
 
3166
        (prot_mode_target): Likewise.
 
3167
        (initrd_mem_target): Likewise.
 
3168
        (relocator): Likewise.
 
3169
        (efi_mmap_buf): Likewise.
 
3170
        (efi_mmap_size): Likewise.
 
3171
        (find_efi_mmap_size): Moved from grub-core/loader/i386/efi/linux.c.
 
3172
        (free_pages): Use relocator.
 
3173
        (allocate_pages): Account for efi_mmap and use relocator. Return error.
 
3174
        (grub_linux_setup_video): Return error.
 
3175
        (grub_linux_trampoline_start): Removed.
 
3176
        (grub_linux_trampoline_end): Likewise.
 
3177
        (grub_linux_boot): Use relocator and DEFAULT_VIDEO_MODE. Pass console
 
3178
        andd video parameters depending on firmware.
 
3179
        [GRUB_MACHINE_IEEE1275]: Pass OFW parameters.
 
3180
        [GRUB_MACHINE_EFI]: Pass EFI parameters.
 
3181
        (grub_cmd_linux) [GRUB_MACHINE_EFI]: Likewise.
 
3182
        (grub_cmd_initrd): Use relocator.
 
3183
        * grub-core/loader/i386/linux_trampoline.S: Removed.
 
3184
        * grub-core/loader/i386/multiboot_mbi.c (elf_sec_num): New variable.
 
3185
        (elf_sec_entsize): Likewise.
 
3186
        (elf_sec_shstrndx): Likewise.
 
3187
        (elf_sections): Likewise.
 
3188
        (grub_multiboot_load): Use relocator.
 
3189
        (grub_multiboot_get_mbi_size): Account for sections.
 
3190
        (grub_multiboot_make_mbi): Use relocator and support sections.
 
3191
        (grub_multiboot_add_elfsyms): New function.
 
3192
        (grub_multiboot_free_mbi): Free sections.
 
3193
        * grub-core/loader/i386/pc/linux.c (relocator): New variable.
 
3194
        (grub_linux_real_target): Likewise.
 
3195
        (grub_linux_real_chunk): Likewise.
 
3196
        (grub_linux16_prot_size): Likewise.
 
3197
        (grub_linux16_boot): Use relocator.
 
3198
        (grub_linux_unload): Unload relocator.
 
3199
        (grub_cmd_linux): Use relocator.
 
3200
        (grub_cmd_initrd): Likewise.
 
3201
        * grub-core/loader/i386/pc/ntldr.c: New file.
 
3202
        * grub-core/loader/i386/xnu.c (guessfsb) [GRUB_MACHINE_IEEE1275]:
 
3203
        Don't try to guess CPU frequency.
 
3204
        (grub_xnu_set_video): Stretch bitmap.
 
3205
        (grub_xnu_boot): Use relocator.
 
3206
        * grub-core/loader/mips/linux.c (grub_linux_boot): Use relocator.
 
3207
        (grub_linux_unload): Free relocator.
 
3208
        (grub_linux_load32): Use relocator.
 
3209
        (grub_linux_load64): Likewise.
 
3210
        (grub_cmd_initrd): Likewise.
 
3211
        * grub-core/loader/multiboot.c (grub_multiboot_boot): Use relocator.
 
3212
        (grub_multiboot_unload): Unload relocator.
 
3213
        (grub_cmd_multiboot): Use relocator.
 
3214
        (grub_cmd_module): Likewise.
 
3215
        * grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elfXX):
 
3216
        Use relocator and support sections.
 
3217
        * grub-core/loader/multiboot_mbi2.c(elf_sec_num): New variable.
 
3218
        (elf_sec_entsize): Likewise.
 
3219
        (elf_sec_shstrndx): Likewise.
 
3220
        (elf_sections): Likewise.
 
3221
        (grub_multiboot_load): Use relocator.
 
3222
        (grub_multiboot_get_mbi_size): Account for sections.
 
3223
        (grub_multiboot_make_mbi): Use relocator and support sections.
 
3224
        (grub_multiboot_add_elfsyms): New function.
 
3225
        * grub-core/loader/powerpc/ieee1275/linux.c: Remove useless include.
 
3226
        * grub-core/loader/sparc64/ieee1275/linux.c: Likewise.
 
3227
        * grub-core/loader/xnu.c (grub_xnu_heap_malloc): Use relocator.
 
3228
        Prototype changed. All users updated.
 
3229
        (grub_xnu_align_heap): Simplified.
 
3230
        (grub_xnu_writetree_toheap): Likewise.
 
3231
        (grub_xnu_unload): Unload relocator.
 
3232
        (grub_cmd_xnu_kernel): Use relocator.
 
3233
        (grub_cmd_xnu_kernel64): Likewise.
 
3234
        (grub_xnu_register_memory): Simplified.
 
3235
        * grub-core/loader/xnu_resume.c (grub_xnu_resume): Use relocator.
 
3236
        * grub-core/term/efi/console.c (grub_console_putchar): Abort if
 
3237
        EFI is finished.
 
3238
        (grub_console_checkkey): Likewise.
 
3239
        (grub_console_getkey): Likewise.
 
3240
        (grub_console_getwh): Likewise.
 
3241
        (grub_console_getxy): Likewise.
 
3242
        (grub_console_gotoxy): Likewise.
 
3243
        (grub_console_cls): Likewise.
 
3244
        (grub_console_setcolorstate): Likewise.
 
3245
        (grub_console_setcursor): Likewise.
 
3246
        * grub-core/term/ns8250.c (grub_ns8250_hw_get_port): New function.
 
3247
        * grub-core/tests/boot/kbsd.init-i386.S: New file.
 
3248
        * grub-core/tests/boot/kbsd.init-x86_64.S: Likewise.
 
3249
        * grub-core/tests/boot/kbsd.spec.txt: Likewise.
 
3250
        * grub-core/tests/boot/kernel-8086.S: Likewise.
 
3251
        * grub-core/tests/boot/kernel-i386.S: Likewise.
 
3252
        * grub-core/tests/boot/kfreebsd-aout.cfg: Likewise.
 
3253
        * grub-core/tests/boot/kfreebsd.cfg: Likewise.
 
3254
        * grub-core/tests/boot/kfreebsd.init-i386.S: Likewise.
 
3255
        * grub-core/tests/boot/kfreebsd.init-x86_64.S: Likewise.
 
3256
        * grub-core/tests/boot/knetbsd.cfg: Likewise.
 
3257
        * grub-core/tests/boot/kopenbsd.cfg: Likewise.
 
3258
        * grub-core/tests/boot/kopenbsdlabel.txt: Likewise.
 
3259
        * grub-core/tests/boot/linux.cfg: Likewise.
 
3260
        * grub-core/tests/boot/linux.init-i386.S: Likewise.
 
3261
        * grub-core/tests/boot/linux.init-x86_64.S: Likewise.
 
3262
        * grub-core/tests/boot/linux16.cfg: Likewise.
 
3263
        * grub-core/tests/boot/multiboot.cfg: Likewise.
 
3264
        * grub-core/tests/boot/multiboot2.cfg: Likewise.
 
3265
        * grub-core/tests/boot/ntldr.cfg: Likewise.
 
3266
        * grub-core/tests/boot/pc-chainloader.cfg: Likewise.
 
3267
        * include/grub/aout.h (grub_aout_load): Make load_addr a void *.
 
3268
        * include/grub/autoefi.h (grub_autoefi_finish_boot_services):
 
3269
        New definition.
 
3270
        * include/grub/dl.h (grub_dl_unload_all): Removed.
 
3271
        * include/grub/efi/efi.h (grub_efi_exit_boot_services): Likewise.
 
3272
        (grub_efi_finish_boot_services): Change prototype.
 
3273
        (grub_efi_is_finished): New variable.
 
3274
        * include/grub/efiemu/efiemu.h (grub_efiemu_finish_boot_services):
 
3275
        Changed prototype.
 
3276
        (grub_efiemu_finish_boot_services): Removed.
 
3277
        (grub_machine_efiemu_init_tables): New prototype.
 
3278
        * include/grub/elfload.h (grub_elf32_phdr_iterate): Likewise.
 
3279
        (grub_elf64_phdr_iterate): Likewise.
 
3280
        * include/grub/i386/bsd.h: Include relocator.h.
 
3281
        (freebsd_tag_header): New struct.
 
3282
        (grub_openbsd_bios_mmap): Removed.
 
3283
        (grub_unix_real_boot): Removed.
 
3284
        (grub_freebsd_load_elfmodule32): Changed prototype.
 
3285
        (grub_freebsd_load_elfmodule_obj64): Likewise.
 
3286
        (grub_freebsd_load_elf_meta32): Likewise.
 
3287
        (grub_freebsd_load_elf_meta64): Likewise.
 
3288
        (grub_freebsd_add_meta): Removed.
 
3289
        (grub_netbsd_load_elf_meta32): New prototype.
 
3290
        (grub_netbsd_load_elf_meta64): Likewise.
 
3291
        (grub_bsd_add_meta): Likewise.
 
3292
        (grub_openbsd_ramdisk_descriptor): New struct.
 
3293
        (grub_openbsd_find_ramdisk32): New prototype.
 
3294
        (grub_openbsd_find_ramdisk64): Likewise.
 
3295
        * include/grub/i386/coreboot/loader.h: Removed.
 
3296
        * include/grub/i386/efi/loader.h: Likewise.
 
3297
        * include/grub/i386/ieee1275/loader.h: Likewise.
 
3298
        * include/grub/i386/linux.h (linux_kernel_header): Change void *
 
3299
        to grub_uint32_t.
 
3300
        * include/grub/i386/loader.h: Removed.
 
3301
        * include/grub/i386/memory.h (GRUB_MEMORY_CPU_CR4_PAE_ON): Correct the
 
3302
        value.
 
3303
        (GRUB_MEMORY_CPU_CR4_PSE_ON): New definition.
 
3304
        (grub_phys_addr_t): New type.
 
3305
        (grub_vtop): New inline function.
 
3306
        (grub_map_memory): Likewise.
 
3307
        (grub_unmap_memory): Likewise.
 
3308
        * include/grub/i386/multiboot/loader.h: Removed.
 
3309
        * include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK): Removed.
 
3310
        (NETBSD_BTINFO_CONSOLE): New definition.
 
3311
        (NETBSD_BTINFO_SYMTAB): Likewise.
 
3312
        (NETBSD_BTINFO_MODULES): Likewise.
 
3313
        (NETBSD_BTINFO_FRAMEBUF): Likewise.
 
3314
        (grub_netbsd_bootinfo): New struct.
 
3315
        (grub_netbsd_btinfo_common): Use explicit bitsize.
 
3316
        (grub_netbsd_btinfo_mmap_entry): Removed.
 
3317
        (GRUB_NETBSD_MAX_BOOTPATH_LEN): New definition.
 
3318
        (grub_netbsd_btinfo_bootdisk): New struct.
 
3319
        (grub_netbsd_btinfo_symtab): Likewise.
 
3320
        (grub_netbsd_btinfo_serial): Likewise.
 
3321
        (grub_netbsd_btinfo_modules): Likewise.
 
3322
        (grub_netbsd_btinfo_framebuf): Likewise.
 
3323
        (GRUB_NETBSD_MAX_ROOTDEVICE_LEN): New definition.
 
3324
        * include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_CONSOLE):
 
3325
        Likewise.
 
3326
        (grub_openbsd_bootargs): Use explicit bitsize.
 
3327
        (grub_openbsd_bootarg_console): New struct.
 
3328
        (GRUB_OPENBSD_COM_MAJOR): New definition.
 
3329
        (GRUB_OPENBSD_VGA_MAJOR): Likewise.
 
3330
        * include/grub/i386/pc/efiemu.h: Removed.
 
3331
        * include/grub/i386/pc/loader.h: Don't include cpu/loader.h.
 
3332
        * include/grub/i386/qemu/loader.h: Removed.
 
3333
        * include/grub/i386/relocator.h: Rewritten.
 
3334
        * include/grub/i386/xnu.h (grub_xnu_heap_will_be_at): Removed.
 
3335
        * include/grub/mips/memory.h: New file.
 
3336
        * include/grub/mips/multiboot.h: Rewritten.
 
3337
        * include/grub/mips/relocator.h: Rewritten.
 
3338
        * include/grub/mips/yeeloong/memory.h (grub_phys_addr_t): New type.
 
3339
        (grub_vtop): New function.
 
3340
        (grub_map_memory): Likewise.
 
3341
        (grub_unmap_memory): Likewise.
 
3342
        * include/grub/misc.h (ALIGN_DOWN): New definition.
 
3343
        * include/grub/mm.h (grub_mm_check_real): New proto.
 
3344
        (GRUB_MM_CHECK): New definition.
 
3345
        * include/grub/mm_private.h: New file.
 
3346
        * include/grub/multiboot.h (grub_multiboot_relocator): New variable.
 
3347
        (grub_multiboot_get_mbi_size): Removed.
 
3348
        (grub_multiboot_make_mbi): Change prottype.
 
3349
        (grub_multiboot_set_accepts_video): New proto.
 
3350
        (grub_multiboot_add_elfsyms): Likewise.
 
3351
        (grub_multiboot_payload_eip): New variable.
 
3352
        * include/grub/ns8250.h (grub_ns8250_hw_get_port) [!ASM_FILE]:
 
3353
        New prototype.
 
3354
        * include/grub/offsets.h (GRUB_KERNEL_I386_MULTIBOOT_PREFIX):
 
3355
        New definition.
 
3356
        (GRUB_KERNEL_I386_MULTIBOOT_DATA_END): Likewise.
 
3357
        (GRUB_KERNEL_I386_MULTIBOOT_MOD_ALIGN): Likewise.
 
3358
        * include/grub/powerpc/ieee1275/loader.h: Removed.
 
3359
        * include/grub/powerpc/memory.h: New file.
 
3360
        * include/grub/powerpc/relocator.h: Likewise.
 
3361
        * include/grub/relocator.h: Likewise.
 
3362
        * include/grub/relocator_private.h: Likewise.
 
3363
        * include/grub/sparc64/ieee1275/loader.h: Removed.
 
3364
        * include/grub/x86_64/memory.h: New file.
 
3365
        * include/grub/xnu.h (grub_xnu_writetree_toheap): Changed prototype.
 
3366
        (grub_xnu_heap_malloc): Likewise.
 
3367
        (grub_xnu_heap_real_start): Removed.
 
3368
        (grub_xnu_heap_start): Likewise.
 
3369
        (grub_xnu_relocator): New variable.
 
3370
        (grub_xnu_heap_target_start): Likewise.
 
3371
        * tests/util/grub-shell.in: Support non-pc.
 
3372
        * util/grub-mkimage.c (image_targets): Fix multiboot target.
 
3373
 
 
3374
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
3375
 
 
3376
        * grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Avoid deadloop
 
3377
        on malloc error.
 
3378
        (grub_bidi_logical_to_visual): Check that malloc succeded.
 
3379
        * grub-core/normal/term.c (grub_puts_terminal): Fix fallback to dumb
 
3380
        puts.
 
3381
        (grub_xputs_normal): Likewise.
 
3382
 
 
3383
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
3384
 
 
3385
        * grub-core/Makefile.core.def (kernel): Add kern/mips/cache_flush.S to
 
3386
        extra_dist.
 
3387
 
 
3388
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
3389
 
 
3390
        * grub-core/efiemu/runtime/efiemu.sh: Removed.
 
3391
 
 
3392
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
3393
 
 
3394
        * Makefile.util.def (grub-ofpathname): Add missing ldadd.
 
3395
 
 
3396
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
3397
 
 
3398
        * grub-core/kern/misc.c (grub_real_dprintf): Always refresh after
 
3399
        dprintf.
 
3400
 
 
3401
2010-08-29  BVK Chaitanya  <bvk.groups@gmail.com>
 
3402
 
 
3403
        * Makefile.util.def: Use ldadd instead of ldflags for libraries.
 
3404
 
 
3405
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3406
 
 
3407
        * grub-core/normal/term.c (print_more): Fix a memory leak.
 
3408
        (grub_puts_terminal): Revert to dumb puts if memory allocation fails.
 
3409
        (grub_xputs_normal): Likewise.
 
3410
 
 
3411
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3412
 
 
3413
        * grub-core/script/lexer.c (grub_script_lexer_init): Don't look before
 
3414
        the begining of the string
 
3415
 
 
3416
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3417
 
 
3418
        * grub-core/script/script.c (grub_script_parse): Free parsed on
 
3419
        failure.
 
3420
 
 
3421
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3422
 
 
3423
        * grub-core/normal/completion.c (grub_normal_do_completion): Free argv
 
3424
        on failure.
 
3425
 
 
3426
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3427
 
 
3428
        * grub-core/normal/cmdline.c (grub_cmdline_get): Free cl_terms on
 
3429
        return.
 
3430
 
 
3431
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3432
 
 
3433
        * grub-core/term/gfxterm.c (grub_gfxterm_term_fini): Free the text buffer.
 
3434
        (scroll_up): Fix a memory leak.
 
3435
 
 
3436
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
3437
 
 
3438
        * grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Handle grub_disk_read
 
3439
        errors.
 
3440
 
 
3441
2010-08-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
3442
 
 
3443
        Handle USB pendrives exposed as floppies.
 
3444
 
 
3445
        * grub-core/boot/i386/pc/boot.S: Check LBA even on what appears to be
 
3446
        floppy.
 
3447
        * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise.
 
3448
        Check for partitions on all devices.
 
3449
 
 
3450
2010-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
 
3451
 
 
3452
        * grub-core/term/ieee1275/ofconsole.c (put): Correct prototype.
 
3453
        (readkey): Likewise.
 
3454
 
 
3455
2010-08-25  BVK Chaitanya  <bvk.groups@gmail.com>
 
3456
 
 
3457
        Multiple variable names support to "export" command.
 
3458
 
 
3459
        * normal/context.c (grub_cmd_export): "export" command supports
 
3460
        multiple variable names.
 
3461
 
 
3462
2010-08-23  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
3463
 
 
3464
        * util/grub.d/30_os-prober.in: Fix conversion from grub-probe
 
3465
        --target=drive output to Mach device name.
 
3466
 
 
3467
2010-08-23  BVK Chaitanya  <bvk.groups@gmail.com>
 
3468
 
 
3469
        New Automake based build system for GRUB.
 
3470
 
 
3471
        * ABOUT-NLS: New file.
 
3472
        * Makefile.am: New file. GRUB host utils' rules that doesn't fit
 
3473
        in Makefile.util.def file.
 
3474
        * Makefile.util.def: New file.  Autogen build definitions file for
 
3475
        GRUB host utils.
 
3476
        * conf/Makefile.common: New file.  Common variables for GRUB host
 
3477
        utils and target modules.
 
3478
        * conf/Makefile.extra-dist: New file.  Extra files for make dist.
 
3479
        * docs/Makefile.am: New file.  Automake file for docs.
 
3480
        * gentpl.py: New file.  Python script to generate Autogen
 
3481
        template.
 
3482
        * grub-core/Makefile.am: New file.  GRUB target modules' rules
 
3483
        that doesn't fit in Makefile.core.def file.
 
3484
        * grub-core/Makefile.core.def: New file.  Autogen build
 
3485
        definitions file for GRUB target modules.
 
3486
        * grub-core/lib/setjmp.S: New file.  Wrapper for target_cpu
 
3487
        specific setjmp.S file.
 
3488
        * po/Makefile.am: New file.
 
3489
 
 
3490
        * .bzrignore: New ignores.
 
3491
        * INSTALL: New requirements, without Ruby.
 
3492
        * acinclude.m4: Use TARGET_IMG_BASE_LDOPT variable instead.
 
3493
        * autogen.sh: Updated to invoke autogen as necessary.
 
3494
        * configure.ac: Separate *FLAGS with HOST_ and TARGET_ prefixes,
 
3495
        and defines for Automake conditionals.
 
3496
        * geninit.sh: Refactoring.
 
3497
 
 
3498
        * include/grub/dl.h: Allow build rules to define GRUB_MOD_* if
 
3499
        necessary.
 
3500
        * include/grub/emu/getroot.h (grub_make_system_path_relative_to_its_root):
 
3501
        New prototype.
 
3502
 
 
3503
        * include/grub/test.h: Fix functional test modules' naming.
 
3504
        * grub-core/tests/example_functional_test.c: Fix test module name.
 
3505
 
 
3506
        * util/misc.c: Hosted versions' of grub functions for libgrub.a
 
3507
        * tests/lib/unit_test.c: Remove hosted versions of grub functions.
 
3508
        * util/grub-editenv.c: Likewise.
 
3509
        * util/grub-fstest.c: Likewise.
 
3510
        * util/grub-mkdevicemap.c: Likewise.
 
3511
        * util/grub-mkfont.c: Likewise.
 
3512
        * util/grub-mkimage.c: Likewise.
 
3513
        * util/grub-mkpasswd-pbkdf2.c: Likewise.
 
3514
        * util/grub-probe.c: Likewise.
 
3515
        * util/grub-script-check.c: Likewise.
 
3516
        * util/i386/pc/grub-setup.c: Likewise.
 
3517
        * util/sparc64/ieee1275/grub-setup.c: Likewise.
 
3518
 
 
3519
        * tests/util/grub-shell.in: Fix override directory path.
 
3520
        * util/grub-mkrescue.in: Replace @pkglib_DATA@ with files.
 
3521
        * util/import_gcry.py: Create Makefile.gcry.def file instead.
 
3522
 
 
3523
        * util/lvm.c: Update #includes.
 
3524
        * util/raid.c: Likewise.
 
3525
        * util/resolve.c: Likewise.
 
3526
        * grub-core/bus/emu/pci.c: Likewise.
 
3527
        * grub-core/lib/posix_wrap/stdlib.h: Likewise.
 
3528
        * grub-core/lib/posix_wrap/string.h: Likewise.
 
3529
        * grub-core/kern/emu/main.c: Likewise.
 
3530
 
 
3531
        * grub-core/gensymlist.sh: New file.  Script for generating kernel
 
3532
        symbols file.
 
3533
        * grub-core/genmoddep.awk: Support new kernel_syms.lst format.
 
3534
 
 
3535
        * grub-core/gentrigtables.c: Fix unused variable warnings.
 
3536
 
 
3537
        * Makefile.in: Removed.
 
3538
        * conf/any-emu.rmk: Removed.
 
3539
        * conf/common.rmk: Removed.
 
3540
        * conf/i386-coreboot.rmk: Removed.
 
3541
        * conf/i386-efi.rmk: Removed.
 
3542
        * conf/i386-ieee1275.rmk: Removed.
 
3543
        * conf/i386-multiboot.rmk: Removed.
 
3544
        * conf/i386-pc.rmk: Removed.
 
3545
        * conf/i386-qemu.rmk: Removed.
 
3546
        * conf/i386.rmk: Removed.
 
3547
        * conf/mips-yeeloong.rmk: Removed.
 
3548
        * conf/mips.rmk: Removed.
 
3549
        * conf/powerpc-ieee1275.rmk: Removed.
 
3550
        * conf/sparc64-ieee1275.rmk: Removed.
 
3551
        * conf/tests.rmk: Removed.
 
3552
        * conf/x86-efi.rmk: Removed.
 
3553
        * conf/x86_64-efi.rmk: Removed.
 
3554
        * gendistlist.sh: Removed.
 
3555
        * geninitheader.sh: Removed.
 
3556
        * genkernsyms.sh.in: Removed.
 
3557
        * genmk.rb: Removed.
 
3558
        * gensymlist.sh.in: Removed.
 
3559
        * mkinstalldirs: Removed.
 
3560
        * boot: Moved ...
 
3561
        * grub-core/boot: ... to here.
 
3562
        * bus: Moved ...
 
3563
        * grub-core/bus: ... to here.
 
3564
        * commands: Moved ...
 
3565
        * grub-core/commands: ... to here.
 
3566
        * disk: Moved ...
 
3567
        * grub-core/disk: ... to here.
 
3568
        * efiemu: Moved ...
 
3569
        * grub-core/efiemu: ... to here.
 
3570
        * font: Moved ...
 
3571
        * grub-core/font: ... to here.
 
3572
        * fs: Moved ...
 
3573
        * grub-core/fs: ... to here.
 
3574
        * gencmdlist.sh: Moved ...
 
3575
        * grub-core/gencmdlist.sh: ... to here.
 
3576
        * genemuinit.sh: Moved ...
 
3577
        * grub-core/genemuinit.sh: ... to here.
 
3578
        * genemuinitheader.sh: Moved ...
 
3579
        * grub-core/genemuinitheader.sh: ... to here.
 
3580
        * genfslist.sh: Moved ...
 
3581
        * grub-core/genfslist.sh: ... to here.
 
3582
        * genhandlerlist.sh: Moved ...
 
3583
        * grub-core/genhandlerlist.sh: ... to here.
 
3584
        * genmoddep.awk: Moved ...
 
3585
        * grub-core/genmoddep.awk: ... to here.
 
3586
        * genmodsrc.sh: Moved ...
 
3587
        * grub-core/genmodsrc.sh: ... to here.
 
3588
        * genpartmaplist.sh: Moved ...
 
3589
        * grub-core/genpartmaplist.sh: ... to here.
 
3590
        * genparttoollist.sh: Moved ...
 
3591
        * grub-core/genparttoollist.sh: ... to here.
 
3592
        * genterminallist.sh: Moved ...
 
3593
        * grub-core/genterminallist.sh: ... to here.
 
3594
        * gentrigtables.c: Moved ...
 
3595
        * grub-core/gentrigtables.c: ... to here.
 
3596
        * genvideolist.sh: Moved ...
 
3597
        * grub-core/genvideolist.sh: ... to here.
 
3598
        * gettext: Moved ...
 
3599
        * grub-core/gettext: ... to here.
 
3600
        * gfxmenu: Moved ...
 
3601
        * grub-core/gfxmenu: ... to here.
 
3602
        * gnulib: Moved ...
 
3603
        * grub-core/gnulib: ... to here.
 
3604
        * hello: Moved ...
 
3605
        * grub-core/hello: ... to here.
 
3606
        * hook: Moved ...
 
3607
        * grub-core/hook: ... to here.
 
3608
        * io: Moved ...
 
3609
        * grub-core/io: ... to here.
 
3610
        * kern: Moved ...
 
3611
        * grub-core/kern: ... to here.
 
3612
        * lib: Moved ...
 
3613
        * grub-core/lib: ... to here.
 
3614
        * loader: Moved ...
 
3615
        * grub-core/loader: ... to here.
 
3616
        * mmap: Moved ...
 
3617
        * grub-core/mmap: ... to here.
 
3618
        * normal: Moved ...
 
3619
        * grub-core/normal: ... to here.
 
3620
        * partmap: Moved ...
 
3621
        * grub-core/partmap: ... to here.
 
3622
        * parttool: Moved ...
 
3623
        * grub-core/parttool: ... to here.
 
3624
        * script: Moved ...
 
3625
        * grub-core/script: ... to here.
 
3626
        * term: Moved ...
 
3627
        * grub-core/term: ... to here
 
3628
        * tests/example_functional_test.c: Moved ...
 
3629
        * grub-core/tests/example_functional_test.c: ... to here.
 
3630
        * tests/lib/functional_test.c: Moved ...
 
3631
        * grub-core/tests/lib/functional_test.c: ... to here.
 
3632
        * tests/lib/test.c: Moved ...
 
3633
        * grub-core/tests/lib/test.c: ... to here.
 
3634
        * video: Moved ...
 
3635
        * grub-core/video: ... to here.
 
3636
 
 
3637
2010-08-23  BVK Chaitanya  <bvk.groups@gmail.com>
 
3638
 
 
3639
        Replace --enable-grub-emu-modules with grub-emu-lite.
 
3640
 
 
3641
        * kern/emu/cache.S: New file.  Wrapper for $target_cpu specific
 
3642
        cache.S.
 
3643
 
 
3644
        * include/grub/emu/misc.h (grub_emu_init): New prototype.
 
3645
        * kern/emu/full.c: New file. For grub-emu specific initialization.
 
3646
        * kern/emu/lite.c: New file. For grub-emu-lite initialization.
 
3647
        * kern/emu/main.c: Call initialization function grub_emu_init.
 
3648
 
 
3649
        * Makefile.in: Include grub-emu-lite in install.
 
3650
        * commands/parttool.c: Use grub_no_autoload to differentiate
 
3651
        between grub-emu and grub-emu-lite.
 
3652
        * include/grub/misc.h: New variable grub_no_autoload.
 
3653
 
 
3654
        * conf/any-emu.rmk: New rules for grub-emu-lite.
 
3655
        * configure.ac: Remove --enable-grub-emu-modules.
 
3656
        * genmk.rb: Cleanup unnecessary rules.
 
3657
        * include/grub/dl.h: Remove GRUB_NO_MODULES macro.
 
3658
 
 
3659
        * normal/main.c: Don't load list files on grub-emu-lite.
 
3660
        * util/misc.c (grub_arch_sync_caches): Removed.
 
3661
 
 
3662
2010-08-23  Colin Watson  <cjwatson@ubuntu.com>
 
3663
 
 
3664
        * kern/mips/startup.S (grub_prefix): Update comment to refer to
 
3665
        grub-mkimage rather than grub-mkelfimage.
 
3666
        * kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise.
 
3667
 
 
3668
2010-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
3669
 
 
3670
        * term/at_keyboard.c (grub_at_keyboard_getkey_noblock): Don't discard
 
3671
        a key after CapsLock or NumLock. It's just a qemu bug.
 
3672
 
 
3673
2010-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
3674
 
 
3675
        * include/grub/usb.h (grub_usb_device): Add 'data' field back. It's
 
3676
        needed by libusb wrapper.
 
3677
 
 
3678
2010-08-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
3679
 
 
3680
        * docs/grub.texi (GNU/Hurd): Document booting GNU/Hurd.
 
3681
 
 
3682
2010-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
3683
 
 
3684
        * loader/multiboot.c (grub_cmd_module): Don't unzip module if
 
3685
        --nounzip is passed.
 
3686
 
 
3687
2010-08-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
3688
 
 
3689
        USB hotunplugging and USB serial support.
 
3690
 
 
3691
        * bus/usb/ohci.c (grub_ohci_transfer): Fill *actual and respect timeout.
 
3692
        * bus/usb/uhci.c (grub_free_queue): Compute *actual.
 
3693
        (grub_uhci_transfer): Respect timeout and set *actual.
 
3694
        * bus/usb/usb.c (grub_usb_device_initialize): Correctly skip fields of
 
3695
        non-standard length.
 
3696
        (grub_usb_device_attach): Autoload modules.
 
3697
        (GRUB_MOD_INIT): Set grub_term_poll_usb.
 
3698
        (GRUB_MOD_FINI): Unset grub_term_poll_usb.
 
3699
        * bus/usb/usbhub.c (grub_usb_hub): Replace speed with devices. All
 
3700
        users updated.
 
3701
        (grub_usb_add_hub): Fill nports and children.
 
3702
        (attach_root_port): Receive hub instead of controller.
 
3703
        All users updated. Fill hub->devices.
 
3704
        (grub_usb_root_hub): Allocate hub->devices.
 
3705
        (detach_device): New function.
 
3706
        (poll_nonroot_hub): Fill children and detach devices.
 
3707
        * bus/usb/usbtrans.c (grub_usb_bulk_readwrite): Accept timeout and
 
3708
        actual arguments. All users updated.
 
3709
        (grub_usb_bulk_read_extended): New function.
 
3710
        * bus/usb/serial/common.c: New file.
 
3711
        * bus/usb/serial/ftdi.c: Likewise.
 
3712
        * bus/usb/serial/pl2303.c: Likewise.
 
3713
        * commands/terminal.c (handle_command): Support wildcard.
 
3714
        * commands/usbtest.c: Output "Unknown" instead of empty string.
 
3715
        * conf/any-emu.rmk (pkglib_MODULES): Add usbserial_common.mod.
 
3716
        (usbserial_common_mod_SOURCES): New variable.
 
3717
        (usbserial_common_mod_CFLAGS): Likewise.
 
3718
        (usbserial_common_mod_LDFLAGS): Likewise.
 
3719
        (pkglib_MODULES): Add usbserial_pl2303.mod.
 
3720
        (usbserial_pl2303_mod_SOURCES): New variable.
 
3721
        (usbserial_pl2303_mod_CFLAGS): Likewise.
 
3722
        (usbserial_pl2303_mod_LDFLAGS): Likewise.
 
3723
        (pkglib_MODULES): Add usbserial_ftdi.mod.
 
3724
        (usbserial_ftdi_mod_SOURCES): New variable.
 
3725
        (usbserial_ftdi_mod_CFLAGS): Likewise.
 
3726
        (usbserial_ftdi_mod_LDFLAGS): Likewise.
 
3727
        (pkglib_MODULES): Add serial.mod.
 
3728
        (serial_mod_SOURCES): New variable.
 
3729
        (serial_mod_CFLAGS): Likewise.
 
3730
        (serial_mod_LDFLAGS): Likewise.
 
3731
        * conf/i386-pc.rmk: Likewise.
 
3732
        * conf/mips-yeeloong.rmk: Likewise.
 
3733
        * conf/i386.rmk (serial_mod_SOURCES): Add term/ns8250.c.
 
3734
        * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
 
3735
        * disk/usbms.c (first_available_slot): New variable.
 
3736
        (grub_usbms_attach): Don't reuse free slots due to potential cache
 
3737
        problems.
 
3738
        * include/grub/serial.h: Moved to ..
 
3739
        * include/grub/ns8250.h: ...this.
 
3740
        * include/grub/serial.h: New file.
 
3741
        * include/grub/term.h (grub_term_poll_usb): New variable.
 
3742
        * include/grub/terminfo.h (grub_terminfo_input_state): Pass term to
 
3743
        readkey. All users updated.
 
3744
        (grub_terminfo_output_state): Pass term to put.
 
3745
        * include/grub/usb.h (GRUB_USB_REQTYPE): New enum.
 
3746
        (grub_usb_controller_dev): Add timeout and actual arguments to
 
3747
        transfer. All users updated.
 
3748
        (grub_usb_interface): New field detach_data.
 
3749
        (grub_usb_device): New fields children and nports.
 
3750
        (grub_usb_ep_type_t): New type.
 
3751
        (grub_usb_get_ep_type): New function.
 
3752
        (grub_usb_bulk_read_extended): Likewise.
 
3753
        * include/grub/usbdesc.h (grub_usb_desc): New type.
 
3754
        * include/grub/usbserial.h: New file.
 
3755
        * include/grub/usbtrans.h (grub_usb_transaction): New field preceding.
 
3756
        * kern/term.c (grub_term_poll_usb): New variable.
 
3757
        (grub_getkey): Call grub_term_poll_usb if set.
 
3758
        (grub_checkkey): Likewise.
 
3759
        (grub_getkeystatus): Likewise.
 
3760
        * term/serial.c: Moved controller-specific parts to ...
 
3761
        * term/ns8250.c: ... here.
 
3762
        * term/serial.c: Mostly rewritten.
 
3763
        * term/usb_keyboard.c: Reorganised to use GET_REPORT only on attaching
 
3764
        according to spec.
 
3765
 
 
3766
2010-08-20  Robert Millan  <rmh@gnu.org>
 
3767
 
 
3768
        Make kFreeBSD code more generic to support ext2fs as root, ufs as
 
3769
        a separate module and maybe other interesting combinations.
 
3770
 
 
3771
        * util/grub.d/10_kfreebsd.in (load_kfreebsd_module): New function.
 
3772
        (kfreebsd_entry): Use load_kfreebsd_module() to load modules.
 
3773
        (kfreebsd_entry): Add generic filesystem module load routine.
 
3774
        Map GRUB `ext2' to kFreeBSD `ext2fs'.
 
3775
 
 
3776
2010-08-20  Colin Watson  <cjwatson@ubuntu.com>
 
3777
 
 
3778
        * commands/i386/pc/sendkey.c (keysym_table): Rename "numlock" to
 
3779
        "numcenter" (I misunderstood the purpose of this entry).
 
3780
        * docs/grub.texi (sendkey): Likewise.
 
3781
 
 
3782
2010-08-20  Colin Watson  <cjwatson@ubuntu.com>
 
3783
 
 
3784
        * commands/i386/pc/sendkey.c (options): Remove "keep" from all
 
3785
        status flag options; simply omitting the option is equivalent and
 
3786
        simpler.  Rename "wait" to "pause".  Rename "sysreq" to "sysrq".
 
3787
        (keysym_table): Rename "num5numlock" to "numlock".
 
3788
        (grub_cmd_sendkey): Reinitialise `andmask' and `ormask', so that we
 
3789
        can uniformly say that only the last of multiple `sendkey'
 
3790
        invocations has any effect.
 
3791
        * docs/grub.texi (sendkey): New section.
 
3792
 
 
3793
2010-08-19  Colin Watson  <cjwatson@ubuntu.com>
 
3794
 
 
3795
        * commands/i386/pc/sendkey.c (options): Fix three typos.
 
3796
 
 
3797
2010-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
3798
 
 
3799
        Implement sendkey support.
 
3800
 
 
3801
        * commands/i386/pc/sendkey.c: New file.
 
3802
        * conf/i386-pc.rmk (pkglib_MODULES): Add sendkey.mod.
 
3803
        (sendkey_mod_SOURCES): New variable.
 
3804
        (sendkey_mod_CFLAGS): Likewise.
 
3805
        (sendkey_mod_LDFLAGS): Likewise.
 
3806
 
 
3807
2010-08-18  Colin Watson  <cjwatson@ubuntu.com>
 
3808
 
 
3809
        * configure.ac: Move AM_INIT_AUTOMAKE after AC_CANONICAL_TARGET to
 
3810
        fix warnings from Autoconf.
 
3811
 
 
3812
2010-08-18  Colin Watson  <cjwatson@ubuntu.com>
 
3813
 
 
3814
        * acinclude.m4 (grub_ASM_USCORE): Use a more accurate grep pattern,
 
3815
        to avoid false positives with some assemblers that output things
 
3816
        like "someprefix_func" as part of their output.
 
3817
 
 
3818
2010-08-15  Robert Millan  <rmh@gnu.org>
 
3819
 
 
3820
        * kern/emu/misc.c (grub_get_libzfs_handle): Handle libzfs_init()
 
3821
        errors.
 
3822
        * kern/emu/getroot.c (find_root_device_from_libzfs): Handle
 
3823
        grub_get_libzfs_handle() errors.
 
3824
 
 
3825
2010-08-14  Robert Millan  <rmh@gnu.org>
 
3826
 
 
3827
        * kern/emu/misc.c (grub_find_zpool_from_dir): Abort function if
 
3828
        filesystem is not ZFS.
 
3829
 
 
3830
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
 
3831
 
 
3832
        Fix for misspelled color names defaulting to black/black (bug
 
3833
        reported by Doug Nazar)
 
3834
 
 
3835
        * include/grub/normal.h (grub_parse_color_name_pair): Add return
 
3836
        status to prototype.
 
3837
        * normal/color.c (grub_parse_color_name_pair): Return failure
 
3838
        status.
 
3839
        (grub_env_write_color_normal): Ignore bad color names.
 
3840
        (grub_env_write_color_highlight): Likewise.
 
3841
        * normal/main.c (GRUB_MOD_INIT): Set default color names.
 
3842
 
 
3843
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
 
3844
 
 
3845
        "shift" command support to GRUB script.
 
3846
 
 
3847
        * include/grub/script_sh.h (grub_script_shift): New prototype.
 
3848
        * script/execute.c (grub_script_shift): New function.
 
3849
        * script/main.c (grub_script_init): Register shift command.
 
3850
        (grub_script_fini): Unregister shift command.
 
3851
        * util/grub-script-check.c (grub_script_cmd_shift): New function.
 
3852
 
 
3853
        * tests/grub_script_shift.in: New testcase.
 
3854
        * conf/tests.rmk: Rules for new testcase.
 
3855
 
 
3856
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
 
3857
 
 
3858
        "continue" command support to GRUB script.
 
3859
 
 
3860
        * script/execute.c (grub_script_execute_cmdwhile): Continue support.
 
3861
        (grub_script_break): Continue support.
 
3862
        * script/main.c (grub_script_init): Register continue command.
 
3863
        (grub_script_fini): Unregister continue command.
 
3864
 
 
3865
        * tests/grub_script_continue.in: New testcase.
 
3866
        * conf/tests.rmk: Rules for new testcase.
 
3867
 
 
3868
2010-08-12  BVK Chaitanya  <bvk@dbook>
 
3869
 
 
3870
        "break" command support to GRUB script.
 
3871
 
 
3872
        * conf/common.rmk: Rule updates to grub-script-check.
 
3873
        * include/grub/misc.h (grub_min): New function.
 
3874
        * include/grub/script_sh.h (grub_script_init): New prototype.
 
3875
        (grub_script_fini): New prototype.
 
3876
        (grub_script_break): New prototype.
 
3877
        * script/main.c (grub_script_init): New function.
 
3878
        (grub_script_fini): New function.
 
3879
        * script/execute.c (grub_script_break): New function.
 
3880
        * normal/main.c: Calls to grub_script_{init,fini}.
 
3881
        * util/grub-script-check.c (grub_script_break): New function.
 
3882
 
 
3883
        * tests/grub_script_break.in: New testcase.
 
3884
        * conf/tests.rmk: Rules for new test case.
 
3885
 
 
3886
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
 
3887
 
 
3888
        Function parameters support to GRUB script.
 
3889
 
 
3890
        * script/yylex.l (VARIABLE): Regular expression update.
 
3891
        * script/function.c (grub_script_function_call): Moved ...
 
3892
        * script/execute.c (grub_script_function_call): ... to here.
 
3893
        (grub_script_execute_arglist_to_argv): Removed.
 
3894
        (grub_script_arglist_to_argv): New function.
 
3895
        * script/argv.c: New file.
 
3896
        (grub_script_argv_free): New function.
 
3897
        (grub_script_argv_next): Likewise.
 
3898
        (grub_script_argv_append): Likewise.
 
3899
        (grub_script_argv_split_append): Likewise.
 
3900
        * include/grub/script_sh.h (grub_script_argv): New struct.
 
3901
        (grub_script_argv_free): New function.
 
3902
        (grub_script_argv_next): Likewise.
 
3903
        (grub_script_argv_append): Likewise.
 
3904
        (grub_script_argv_split_append): Likewise.
 
3905
 
 
3906
        * conf/common.rmk (normal.mod): New source script/argv.c.
 
3907
 
 
3908
        * tests/grub_script_echo1.in: More tests.
 
3909
        * tests/grub_script_vars1.in: Likewise.
 
3910
        * tests/grub_script_functions.in: New test case.
 
3911
        * conf/tests.rmk: Rules for new testcase.
 
3912
 
 
3913
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
 
3914
 
 
3915
        Remove grub_script_cmdblock struct.
 
3916
 
 
3917
        * include/grub/script_sh.h: Remove grub_script_cmdblock.
 
3918
        * script/parser.y: Likewise.
 
3919
        * script/execute.c: Rename cmdblock suffix to cmdlist.
 
3920
        * script/script.c: Likewise.
 
3921
        * util/grub-script-check.c: Likewise.
 
3922
 
 
3923
2010-08-11  Yves Blusseau  <blusseau@zetam.org>
 
3924
 
 
3925
        * .bzrignore: add grub-macho2img
 
3926
 
 
3927
2010-08-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
3928
 
 
3929
        * kern/i386/qemu/init.c (grub_qemu_init_cirrus): Fix compilation error.
 
3930
 
 
3931
2010-08-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
3932
 
 
3933
        Remove the dump of sm712 initialisation sequence.
 
3934
 
 
3935
        * include/grub/pci.h (GRUB_PCI_CLASS_SUBCLASS_VGA): New const.
 
3936
        * include/grub/vga.h (GRUB_VGA_IO_ARX_READ): New register.
 
3937
        (GRUB_VGA_IO_MISC_WRITE): Likewise.
 
3938
        (GRUB_VGA_CR_*): Added many registers.
 
3939
        (GRUB_VGA_SR_*): Likewise.
 
3940
        (GRUB_VGA_GR_*): Likewise.
 
3941
        (grub_vga_write_arx): New function.
 
3942
        (grub_video_hw_config): New struct.
 
3943
        (grub_vga_set_geometry): New function.
 
3944
        * kern/i386/qemu/init.c (load_palette): Use grub_vga_write_arx and
 
3945
        GRUB_PCI_CLASS_SUBCLASS_VGA.
 
3946
        * video/cirrus.c (grub_video_cirrus_setup): Use grub_vga_set_geometry.
 
3947
        * video/sm712.c (grub_sm712_write_reg): New function
 
3948
        (grub_sm712_read_reg): Likewise.
 
3949
        (grub_sm712_sr_write): Likewise.
 
3950
        (grub_sm712_gr_write): Likewise.
 
3951
        (grub_sm712_cr_write): Likewise.
 
3952
        (grub_sm712_write_arx): Likewise.
 
3953
        (grub_sm712_cr_shadow_write): Likewise.
 
3954
        (grub_sm712_write_dda_lookup): Likewise.
 
3955
        (grub_video_sm712_setup): Initialise the video rather then
 
3956
        blindly replay the dump.
 
3957
        (main) [TEST]: Add a routine to be able to compile as standalone for
 
3958
        tests.
 
3959
        * video/sm712_init.c (sm712_init): Removed.
 
3960
        (sm712_sr_seq1): New array.
 
3961
        (sm712_sr_seq2): Likewise.
 
3962
 
 
3963
2010-08-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
3964
 
 
3965
        * include/grub/vga.h: Add missing grub/pci.h include.
 
3966
 
 
3967
2010-08-10  Yves Blusseau  <blusseau@zetam.org>
 
3968
 
 
3969
        * util/grub-macho2img.c (main): fix typo
 
3970
 
 
3971
2010-08-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
3972
 
 
3973
        * include/grub/vga.h (grub_vga_gr_write): Add GRUB_MACHINE_PCI_IO_BASE.
 
3974
        (grub_vga_gr_read): Likewise.
 
3975
        (grub_vga_cr_write): Likewise.
 
3976
        (grub_vga_cr_read): Likewise.
 
3977
        (grub_vga_sr_write): Likewise.
 
3978
        (grub_vga_sr_read): Likewise.
 
3979
        (grub_vga_palette_read): Likewise.
 
3980
        (grub_vga_palette_write): Likewise.
 
3981
        * video/sm712.c (GRUB_SM712_REG_BASE): New definition.
 
3982
        (grub_sm712_sr_read): New function.
 
3983
        (grub_video_sm712_setup): Use grub_vga_sr_write and grub_sm712_sr_read.
 
3984
        * video/sm712_init.c (sm712_init): Substract GRUB_MACHINE_PCI_IO_BASE.
 
3985
 
 
3986
2010-08-09  Robert Millan  <rmh@gnu.org>
 
3987
 
 
3988
        * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Filter
 
3989
        out unused variables on non-ZFS build.
 
3990
 
 
3991
2010-08-08  Robert Millan  <rmh@gnu.org>
 
3992
 
 
3993
        Fix path generation for sub-filesystems in ZFS.
 
3994
 
 
3995
        * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Add
 
3996
        missing slash.
 
3997
 
 
3998
2010-08-08  Robert Millan  <rmh@gnu.org>
 
3999
 
 
4000
        * util/grub-fstest.c (read_file, cmd_cmp): Improve error message.
 
4001
 
 
4002
2010-08-08  Robert Millan  <rmh@gnu.org>
 
4003
 
 
4004
        * util/grub.d/10_kfreebsd.in: When files required for ZFS do not
 
4005
        exist, issue a proper error message (rely on `ls' for translated
 
4006
        strings).
 
4007
 
 
4008
2010-08-08  Robert Millan  <rmh@gnu.org>
 
4009
 
 
4010
        Fix grub-probe invocation.
 
4011
 
 
4012
        * util/grub.d/10_kfreebsd.in: s/label/fs_label/g.
 
4013
 
 
4014
2010-08-04  Robert Millan  <rmh@gnu.org>
 
4015
 
 
4016
        * configure.ac: Remove checks for getfsstat() and getmntany().
 
4017
        Add checks for `<sys/param.h>' and `<sys/mount.h>'.
 
4018
        * kern/emu/misc.c [HAVE_GETMNTANY]: Remove `<sys/mnttab.h>'.
 
4019
        [HAVE_SYS_PARAM_H]: Include `<sys/param.h>'.
 
4020
        [HAVE_SYS_MOUNT_H]: Include `<sys/mount.h>'.
 
4021
        [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_mount_point_from_dir): Remove
 
4022
        function.
 
4023
        (grub_find_zpool_from_dir): Use statfs() instead of indirect matching
 
4024
        via find_mount_point_from_dir() and getfsstat() / getmntany().
 
4025
 
 
4026
2010-08-04  Robert Millan  <rmh@gnu.org>
 
4027
 
 
4028
        * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
 
4029
        (grub_find_zpool_from_mount_point): Merge into ...
 
4030
        (grub_find_zpool_from_dir): ... this.
 
4031
        * kern/emu/misc.c: Likewise.
 
4032
 
 
4033
        * kern/emu/misc.c
 
4034
        (grub_make_system_path_relative_to_its_root): Replace
 
4035
        grub_find_mount_point_from_dir() / grub_find_zpool_from_mount_point()
 
4036
        with grub_find_zpool_from_dir().
 
4037
        * kern/emu/getroot.c (find_root_device_from_libzfs): Likewise.
 
4038
 
 
4039
2010-08-04  Robert Millan  <rmh@gnu.org>
 
4040
 
 
4041
        Support OpenSolaris in ZFS device resolution.
 
4042
 
 
4043
        * configure.ac: Check for getmntany().
 
4044
        * kern/emu/misc.c [HAVE_GETMNTANY]: Include `<sys/mnttab.h>'.
 
4045
        [HAVE_GETMNTANY] (grub_find_zpool_from_mount_point): Add OpenSolaris
 
4046
        support.
 
4047
 
 
4048
2010-08-03  Robert Millan  <rmh@gnu.org>
 
4049
 
 
4050
        Fix grub-emu build.
 
4051
 
 
4052
        * include/grub/util/misc.h: Move `<grub/util/libzfs.h>' to ...
 
4053
        * include/grub/emu/misc.h: ... here.
 
4054
 
 
4055
        * include/grub/util/misc.h (grub_get_libzfs_handle): Move function ...
 
4056
        * include/grub/emu/misc.h (grub_get_libzfs_handle): ... here.
 
4057
 
 
4058
        * util/misc.c: Remove `<grub/util/libzfs.h>'.
 
4059
        [HAVE_LIBZFS] (libzfs_handle, fini_libzfs)
 
4060
        (grub_get_libzfs_handle): Move to ...
 
4061
        * kern/emu/misc.c [HAVE_LIBZFS] (__libzfs_handle, fini_libzfs)
 
4062
        (grub_get_libzfs_handle): ... here.
 
4063
 
 
4064
2010-08-03  BVK Chaitanya  <bvk.groups@gmail.com>
 
4065
 
 
4066
        * script/execute.c (grub_script_execute_cmdline): Check for NULL
 
4067
        as command name case.
 
4068
 
 
4069
2010-08-02  Colin Watson  <cjwatson@ubuntu.com>
 
4070
 
 
4071
        * disk/raid.c (insert_array): Select unique numbers for named arrays
 
4072
        as well, for use as keys in the disk cache.
 
4073
 
 
4074
2010-08-01  Robert Millan  <rmh@gnu.org>
 
4075
 
 
4076
        * util/grub.d/10_kfreebsd.in: Initialize ${kfreebsd_device} as the
 
4077
        kFreeBSD device name, except on ZFS where the filesystem label is
 
4078
        used.
 
4079
        (kfreebsd_entry): On ZFS root, load `opensolaris.ko', `zfs.ko' and
 
4080
        `/boot/zfs/zpool.cache'.
 
4081
        Set mountfrom kernel variable using ${kfreebsd_device}.
 
4082
 
 
4083
2010-08-01  Robert Millan  <rmh@gnu.org>
 
4084
 
 
4085
        Make it even harder to use uninitialized `libzfs_handle' (and
 
4086
        make the interface a bit simpler).
 
4087
 
 
4088
        * include/grub/util/misc.h (grub_util_init_libzfs)
 
4089
        (libzfs_handle): Remove.
 
4090
        (grub_get_libzfs_handle): New prototype.
 
4091
 
 
4092
        * util/misc.c [HAVE_LIBZFS] (libzfs_handle): Add `static'
 
4093
        attribute.
 
4094
        (grub_util_init_libzfs): Remove.
 
4095
        (grub_get_libzfs_handle): New function.
 
4096
 
 
4097
        * kern/emu/getroot.c (find_root_device_from_libzfs): Use
 
4098
        grub_get_libzfs_handle() to obtain a libzfs handle instead of
 
4099
        accessing `libzfs_handle' directly.
 
4100
 
 
4101
2010-08-01  Robert Millan  <rmh@gnu.org>
 
4102
 
 
4103
        * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
 
4104
        (grub_find_zpool_from_mount_point): New function prototypes.
 
4105
 
 
4106
        * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
 
4107
        * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
 
4108
 
 
4109
        * kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
 
4110
        * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this.  Remove
 
4111
        `static' attribute.
 
4112
 
 
4113
        * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
 
4114
        finding zpool from mount point into ...
 
4115
        * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
 
4116
 
 
4117
        * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
 
4118
        requested path is part of a ZFS pool, use
 
4119
        grub_find_zpool_from_mount_point() to detect its filesystem name,
 
4120
        and generate a path with `/fsname@path' syntax.
 
4121
 
 
4122
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
 
4123
 
 
4124
        * include/grub/util/libzfs.h (libzfs_init): Set argument list to
 
4125
        (void) rather than () so that this is a proper prototype.
 
4126
 
 
4127
2010-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
4128
 
 
4129
        * lib/arg.c (grub_arg_show_help): Add the necessary spacing.
 
4130
 
 
4131
2010-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
4132
 
 
4133
        * kern/emu/getroot.c (find_mount_point_from_dir): Compile only if
 
4134
        [HAVE_LIBZFS && HAVE_LIBNVPAIR]
 
4135
 
 
4136
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
 
4137
 
 
4138
        * util/grub-mkrescue.in: Remove ${efi_dir} after building efi.img.
 
4139
 
 
4140
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
 
4141
 
 
4142
        * script/yylex.l (NAME): Remove [:digit:], redundant with [:alnum:].
 
4143
 
 
4144
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
 
4145
 
 
4146
        * docs/grub.texi (Simple configuration): Document GRUB_CMDLINE_XEN
 
4147
        and GRUB_CMDLINE_XEN_DEFAULT.  Recommend setting
 
4148
        GRUB_GFXPAYLOAD_LINUX=text rather than unsetting it in order to
 
4149
        disable gfxpayload.
 
4150
        (Shell-like scripting): Add real content.
 
4151
        (Serial terminal): Suggest `terminal_input serial; terminal_output
 
4152
        serial' rather than putting the two commands on separate lines,
 
4153
        since console input will be inoperative after the first command.
 
4154
        (menuentry): Document --class, --users, and --hotkey options.
 
4155
        (terminfo): Describe what `visually-ordered UTF-8' means (thanks,
 
4156
        Vladimir Serbinenko).
 
4157
 
 
4158
2010-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
4159
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
 
4160
 
 
4161
        * kern/misc.c (grub_memset): Optimise to reduce cache stalls.
 
4162
 
 
4163
2010-08-01  Robert Millan  <rmh@gnu.org>
 
4164
 
 
4165
        * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
 
4166
        (grub_find_zpool_from_mount_point): New function prototypes.
 
4167
 
 
4168
        * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
 
4169
        * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
 
4170
 
 
4171
        * kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
 
4172
        * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this.  Remove
 
4173
        `static' attribute.
 
4174
 
 
4175
        * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
 
4176
        finding zpool from mount point into ...
 
4177
        * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
 
4178
 
 
4179
        * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
 
4180
        requested path is part of a ZFS pool, use
 
4181
        grub_find_zpool_from_mount_point() to detect its filesystem name,
 
4182
        and generate a path with `/fsname@path' syntax.
 
4183
 
 
4184
2010-08-01  Robert Millan  <rmh@gnu.org>
 
4185
 
 
4186
        Prevent accidental use of uninitialized libzfs_handle.
 
4187
 
 
4188
        * util/grub-probe.c (main): Move grub_util_init_libzfs() call to ...
 
4189
        * kern/emu/getroot.c (find_root_device_from_libzfs): ... here.
 
4190
        * util/misc.c (grub_util_init_libzfs): Make this function idempotent.
 
4191
 
 
4192
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
 
4193
 
 
4194
        * util/grub.d/20_linux_xen.in: Don't use UUID for LVM root (matching
 
4195
        util/grub.d/10_linux.in).  Fixes Debian bug #591093.
 
4196
 
 
4197
2010-08-01  Robert Millan  <rmh@gnu.org>
 
4198
 
 
4199
        * kern/emu/getroot.c: Include `<grub/util/misc.h>'.
 
4200
 
 
4201
2010-07-31  Robert Millan  <rmh@gnu.org>
 
4202
 
 
4203
        * util/grub.d/10_kfreebsd.in: Make module handling more generic.
 
4204
 
 
4205
2010-07-31  Robert Millan  <rmh@gnu.org>
 
4206
 
 
4207
        * kern/emu/misc.c: Add missing license header.
 
4208
 
 
4209
2010-07-31  Robert Millan  <rmh@gnu.org>
 
4210
 
 
4211
        * configure.ac: Check for `libzfs.h' and `libnvpair.h'.
 
4212
 
 
4213
        * include/grub/util/libnvpair.h: Include `<config.h>'.
 
4214
        [HAVE_LIBNVPAIR_H]: Include `<libnvpair.h>' instead of
 
4215
        declaring libnvpair prototypes ourselves.
 
4216
        * include/grub/util/libzfs.h: Include `<config.h>'.
 
4217
        [HAVE_LIBZFS_H]: Include `<libzfs.h>' instead of
 
4218
        declaring libzfs prototypes ourselves.
 
4219
 
 
4220
        (libzfs_handle): Moved to ...
 
4221
        * include/grub/util/misc.h (libzfs_handle): ... here.
 
4222
        Include `<grub/util/libzfs.h>'.
 
4223
 
 
4224
2010-07-30  Robert Millan  <rmh@gnu.org>
 
4225
 
 
4226
        * include/grub/emu/misc.h: Add missing license header.
 
4227
 
 
4228
2010-07-30  Robert Millan  <rmh@gnu.org>
 
4229
 
 
4230
        Enable `grub-probe -t device' resolution on ZFS.
 
4231
 
 
4232
        * configure.ac: Check for getfsstat(), libzfs and libnvpair.
 
4233
        * include/grub/util/libnvpair.h: New file.
 
4234
        * include/grub/util/libzfs.h: New file.
 
4235
 
 
4236
        * kern/emu/getroot.c: Include `<assert.h>' and `<error.h>'.
 
4237
        [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Include `<grub/util/libzfs.h>' and
 
4238
        `<grub/util/libnvpair.h>'.
 
4239
        [HAVE_GETFSSTAT]: Include `<sys/mount.h>'.
 
4240
 
 
4241
        (find_mount_point_from_dir): New static function.
 
4242
        [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_root_device_from_libzfs): New
 
4243
        function.
 
4244
        [HAVE_LIBZFS && HAVE_LIBNVPAIR] (grub_guess_root_device): Use
 
4245
        find_root_device_from_libzfs() before ressorting to find_root_device().
 
4246
 
 
4247
        * include/grub/util/misc.h (grub_util_init_libzfs): New function
 
4248
        prototype.
 
4249
        * util/misc.c: Include `<grub/util/libzfs.h>'.
 
4250
        (grub_util_init_libzfs): New function.
 
4251
        [HAVE_LIBZFS] (libzfs_handle): New global variable.
 
4252
        [HAVE_LIBZFS] (fini_libzfs): New static function.
 
4253
        (grub_util_init_libzfs): New function.
 
4254
        * util/grub-probe.c (main): Call grub_util_init_libzfs().
 
4255
 
 
4256
2010-07-30  Robert Millan  <rmh@gnu.org>
 
4257
 
 
4258
        * include/grub/emu/misc.h (grub_make_system_path_relative_to_its_root)
 
4259
        (xmalloc, xrealloc, xstrdup, xasprintf): Add
 
4260
        `warn_unused_result' attribute.
 
4261
        * include/grub/misc.h (grub_strdup, grub_strndup, grub_strlen)
 
4262
        (grub_xasprintf, grub_xvasprintf): Likewise.
 
4263
        * include/grub/emu/misc.h (xasprintf): Remove duplicate prototype.
 
4264
 
 
4265
2010-07-29  Robert Millan  <rmh@gnu.org>
 
4266
 
 
4267
        * util/grub-probe.c (PRINT_FS_LABEL): New enum value.
 
4268
        (probe): Handle `PRINT_FS_LABEL'.
 
4269
        (main): Handle `-t fs_label'.
 
4270
 
 
4271
2010-07-29  Robert Millan  <rmh@gnu.org>
 
4272
 
 
4273
        * configure.ac: Remove grub-mkisofs checks.
 
4274
 
 
4275
2010-07-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
4276
 
 
4277
        * util/ieee1275/grub-install.in: Don't use empty grub_device.
 
4278
        Reported by: Lennart Sorensen.
 
4279
 
 
4280
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
4281
 
 
4282
        * util/grub.d/00_header.in: Remove compatibility with terminal.mod
 
4283
        prior to terminal_input/terminal_output separation. It's been over 1.5
 
4284
        years and those versions weren't widely deployed.
 
4285
 
 
4286
2010-07-22  Colin Watson  <cjwatson@ubuntu.com>
 
4287
 
 
4288
        * disk/raid.c (insert_array): Don't count named arrays when looking
 
4289
        for unused array numbers.
 
4290
        Reported and tested by: Michael Guntsche.
 
4291
 
 
4292
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4293
 
 
4294
        * bus/usb/emu/usb.c (grub_usb_poll_devices): Add a dummy
 
4295
        implementation of this so that grub-emu links again, with a note
 
4296
        that this should support hotplugging in the future.
 
4297
 
 
4298
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4299
 
 
4300
        * kern/emu/getroot.c (grub_util_get_grub_dev): Use xasprintf.
 
4301
 
 
4302
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4303
 
 
4304
        * disk/loopback.c (grub_cmd_loopback): Don't leak a grub_file_t
 
4305
        handle on failure.
 
4306
        (grub_loopback_close): Remove empty function.
 
4307
        (grub_loopback_dev): Remove close method.
 
4308
 
 
4309
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4310
 
 
4311
        Disable EFI cursor when the EFI console becomes inactive.
 
4312
 
 
4313
        * term/efi/console.c (grub_efi_console_init): New function.
 
4314
        (grub_efi_console_fini): New function.
 
4315
        (grub_console_term_output): Register init and fini methods.
 
4316
 
 
4317
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
4318
 
 
4319
        * tests/util/grub-shell-tester.in: Remove bashism and declare as
 
4320
        sh script.
 
4321
 
 
4322
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
4323
 
 
4324
        * disk/loopback.c (grub_loopback): Replace filename with file.
 
4325
        (delete_loopback): Handle new semantics.
 
4326
        (grub_cmd_loopback): Likewise.
 
4327
        (grub_loopback_iterate): Likewise.
 
4328
        (grub_loopback_close): Likewise.
 
4329
 
 
4330
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
4331
 
 
4332
        * util/i386/efi/grub-install.in: Revert to platform-specific behaviour
 
4333
        with -p "".
 
4334
        Reported by: Tito Keitel.
 
4335
 
 
4336
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
4337
 
 
4338
        * docs/grub.texi (Naming convention): Document new naming convention.
 
4339
 
 
4340
2010-07-20  Vadim Solomin  <vadic052@gmail.com>
 
4341
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4342
 
 
4343
        Generate device.map in something closer to the old ordering.
 
4344
 
 
4345
        * util/deviceiter.c (struct device): New declaration.
 
4346
        (compare_file_names): Rename to ...
 
4347
        (compare_devices): ... this.  Sort by kernel name in preference to
 
4348
        the stable by-id name, but keep the latter as a fallback comparison.
 
4349
        Update header comment.
 
4350
        (grub_util_iterate_devices) [__linux__]: Construct and sort an array
 
4351
        of `struct device' rather than of plain file names.
 
4352
 
 
4353
2010-07-20  Thomas Frauendorfer  <Thomas.Frauendorfer@googlemail.com>
 
4354
 
 
4355
        * lib/i386/relocator_asm.S [! __x86_64__]: Don't try to disable amd64
 
4356
        on i386.
 
4357
 
 
4358
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
4359
 
 
4360
        * commands/acpi.c (setup_common_tables): Use sizeof instead of
 
4361
        hardcoding size.
 
4362
        (setv1table): Likewise.
 
4363
 
 
4364
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4365
 
 
4366
        * disk/raid.c (insert_array): Use md/%s to name mdadm 1.x devices,
 
4367
        removing the homehost if present.
 
4368
        * kern/emu/getroot.c (get_mdadm_name) [__linux__]: New function.
 
4369
        (grub_util_get_grub_dev): Use md/%s to name mdadm 1.x devices,
 
4370
        removing the homehost if present.
 
4371
        (grub_util_get_grub_dev) [__linux__]: Get the array name from mdadm
 
4372
        if possible.
 
4373
        * util/i386/pc/grub-setup.c (main): Handle md/* devices.
 
4374
 
 
4375
        * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Add start_sector
 
4376
        parameter.  Set its pointer target to 0.
 
4377
        * disk/mdraid_linux.c (grub_mdraid_detect): Add start_sector
 
4378
        parameter.  Set its pointer target to 0 for 0.9 metadata, or to the
 
4379
        `data_offset' value from the superblock for 1.x metadata.
 
4380
        * disk/raid.c (grub_raid_read): Offset reads by the start sector of
 
4381
        data on the device.
 
4382
        (insert_array): Record the start sector of data on the device.
 
4383
        (grub_raid_register): Pass start_sector parameters to
 
4384
        grub_raid_list->detect and insert_array.
 
4385
        * include/grub/raid.h (struct grub_raid_array): Add start_sector
 
4386
        member.
 
4387
        (struct grub_raid): Add start_sector parameter to `detect'.
 
4388
 
 
4389
        * disk/mdraid_linux.c (struct grub_raid_super_1x): Remove
 
4390
        __attribute__ ((packed)), leaving a comment.
 
4391
        (grub_mdraid_detect): Split out 0.9 and 1.x detection to ...
 
4392
        (grub_mdraid_detect_09): ... here and ...
 
4393
        (grub_mdraid_detect_1x): ... here.
 
4394
 
 
4395
2010-07-20  Peter Henn  <peter.henn@web.de>
 
4396
 
 
4397
        * disk/mdraid_linux.c (grub_mdraid_detect): Fix calculation of 1.x
 
4398
        chunk size and disk size, which are already given as sector counts
 
4399
        as distinct from the 0.90 units.  Fetch the correct device number
 
4400
        from the role table instead of using the table index.
 
4401
 
 
4402
2010-07-20  Felix Zielcke  <fzielcke@z-51.de>
 
4403
 
 
4404
        * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Set array->name to NULL.
 
4405
        * disk/mdraid_linux.c (grub_raid_super_1x): New structure.
 
4406
        (WriteMostly1): New macro.
 
4407
        Set array->name to NULL for metadata format 0.90.  Add support for
 
4408
        metadata 1.x.  Fix some comments.
 
4409
        * disk/raid.c (): Add support for name based RAID arrays.  Fix a
 
4410
        few comments.
 
4411
        * util/getroot.c (grub_util_get_grub_dev): Add support for
 
4412
        /dev/md/name style devices.
 
4413
 
 
4414
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
 
4415
 
 
4416
        * .bzrignore: Ignore 20_linux_xen.
 
4417
 
 
4418
2010-07-17  Colin Watson  <cjwatson@ubuntu.com>
 
4419
 
 
4420
        * util/import_unicode.py: Remove unnecessary imports.
 
4421
 
 
4422
2010-07-17  Aleš Nesrsta <starous@volny.cz>
 
4423
 
 
4424
        Hotplugging and USB hub support.
 
4425
 
 
4426
        * bus/usb/ohci.c (grub_ohci_td): Add convenience fields.
 
4427
        (grub_ohci): Likewise.
 
4428
        (GRUB_OHCI_REG_CONTROL_BULK_ENABLE): New definition.
 
4429
        (GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE): Likewise.
 
4430
        (GRUB_OHCI_RESET_CONNECT_CHANGE): Likewise.
 
4431
        (GRUB_OHCI_CTRL_EDS): Likewise.
 
4432
        (GRUB_OHCI_BULK_EDS): Likewise.
 
4433
        (GRUB_OHCI_TDS): Likewise.
 
4434
        (GRUB_OHCI_ED_ADDR_MASK): Likewise.
 
4435
        (grub_ohci_ed_phys2virt): New function.
 
4436
        (grub_ohci_virt_to_phys): Likewise.
 
4437
        (grub_ohci_td_phys2virt): Likewise.
 
4438
        (grub_ohci_td_virt2phys): Likewise.
 
4439
        (grub_ohci_pci_iter): Allocate memory and don't wait for stable
 
4440
        attachment.
 
4441
        (grub_ohci_find_ed): New function.
 
4442
        (grub_ohci_alloc_td): Likewise.
 
4443
        (grub_ohci_free_td): Likewise.
 
4444
        (grub_ohci_free_tds): Likewise.
 
4445
        (grub_ohci_transfer): Use previously allocated memory.
 
4446
        (grub_ohci_portstatus): Reset status changed bit.
 
4447
        (grub_ohci_detect_dev): Supply status changed.
 
4448
        (grub_ohci_fini_hw): Free memory.
 
4449
        (grub_ohci_restore_hw): Reallocate memory.
 
4450
        * bus/usb/uhci.c (grub_uhci_portstatus): Don't reset on disable.
 
4451
        Reset status change.
 
4452
        (grub_uhci_detect_dev): Supply status_change.
 
4453
        * bus/usb/usb.c (attach_hooks): New var.
 
4454
        (grub_usb_device_attach): New function.
 
4455
        (grub_usb_register_attach_hook_class): Likewise.
 
4456
        (grub_usb_unregister_attach_hook_class): Likewise.
 
4457
        * bus/usb/usbhub.c (grub_usb_hub_add_dev): Handle errors correctly.
 
4458
        (grub_usb_add_hub): Reset connection changed bit.
 
4459
        (attach_root_port): New function.
 
4460
        (grub_usb_root_hub): Likewise.
 
4461
        (poll_nonroot_hub): Likewise.
 
4462
        (grub_usb_poll_devices): Likewise.
 
4463
        * commands/usbtest.c (grub_cmd_usbtest): Poll devices before listing.
 
4464
        * disk/usbms.c (grub_usbms_open): Use device hooks.
 
4465
        (grub_usbms_iterate) :Poll devices.
 
4466
        (grub_usbms_finddevs): Split into ...
 
4467
        (grub_usbms_attach): ... this ...
 
4468
        (grub_usbms_attach): ... and this.
 
4469
        * include/grub/usb.h (grub_usb_controller_dev): Supply status_changed
 
4470
        in detect_dev.
 
4471
        (grub_usb_interface): New fields attached and detach_hook.
 
4472
        (grub_usb_attach_hook_class): New type.
 
4473
        (grub_usb_attach_desc): New struct.
 
4474
        (grub_usb_register_attach_hook_class): New function.
 
4475
        (grub_usb_unregister_attach_hook_class): Likewise.
 
4476
        (grub_usb_poll_devices): Likewise.
 
4477
        (grub_usb_device_attach): Likewise.
 
4478
        * include/grub/usbtrans.h (GRUB_USB_HUB_FEATURE_C_CONNECTED): New const.
 
4479
        (GRUB_USB_HUB_STATUS_C_CONNECTED): Likewise.
 
4480
 
 
4481
2010-07-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
4482
 
 
4483
        * include/grub/bsdlabel.h (GRUB_PC_PARTITION_BSD_LABEL_WHOLE_DISK_PARTITION): New definition.
 
4484
        * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Use FreeBSD
 
4485
        delta determination style. Works with most NetBSD partitions too.
 
4486
 
 
4487
2010-07-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
4488
 
 
4489
        * kern/partition.c [GRUB_UTIL]: Add missing util/misc.h inclusion.
 
4490
        * partmap/bsdlabel.c [GRUB_UTIL]: Likewise.
 
4491
 
 
4492
2010-07-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
4493
 
 
4494
        * disk/scsi.c (grub_scsi_open): Fix incorrect pointer dereference.
 
4495
 
 
4496
2010-07-14  Anton Blanchard  <anton@samba.org>
 
4497
 
 
4498
        * loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Do not reject
 
4499
        ET_DYN files.
 
4500
 
 
4501
2010-07-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
4502
 
 
4503
        * Makefile.in: Use the substituted @USE_NLS@ instead of ENABLE_NLS.
 
4504
 
 
4505
2010-07-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
4506
 
 
4507
        * kern/partition.c (grub_partition_check_containment): New function to
 
4508
        check that a partition is physically contained in a parent.  Since
 
4509
        offsets are relative (and non-negative), this reduces to checking that
 
4510
        the partition ends before its parent.
 
4511
        (grub_partition_map_probe): Discard out-of-range sub-partitions.
 
4512
        (grub_partition_iterate): Likewise.
 
4513
        * include/grub/partition.h (grub_partition_map): Slightly more detailed
 
4514
        comments.
 
4515
        * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Discard
 
4516
        partitions that start before their parent, and add debug printfs.
 
4517
 
 
4518
2010-07-13  Colin Watson  <cjwatson@ubuntu.com>
 
4519
 
 
4520
        * Makefile.in (.SUFFIX): Spell correctly, as ...
 
4521
        (.SUFFIXES): ... this.  Fixes bug where `make foo' (where foo is a
 
4522
        bare module name without `.mod', e.g. `test') tried to invoke a
 
4523
        Modula-2 compiler.
 
4524
 
 
4525
2010-07-13  Colin Watson  <cjwatson@ubuntu.com>
 
4526
 
 
4527
        * README: Point to the Info manual.
 
4528
 
 
4529
2010-07-13  Jiro SEKIBA <jir@unicus.jp>
 
4530
 
 
4531
        * fs/nilfs2.c: fix macro NILFS_2ND_SUPER_BLOCK to calculate
 
4532
        2nd superblock position from partition size.
 
4533
 
 
4534
2010-07-10  Colin Watson  <cjwatson@ubuntu.com>
 
4535
 
 
4536
        * Makefile.in (MAINTAINER_CLEANFILES): Remove
 
4537
        unicode/UnicodeData.txt, unicode/BidiMirroring.txt, and
 
4538
        unicode/ArabicShaping.txt again; these are inputs to autogen.sh, not
 
4539
        outputs.
 
4540
 
 
4541
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
4542
 
 
4543
        Restructure SCSI .id handling.
 
4544
        Reported and tested by: Aleš Nesrsta.
 
4545
 
 
4546
        * disk/ata.c (grub_atapi_close): Removed. All users updated.
 
4547
        (grub_atapi_dev): Changed .name to "ata". New field .id.
 
4548
        * disk/usbms.c (grub_usbms_close): Removed. All users updated.
 
4549
        (grub_usbms_dev): New field .id.
 
4550
        * disk/scsi.c (grub_scsi_iterate): Generate name.
 
4551
        (grub_scsi_open): Parse name.
 
4552
        * include/grub/scsi.h (grub_make_scsi_id): New function.
 
4553
        (grub_scsi_dev): Change iterate and open to number instead of naming
 
4554
        busses. All users updated.
 
4555
        (grub_scsi): Remove name. Add .bus.
 
4556
 
 
4557
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
4558
 
 
4559
        * commands/help.c (grub_cmd_help): Fix a typo.
 
4560
 
 
4561
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
4562
 
 
4563
        * normal/term.c (put_glyphs_terminal): Fix state->num_lines counting.
 
4564
        Reported and tested by: Colin Watson.
 
4565
 
 
4566
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
4567
 
 
4568
        * util/grub-mkrescue.in: Don't use tar GNU-ism since it's not necessary
 
4569
        in this context.
 
4570
 
 
4571
2010-07-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
4572
 
 
4573
        * tests/util/grub-shell.in: Remove bashisms and declare as sh script.
 
4574
 
 
4575
2010-07-07  Colin Watson  <cjwatson@ubuntu.com>
 
4576
 
 
4577
        * term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix
 
4578
        indentation.
 
4579
 
 
4580
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
 
4581
 
 
4582
        * conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c
 
4583
        and disk/raid6_recover.c.
 
4584
        * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
 
4585
        * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
 
4586
 
 
4587
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
 
4588
 
 
4589
        * term/gfxterm.c (repaint_schedulded): Rename to ...
 
4590
        (repaint_scheduled): ... this.  Update all callers.
 
4591
        (repaint_was_schedulded): Rename to ...
 
4592
        (repaint_was_scheduled): ... this.  Update all callers.
 
4593
 
 
4594
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
 
4595
 
 
4596
        * util/deviceiter.c (grub_util_iterate_devices): Skip MD devices,
 
4597
        which we expect to be handled by upper layers.
 
4598
 
 
4599
2010-07-06  BVK Chaitanya  <bvk.groups@gmail.com>
 
4600
 
 
4601
        * bus/usb/usbhub.c: #include time.h header.
 
4602
 
 
4603
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
 
4604
 
 
4605
        * fs/reiserfs.c (grub_reiserfs_iterate_dir): Zero out first byte of
 
4606
        entry_name also for entries without stat blocks (e.g. ".."); fixes
 
4607
        corruption of the first entry in a directory.
 
4608
 
 
4609
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
 
4610
 
 
4611
        * util/grub.d/00_header.in: Process GRUB_THEME and GRUB_BACKGROUND
 
4612
        after setting gfxterm as the active terminal.  GRUB_BACKGROUND
 
4613
        doesn't work otherwise.
 
4614
 
 
4615
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
 
4616
 
 
4617
        * docs/grub.texi (Features): Update list of supported file systems.
 
4618
        (GNU/Linux): Update for GRUB 2.
 
4619
        (Serial terminal): Remove mention of --disable-serial, which was a
 
4620
        GRUB Legacy configure option.  Update instructions to use
 
4621
        `terminal_input' and `terminal_output' rather than `terminal'.
 
4622
        (Vendor power-on keys): Copy-edit.  Add cross-references to `Simple
 
4623
        configuration' and `Installing GRUB using grub-install'.
 
4624
        (Menu entry editor): Update for GRUB 2.
 
4625
        (terminfo): Add vt100-color, ieee1275, and dumb terminal types.
 
4626
        Document new -a, -u, and -v options.
 
4627
        (initrd): New section.
 
4628
        (initrd16): New section.
 
4629
        (linux): New section.
 
4630
        (linux16): New section.
 
4631
        (search): The `var' argument to `--set' is optional.
 
4632
        (GRUB only offers a rescue shell): Go into a little more detail on
 
4633
        drive ordering.
 
4634
 
 
4635
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
 
4636
 
 
4637
        * Makefile.in: Set LINGUAS to empty if ENABLE_NLS is undefined.
 
4638
 
 
4639
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
 
4640
 
 
4641
        * Makefile.in (MAINTAINER_CLEANFILES): Add unicode/UnicodeData.txt,
 
4642
        unicode/BidiMirroring.txt, unicode/ArabicShaping.txt, and unidata.c.
 
4643
 
 
4644
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
 
4645
 
 
4646
        * util/i386/pc/grub-setup.c (setup): Rename prefix to
 
4647
        install_prefix, in line with install_dos_part and install_bsd_part.
 
4648
        Add new prefix variable, which is copied to install_prefix after
 
4649
        comparing core.img in memory with the one read from disk in the
 
4650
        no-embedding case, and use that rather than overwriting
 
4651
        install_prefix immediately when installing to a partition.
 
4652
        Fixes Debian bug #586621; based on patches by Matt Kraai and M. Vefa
 
4653
        Bicakci.
 
4654
 
 
4655
2010-07-04  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
4656
 
 
4657
        * configure.ac: Avoid == in test command, it's not portable.
 
4658
        * util/grub.d/30_os-prober.in: Likewise.
 
4659
 
 
4660
2010-07-04  Colin Watson  <cjwatson@ubuntu.com>
 
4661
 
 
4662
        * kern/emu/getroot.c [__GNU__]: Include <sys/mman.h> for munmap.
 
4663
 
 
4664
2010-07-04  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
4665
 
 
4666
        * util/i386/pc/grub-setup.c (setup): Do not embed when there are
 
4667
        multiple (top-level) partmaps.
 
4668
 
 
4669
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
4670
 
 
4671
        * util/i386/efi/grub-install.in: Don't use empty grub_device.
 
4672
        Reported by: Tino Keitel.
 
4673
 
 
4674
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
4675
 
 
4676
        Bidi and diacritics support.
 
4677
 
 
4678
        * Makefile.in (widthspec.bin): New target.
 
4679
        (widthspec.h): Likewise.
 
4680
        (TARGET_CFLAGS): Add -DHAVE_UNIFONT_WIDTHSPEC=1 if font was available.
 
4681
        * autogen.sh: Generate unidata.c.
 
4682
        * commands/cat.c (grub_cmd_cat): Don't use grub_putchar.
 
4683
        * commands/ls.c (grub_ls_list_devices): Likewise.
 
4684
        (grub_ls_list_files): Likewise.
 
4685
        * commands/minicmd.c (grub_mini_cmd_cat): Likewise.
 
4686
        (grub_mini_cmd_lsmod): Likewise.
 
4687
        * commands/read.c: Likewise.
 
4688
        * kern/corecmd.c (grub_core_cmd_ls): Likewise.
 
4689
        * kern/rescue_reader.c (grub_rescue_read_line): Likewise.
 
4690
        * lib/arg.c (grub_arg_show_help): Likewise.
 
4691
        * lib/crypto.c (grub_password_get): Likewise.
 
4692
        * normal/auth.c (grub_username_get): Likewise.
 
4693
        * normal/misc.c (grub_normal_print_device_info): Likewise.
 
4694
        * commands/help.c (grub_cmd_help): Use grub_unicode_aglomerate_comb.
 
4695
        * conf/common.rmk (grub_mkfont_SOURCES): Add unidata.c.
 
4696
        (gfxmenu_mod_SOURCES): Add gfxmenu/font.c.
 
4697
        (normal/charset.c_DEPENDENCIES): New variable.
 
4698
        (normal_mod_SOURCES): Add normal/charset.c and unidata.c.
 
4699
        (pkglib_MODULES): Remove charset.mod.
 
4700
        (charset_mod_SOURCES): Removed.
 
4701
        (charset_mod_CFLAGS): Likewise.
 
4702
        (charset_mod_LDFLAGS): Likewise.
 
4703
        (pkglib_MODULES) [ieee1275]: Remove terminfo.mod.
 
4704
        * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Add term/terminfo.c
 
4705
        and term/tparm.c.
 
4706
        * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
 
4707
        * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
 
4708
        (kernel_img_HEADERS): Add terminfo.h.
 
4709
        * font/font.c (ascii_glyph_lookup): Return NULL on failure.
 
4710
        Fill ->font. Reverse ascii bitmaps.
 
4711
        (grub_font_get_xheight): New function.
 
4712
        * font/font.c (grub_font_get_string_width): Moved from here ...
 
4713
        * gfxmenu/font.c (grub_font_get_string_width): ... here.
 
4714
        * font/font.c (grub_font_draw_string): Moved from here ...
 
4715
        * gfxmenu/font.c (grub_font_draw_string): ... here.
 
4716
        * font/font.c (grub_font_dup_glyph): New function.
 
4717
        (grub_font_blit_glyph): Likewise.
 
4718
        (grub_font_blit_glyph_mirror): Likewise.
 
4719
        (blit_comb): Likewise.
 
4720
        (grub_font_construct_dry_run): Likewise.
 
4721
        (grub_font_get_constructed_device_width): Likewise.
 
4722
        (grub_font_construct_glyph): Likewise.
 
4723
        * include/grub/charset.h (grub_ucs4_to_utf8): New proto.
 
4724
        * include/grub/misc.h (grub_utf8_to_ucs4): Moved from here ...
 
4725
        * include/grub/charset.h (grub_utf8_to_ucs4): ... here.
 
4726
        * include/grub/font.h (GRUB_FONT_CODE_CHAR_MASK): New constant.
 
4727
        (GRUB_FONT_CODE_RIGHT_JOINED): Likewise.
 
4728
        (GRUB_FONT_CODE_LEFT_JOINED): Likewise.
 
4729
        (grub_font_get_xheight): New proto.
 
4730
        (grub_font_get_constructed_device_width): Likewise.
 
4731
        (grub_font_construct_glyph): Likewise.
 
4732
        * include/grub/font.h (grub_font_get_string_width): Moved from here ...
 
4733
        * include/grub/gfxmenu_view.h (grub_font_get_string_width): ... here.
 
4734
        * include/grub/font.h (grub_font_draw_string): Moved from here ...
 
4735
        * include/grub/gfxmenu_view.h (grub_font_draw_string): ... here.
 
4736
        * include/grub/i386/vga_common.h (grub_console_putchar): Moved from here..
 
4737
        * include/grub/i386/pc/console.h (grub_console_putchar): ... here.
 
4738
        * include/grub/i386/vga_common.h (grub_console_real_putchar): Removed.
 
4739
        (grub_console_getcharwidth): Likewise.
 
4740
        * include/grub/misc.h (grub_xputs): New proto.
 
4741
        (grub_puts): Inlined.
 
4742
        * include/grub/normal.h (grub_print_ucs4): Add margin specification.
 
4743
        (grub_normal_get_line_counter): Removed.
 
4744
        (grub_install_newline_hook): Likewise.
 
4745
        (grub_normal_get_char_counter): New proto.
 
4746
        (grub_normal_reset_more): Likewise.
 
4747
        (grub_xputs_normal): Likewise.
 
4748
        * include/grub/powerpc/ieee1275/console.h: Removed.
 
4749
        * include/grub/sparc64/ieee1275/console.h: Likewise.
 
4750
        * include/grub/term.h (GRUB_TERM_CODE_TYPE_MASK): New definition.
 
4751
        (GRUB_TERM_CODE_TYPE_ASCII): Likewise.
 
4752
        (GRUB_TERM_CODE_TYPE_CP437): Likewise.
 
4753
        (GRUB_TERM_CODE_TYPE_UTF8_LOGICAL): Likewise.
 
4754
        (GRUB_TERM_CODE_TYPE_UTF8_VISUAL): Likewise.
 
4755
        (GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS): Likewise.
 
4756
        (grub_term_input): Pass reference to self. All users updated.
 
4757
        (grub_term_output): Pass grub_unicode_glyph to putchar and getcharwidth.
 
4758
        Pass reference to self. New fields normal_color, highlight_color and
 
4759
        data. All users updated.
 
4760
        (grub_putchar): Removed.
 
4761
        (grub_putcode): Remove EXPORT_FUNC since it's not in kernel anymore.
 
4762
        (grub_unicode_estimate_width): New function.
 
4763
        (grub_term_getcharwidth): Add defaults.
 
4764
        (GRUB_TERM_DEFAULT_NORMAL_COLOR): New definition.
 
4765
        (GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR): Likewise.
 
4766
        (GRUB_TERM_DEFAULT_STANDARD_COLOR): Likewise.
 
4767
        (grub_cls): Remove EXPORT_FUNC.
 
4768
        (grub_setcolorstate): Inline.
 
4769
        (grub_newline_hook): Removed.
 
4770
        * include/grub/terminfo.h: Rewritten. All users updated.
 
4771
        * include/grub/unicode.h: New file.
 
4772
        * include/grub/video.h (grub_video_signed_rect): New type.
 
4773
        * kern/emu/console.c (grub_console_highlight_color): Removed.
 
4774
        (grub_console_normal_color): Likewise.
 
4775
        (grub_console_standard_color): Made static.
 
4776
        (grub_ncurses_putchar): Remove mapping.
 
4777
        (grub_ncurses_getcharwidth): Removed.
 
4778
        (grub_ncurses_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
 
4779
        (grub_ncurses_setcolor): Removed.
 
4780
        (grub_ncurses_getcolor): Likewise.
 
4781
        * kern/i386/pc/startup.S (grub_console_real_putchar): Renamed to ...
 
4782
        (grub_console_putchar): ... this.
 
4783
        (grub_console_putchar): Handle argument difference.
 
4784
        * kern/ieee1275/init.c (grub_machine_init): Split console_init into
 
4785
        console_init_early and console_init_lately.
 
4786
        * kern/sparc64/ieee1275/init.c (grub_machine_init): Likewise.
 
4787
        * kern/misc.c (grub_puts): Removed.
 
4788
        (grub_vprintf): Store UTF-8 string instead of outputting it directly.
 
4789
        (grub_vsnprintf_real): Remove str = NULL support.
 
4790
        * kern/misc.c (grub_utf8_to_ucs4): Move from here ...
 
4791
        * normal/charset.c (grub_utf8_to_ucs4): ... here.
 
4792
        * kern/term.c (grub_putcode): Renamed to ...
 
4793
        (grub_putcode_dumb): ... this. Pass grub_unicode_glyph instead of code.
 
4794
        (grub_putchar): Removed.
 
4795
        (grub_xputs_dumb): New function.
 
4796
        (grub_xputs): New variable.
 
4797
        * lib/charset.c: Move from here ...
 
4798
        * normal/charset.c: ... to here.
 
4799
        (grub_ucs4_to_utf8): New function.
 
4800
        (grub_ucs4_to_utf8_alloc): Use grub_ucs4_to_utf8.
 
4801
        (join_types): New variable.
 
4802
        (unpack_join): New function.
 
4803
        (bidi_types): New variable.
 
4804
        (unpack_bidi): New function.
 
4805
        (get_bidi_type): Likewise.
 
4806
        (get_join_type): Likewise.
 
4807
        (is_mirrored): Likewise.
 
4808
        (grub_unicode_get_comb_type): Likewise.
 
4809
        (grub_unicode_estimate_width) [HAVE_UNIFONT_WIDTHSPEC]: Likewise.
 
4810
        (is_type_after): Likewise.
 
4811
        (grub_unicode_aglomerate_comb): Likewise.
 
4812
        (bidi_line_wrap): Likewise.
 
4813
        (grub_bidi_line_logical_to_visual): Likewise.
 
4814
        (grub_bidi_logical_to_visual): Likewise.
 
4815
        (grub_unicode_mirror_code): Likewise.
 
4816
        (grub_unicode_shape_code): Likewise.
 
4817
        * normal/cmdline.c (grub_cmdline_get): Reset more counter.
 
4818
        Don't use grub_putchar.
 
4819
        * normal/main.c (grub_normal_init_page): Use grub_putcode.
 
4820
        (grub_normal_reader_init): Likewise.
 
4821
        (grub_xputs_saved): New variable.
 
4822
        (GRUB_MOD_INIT): Set grub_xputs.
 
4823
        (GRUB_MOD_FINI): Restore grub_xputs.
 
4824
        * normal/menu.c (grub_wait_after_message): Don't use grub_putchar.
 
4825
        (menu_init): Avoid printing gfxmenu error.
 
4826
        (show_menu): Use grub_normal_get_char_counter.
 
4827
        * normal/menu_entry.c (update_screen): Fix out-of-array.
 
4828
        (complete): Avoid NULL dereferencing.
 
4829
        * grub_menu_entry_run (grub_menu_entry_run): Don't use putchar.
 
4830
        * normal/menu_text.c (print_spaces): Removed.
 
4831
        (grub_print_ucs4): Likewise.
 
4832
        (grub_print_message_indented): Use grub_print_ucs4.
 
4833
        (print_message): Use grub_putcode.
 
4834
        (print_entry): Hanlde diacritics.
 
4835
        * normal/term.c (term_state): New type.
 
4836
        (grub_more_lines): Removed.
 
4837
        (term_states): New variable.
 
4838
        (grub_normal_line_counter): Renamed to ..
 
4839
        (grub_normal_char_counter): ...this. All users updated.
 
4840
        (grub_normal_get_line_counter): Renamed to ...
 
4841
        (grub_normal_get_char_counter): ... this.
 
4842
        (grub_normal_reset_more): New function.
 
4843
        (process_newline): Removed.
 
4844
        (print_more): New function.
 
4845
        (grub_install_newline_hook): Removed.
 
4846
        (map_code): New function.
 
4847
        (grub_puts_terminal): Use grub_print_ucs4.
 
4848
        (putglyph): New function.
 
4849
        (putcode_real): Likewise.
 
4850
        (grub_putcode): Use putcode_real.
 
4851
        (get_maxwidth): New function.
 
4852
        (get_startwidth): Likewise.
 
4853
        (print_ucs4_terminal): Likewise.
 
4854
        (find_term_state): Likewise.
 
4855
        (put_glyphs_terminal): Likewise.
 
4856
        (print_backlog): Likewise.
 
4857
        (print_ucs4_real): Likewise.
 
4858
        (grub_print_ucs4): Likewise.
 
4859
        (grub_xputs_normal): Likewise.
 
4860
        * term/efi/console.c (grub_console_putchar): Output diacritics.
 
4861
        (grub_console_getcharwidth): Removed.
 
4862
        (grub_console_term_output): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
 
4863
        * term/gfxterm.c (clear_char): Free chars.
 
4864
        (scroll_up): Avoid leaking memory.
 
4865
        (grub_gfxterm_putchar): Support diacritics.
 
4866
        (grub_video_term): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
 
4867
        * term/i386/pc/console.c (grub_console_term_output): Declare as
 
4868
        GRUB_TERM_CODE_TYPE_VGA.
 
4869
        * term/i386/pc/vga.c (grub_vga_term): Declare as
 
4870
        GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS.
 
4871
        * term/i386/pc/vga_text.c (grub_vga_text_term): Declare as
 
4872
        GRUB_TERM_CODE_TYPE_VGA.
 
4873
        * term/i386/vga_common.c (map_char): Removed.
 
4874
        (grub_console_putchar): Likewise.
 
4875
        (grub_console_getcharwidth): Likewise.
 
4876
        * term/ieee1275/ofconsole.c: Simplify using terminfo.
 
4877
        (colors): Reordered to match terminfo.
 
4878
        (grub_ofconsole_normal_color): Removed.
 
4879
        (grub_ofconsole_writeesc): Likewise.
 
4880
        (grub_ofconsole_highlight_color): Likewise.
 
4881
        (grub_ofconsole_getcharwidth): Likewise.
 
4882
        (grub_ofconsole_setcolorstate): Likewise.
 
4883
        (grub_ofconsole_setcolor): Likewise.
 
4884
        (grub_ofconsole_getcolor): Likewise.
 
4885
        (grub_ofconsole_readkey): Renamed to ...
 
4886
        (readkey): ... this. Remove escape sequence handling. Return -1 on no
 
4887
        key.
 
4888
        (grub_ofconsole_checkkey): Removed.
 
4889
        (grub_ofconsole_getkey): Likewise.
 
4890
        (grub_ofconsole_getxy): Likewise.
 
4891
        (grub_ofconsole_gotoxy): Likewise.
 
4892
        (grub_ofconsole_cls): Likewise.
 
4893
        (grub_ofconsole_refresh): Likewise.
 
4894
        (grub_ofconsole_terminfo_input): New struct.
 
4895
        (grub_ofconsole_terminfo_output): Likewise.
 
4896
        (grub_ofconsole_term_input): Use terminfo.
 
4897
        (grub_ofconsole_term_output): Likewise.
 
4898
        (grub_console_init): Split into ...
 
4899
        (grub_console_init_early): ...this and ...
 
4900
        (grub_console_init_lately): ...this. Use terminfo.
 
4901
        (grub_ofconsole_putchar): Renamed to ...
 
4902
        (put): ... this. Remove mapping.
 
4903
        (grub_ofconsole_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
 
4904
        * term/serial.c: Simplify using terminfo.
 
4905
        (xpos): Removed.
 
4906
        (ypos): Likewise.
 
4907
        (keep_track): Likewise.
 
4908
        (registered): Likewise.
 
4909
        (input_buf): Likewise.
 
4910
        (npending): Likewise.
 
4911
        (serial_translate_key_sequence): Likewise.
 
4912
        (fill_input_buf): Likewise.
 
4913
        (grub_serial_checkkey): Likewise.
 
4914
        (grub_serial_getkey): Likewise.
 
4915
        (grub_serial_getxy): Likewise.
 
4916
        (grub_serial_gotoxy): Likewise.
 
4917
        (grub_serial_putchar): Likewise.
 
4918
        (grub_serial_cls): Likewise.
 
4919
        (grub_serial_setcolorstate): Likewise.
 
4920
        (grub_serial_setcursor): Likewise.
 
4921
        (serial_hw_init): Use serial_hw_fetch.
 
4922
        (grub_serial_terminfo_input): New variable.
 
4923
        (grub_serial_terminfo_output): Likewise.
 
4924
        (grub_serial_term_input): Use terminfo.
 
4925
        (grub_serial_term_output): Likewise.
 
4926
        * term/terminfo.c (putstr): Use put.
 
4927
        (grub_terminfo_all_free): New function
 
4928
        (grub_terminfo_set_current): New types vt100-color, ieee1275 and dumb.
 
4929
        (grub_terminfo_output_register): New function.
 
4930
        (grub_terminfo_output_unregister): Likewise.
 
4931
        (grub_terminfo_getxy): Likewise.
 
4932
        (grub_terminfo_readkey): Likewise.
 
4933
        (grub_terminfo_checkkey): Likewise.
 
4934
        (grub_terminfo_getkey): Likewise.
 
4935
        (grub_terminfo_input_init): Likewise.
 
4936
        (print_terminfo): Likewise.
 
4937
        (grub_cmd_terminfo): Handle encoding.
 
4938
        (grub_terminfo_gotoxy): Track position.
 
4939
        (grub_terminfo_cls): Likewise.
 
4940
        (grub_terminfo_putchar): Likewise.
 
4941
        (grub_terminfo_setcolorstate): Handle colors
 
4942
        (grub_terminfo_cursor_on): This ...
 
4943
        (grub_terminfo_cursor_off): ... and this merged into ...
 
4944
        (grub_terminfo_setcursor): ... this.
 
4945
        * term/tparm.c (grub_terminfo_tparm): Avoid NULL dereferencing.
 
4946
        * unicode/ArabicShaping.txt: New file (imported from Unicode).
 
4947
        * unicode/BidiMirroring.txt: Likewise.
 
4948
        * unicode/UnicodeData.txt: Likewise.
 
4949
        * unicode/COPYING: Likewise.
 
4950
        * util/grub-editenv.c (grub_putchar): Removed.
 
4951
        (grub_xputs_real): New function.
 
4952
        (grub_xputs): New variable.
 
4953
        * util/grub-fstest.c (grub_putchar): Removed.
 
4954
        (grub_xputs_real): New function.
 
4955
        (grub_xputs): New variable.
 
4956
        * util/grub-mkdevicemap.c (grub_putchar): Removed.
 
4957
        (grub_xputs_real): New function.
 
4958
        (grub_xputs): New variable.
 
4959
        * util/grub-probe.c (grub_putchar): Removed.
 
4960
        (grub_xputs_real): New function.
 
4961
        (grub_xputs): New variable.
 
4962
        * util/grub-script-check.c (grub_putchar): Removed.
 
4963
        (grub_xputs_real): New function.
 
4964
        (grub_xputs): New variable.
 
4965
        * util/i386/pc/grub-setup.c (grub_putchar): Removed.
 
4966
        (grub_xputs_real): New function.
 
4967
        (grub_xputs): New variable.
 
4968
        * util/import_unicode.py: New file.
 
4969
        * util/grub-mkfont.c (ft_errmsgs): New array.
 
4970
        (grub_glyph_info): Make bitmap a pointer.
 
4971
        (file_formats): New type WIDTH_SPEC.
 
4972
        (grub_font_info): New members glyphs_unsorted, glyphs_sorted, num_glyphs.
 
4973
        (options): Add width-spec.
 
4974
        (help): Likewise.
 
4975
        (add_char): Renamed to ...
 
4976
        (add_glyph): ... this.
 
4977
        (add_glyph): Use index. Show freetype errors. Cut blank space at borders.
 
4978
        (glyph_replace): New type.
 
4979
        (subst_rightjoin), (subst_leftjoin), (subst_medijoin): New variables.
 
4980
        (add_char): New function.
 
4981
        (add_subst): Likewise.
 
4982
        (process_cursive): Likewise.
 
4983
        (add_font): Handle GSUB.
 
4984
        (write_font_width_spec): New function.
 
4985
        (main): Sort glyphs.
 
4986
        * commands/minicmd.c (grub_mini_cmd_clear): Moved from here ...
 
4987
        * normal/main.c (grub_mini_cmd_clear): ..here. All users updated.
 
4988
        * kern/term.c (grub_cls): Moved from here...
 
4989
        * normal/term.c (grub_cls): ... here.
 
4990
 
 
4991
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
4992
 
 
4993
        * include/grub/types.h: Define the C99-style PRIxGRUB_SIZE macro,
 
4994
        suitable for using within the format argument of printf when
 
4995
        converting grub_size_t.
 
4996
        * disk/usbms.c (grub_usbms_transfer): Use PRIxGRUB_SIZE rather than
 
4997
        "x" to convert grub_size_t arguments.
 
4998
 
 
4999
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
5000
 
 
5001
        * gfxmenu/gui_list.c (draw_menu): Use viewport to simplify code and fix
 
5002
        too long captions.
 
5003
        (list_get_minimal_size): Take selection box into account.
 
5004
 
 
5005
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
5006
 
 
5007
        * font/font.c (grub_font_get_glyph_with_fallback): Avoid dereferencing
 
5008
        NULL font.
 
5009
 
 
5010
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
5011
 
 
5012
        * util/deviceiter.c (grub_util_iterate_devices): Skip device-mapper
 
5013
        devices when iterating over /dev/disk/by-id; they will be handled
 
5014
        later if appropriate, which they aren't always (e.g. LVM).
 
5015
 
 
5016
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
5017
 
 
5018
        * include/grub/misc.h (grub_reboot): Declare as noreturn.
 
5019
        * kern/efi/efi.c (grub_reboot): Don't return, even if reset_system
 
5020
        fails.
 
5021
        (grub_halt): Likewise.
 
5022
        * kern/ieee1275/openfw.c (grub_reboot): Don't return, even if
 
5023
        reset-all fails.
 
5024
        (grub_halt): Don't return, even if all of shut-down, power-off, and
 
5025
        poweroff fail.
 
5026
 
 
5027
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
5028
 
 
5029
        * kern/efi/init.c (grub_efi_init): set_watchdog_timer takes four
 
5030
        arguments, not three.
 
5031
 
 
5032
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
5033
 
 
5034
        * util/grub-mkconfig_lib.in (uses_abstraction): New function.
 
5035
        * util/grub.d/10_linux.in: Use it to check for LVM, so that
 
5036
        LVM-on-RAID is handled correctly.
 
5037
 
 
5038
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
5039
 
 
5040
        * docs/grub.texi (Changes from GRUB Legacy): New section.
 
5041
        (Future): Fix typo.
 
5042
 
 
5043
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
5044
 
 
5045
        * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Sometimes
 
5046
        grub.d/README accidentally ends up executable for one reason or
 
5047
        another.  Ignore it.
 
5048
 
 
5049
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
5050
 
 
5051
        * partmap/gpt.c (MAX_SECTOR_LOG): New definition.
 
5052
        (gpt_partition_map_iterate): Support non-512B sectors.
 
5053
 
 
5054
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
5055
 
 
5056
        * kern/efi/init.c (grub_efi_init): Disable watchdog.
 
5057
        Tested by: Seth Goldberg.
 
5058
 
 
5059
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
5060
 
 
5061
        * loader/multiboot.c (grub_multiboot_boot) [GRUB_USE_MULTIBOOT2]:
 
5062
        Properly align mbi.
 
5063
        Reported by: Seth Goldberg.
 
5064
 
 
5065
2010-07-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
5066
 
 
5067
        * util/grub-mkrescue.in: Avoid module duplication.
 
5068
 
 
5069
2010-07-01  Sean Finney  <seanius@seanius.net>
 
5070
 
 
5071
        * util/grub.d/10_linux.in: Don't use UUID for LVM root.
 
5072
 
 
5073
2010-07-01  Sean Finney  <seanius@seanius.net>
 
5074
 
 
5075
        * disk/lvm.c (grub_lvm_scan_device): Skip snapshots.
 
5076
 
 
5077
2010-07-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
5078
 
 
5079
        * disk/lvm.c (grub_lvm_checkvalue): New function.
 
5080
        (grub_lvm_check_flag): Likewise.
 
5081
 
 
5082
2010-07-01  Robert Millan  <rmh@gnu.org>
 
5083
 
 
5084
        * kern/emu/hostdisk.c (convert_system_partition_to_system_disk):
 
5085
        Support 'p' as partition separator on kernel of FreeBSD (used
 
5086
        with GPT labels).
 
5087
        (grub_util_biosdisk_get_grub_dev): Likewise.
 
5088
 
 
5089
2010-07-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
5090
 
 
5091
        Yeeloong firmware port.
 
5092
 
 
5093
        * boot/mips/yeeloong/fwstart.S: New file.
 
5094
        * bus/cs5536.c (gpiodump): New const.
 
5095
        (set_io_space): New function.
 
5096
        (set_iod): Likewise.
 
5097
        (set_p2d): Likewise.
 
5098
        (grub_cs5536_init_geode): Likewise.
 
5099
        * commands/mips/yeeloong/lsspd.c: New file.
 
5100
        * conf/mips-qemu-mips.rmk (pkglib_MODULES): Add serial.mod.
 
5101
        (serial_mod_SOURCES): New variable.
 
5102
        (serial_mod_CFLAGS): Likewise.
 
5103
        (serial_mod_LDFLAGS): Likewise.
 
5104
        * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Add term/serial.c,
 
5105
        term/terminfo.c and term/tparm.c.
 
5106
        (pkglib_IMAGES): Add fwstart.img.
 
5107
        (fwstart_img_SOURCES): New variable.
 
5108
        (fwstart_img_CFLAGS): Likewise.
 
5109
        (fwstart_img_ASFLAGS): Likewise.
 
5110
        (fwstart_img_LDFLAGS): Likewise.
 
5111
        (fwstart_img_FORMAT): Likewise.
 
5112
        (pkglib_MODULES): Add lsspd.mod.
 
5113
        (lsspd_mod_SOURCES): New variable.
 
5114
        (lsspd_mod_CFLAGS): Likewise.
 
5115
        (lsspd_mod_LDFLAGS): Likewise.
 
5116
        (pkglib_MODULES): Add halt.mod.
 
5117
        (halt_mod_SOURCES): New variable.
 
5118
        (halt_mod_CFLAGS): Likewise.
 
5119
        (halt_mod_LDFLAGS): Likewise.
 
5120
        * conf/mips.rmk (pkglib_MODULES): Remove serial.mod.
 
5121
        (serial_mod_SOURCES): Removed.
 
5122
        (serial_mod_CFLAGS): Likewise.
 
5123
        (serial_mod_LDFLAGS): Likewise.
 
5124
        * disk/ata.c (check_device): New function.
 
5125
        (grub_ata_device_initialize): Use check_device.
 
5126
        (grub_ata_iterate): Recheck devices.
 
5127
        (grub_ata_open): Likewise.
 
5128
        (grub_atapi_iterate): Likewise.
 
5129
        (grub_atapi_open): Likewise.
 
5130
        * include/grub/ata.h (GRUB_ATA_CH0_PORT1): New macro.
 
5131
        (GRUB_ATA_CH1_PORT1): Likewise.
 
5132
        (GRUB_ATA_CH0_PORT2): Likewise.
 
5133
        (GRUB_ATA_CH1_PORT2): Likewise.
 
5134
        * include/grub/mips/loongson.h: New file.
 
5135
        * include/grub/mips/yeeloong/ec.h: Likewise.
 
5136
        * include/grub/mips/yeeloong/serial.h (GRUB_MACHINE_SERIAL_PORT): New definition.
 
5137
        (GRUB_MACHINE_SERIAL_DIVISOR_115200): Likewise.
 
5138
        (GRUB_MACHINE_SERIAL_PORTS) [ASM_FILE]: Remove.
 
5139
        * include/grub/misc.h (grub_halt): Declare as noreturn.
 
5140
        * include/grub/serial.h (UART_ENABLE_FIFO): Renamed to ...
 
5141
        (UART_ENABLE_FIFO_TRIGGER14): ... this. All users updated.
 
5142
        (UART_ENABLE_FIFO_TRIGGER1): New definition.
 
5143
        (UART_ENABLE_DTRRTS): Likewise.
 
5144
        (UART_ENABLE_MODEM): Removed.
 
5145
        (UART_ENABLE_OUT2): New const.
 
5146
        * include/grub/term.h (grub_term_register_input_active): New function.
 
5147
        (grub_term_register_output_active): Likewise.
 
5148
        * kern/mips/startup.S [GRUB_MACHINE_MIPS_YEELOONG]: Handle 0xffffffff
 
5149
        argument.
 
5150
        * kern/mips/yeeloong/init.c (grub_get_rtc): Macroify.
 
5151
        (init_pci): New function.
 
5152
        (grub_machine_init): Execute platform init when firmware. Init serial.
 
5153
        (grub_halt): Implement.
 
5154
        (grub_exit): Likewise.
 
5155
        (grub_reboot): Likewise.
 
5156
        * term/serial.c (serial_hw_init): Update macros.
 
5157
        [GRUB_MACHINE_MIPS_YEELOONG]: Init on startup.
 
5158
        * util/grub-mkimage.c (image_target_desc): New id IMAGE_YEELOONG_FLASH.
 
5159
        (image_targets): New target mipsel-yeeloong-flash.
 
5160
        (generate_image): Support IMAGE_YEELOONG_FLASH.
 
5161
        * video/sm712.c (GRUB_SM712_TOTAL_MEMORY_SPACE): New definition.
 
5162
        (grub_video_sm712_setup): Init card.
 
5163
        (grub_video_sm712_set_palette): Removed.
 
5164
        * video/sm712_init.c: New file.
 
5165
 
 
5166
2010-06-30  Colin Watson  <cjwatson@ubuntu.com>
 
5167
 
 
5168
        * Makefile.in (install-local): Temporarily prepend $(builddir) to
 
5169
        PATH when running help2man and then run it on the unadorned
 
5170
        executable names, rather than passing $(builddir)/* paths to
 
5171
        help2man.  This avoids the build directory ending up in generated
 
5172
        manual pages.
 
5173
 
 
5174
2010-06-29  Colin Watson  <cjwatson@ubuntu.com>
 
5175
 
 
5176
        * util/grub-mkconfig.in: Use 'set -e' rather than '#! /bin/sh -e',
 
5177
        to avoid accidents when debugging with 'sh -x'.
 
5178
        * util/grub-mkrescue.in: Likewise.
 
5179
        * util/grub.d/00_header.in: Likewise.
 
5180
        * util/grub.d/10_hurd.in: Likewise.
 
5181
        * util/grub.d/10_kfreebsd.in: Likewise.
 
5182
        * util/grub.d/10_linux.in: Likewise.
 
5183
        * util/grub.d/10_netbsd.in: Likewise.
 
5184
        * util/grub.d/10_windows.in: Likewise.
 
5185
        * util/grub.d/20_linux_xen.in: Likewise.
 
5186
        * util/grub.d/30_os-prober.in: Likewise.
 
5187
        * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
 
5188
 
 
5189
2010-06-29  Colin Watson  <cjwatson@ubuntu.com>
 
5190
 
 
5191
        * commands/cat.c (grub_cmd_cat): Fix buffer overrun if '\r' is the
 
5192
        last character in the buffer.
 
5193
        Reported by: Vladimir Serbinenko.
 
5194
 
 
5195
2010-06-29  Robert Millan  <rmh@gnu.org>
 
5196
 
 
5197
        * docs/grub.texi (Simple configuration): Document ${GRUB_BADRAM}.
 
5198
        (Command-line and menu entry commands): Document `badram' command.
 
5199
 
 
5200
2010-06-28  Robert Millan  <rmh@gnu.org>
 
5201
 
 
5202
        * util/grub-mkconfig.in: Export `GRUB_BADRAM' variable.
 
5203
        * util/grub.d/00_header.in: When `GRUB_BADRAM' is set, issue badram
 
5204
        command using ${GRUB_BADRAM} as parameter.
 
5205
 
 
5206
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
 
5207
 
 
5208
        * docs/grub.texi (Device map): New section.
 
5209
        (Themes): New section (stub).
 
5210
        * Makefile.in (docs/grub.info): The info documentation now builds
 
5211
        without errors.  Make sure it stays that way.
 
5212
 
 
5213
2010-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
5214
 
 
5215
        Use normal parser for menu entries.
 
5216
        Reported by: Thomas Frauendorfer
 
5217
 
 
5218
        * include/grub/parser.h (grub_parser_execute): Don't export.
 
5219
        * normal/menu.c (grub_menu_execute_entry_real): New function.
 
5220
        (grub_menu_execute_entry): Use grub_menu_execute_entry_real.
 
5221
 
 
5222
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
 
5223
 
 
5224
        * docs/grub.texi (Embedded configuration): New section (replacing
 
5225
        old "Preset Menu" stub).
 
5226
        (Images): New section.
 
5227
        (configfile): Note that any menu entries defined in `file' are shown
 
5228
        immediately.
 
5229
 
 
5230
2010-06-28  Josh Triplett  <josh@joshtriplett.org>
 
5231
 
 
5232
        * mmap/i386/pc/mmap_helper.S: Set CF on return.
 
5233
 
 
5234
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
 
5235
 
 
5236
        * util/grub-install.in: Add --debug-image= option.
 
5237
 
 
5238
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
 
5239
 
 
5240
        Change grub-mkdevicemap to emit /dev/disk/by-id/ names where
 
5241
        possible on Linux.
 
5242
 
 
5243
        * util/deviceiter.c (check_device): Rename to ...
 
5244
        (check_device_readable_unique): ... this.  Update all callers.
 
5245
        Maintain and check a list of which devices (by canonicalized name)
 
5246
        have already been seen.
 
5247
        (clear_seen_devices): New function.
 
5248
        (compare_file_names) [__linux__]: New function.
 
5249
        (grub_util_iterate_devices): Clear the list of seen devices on exit
 
5250
        and (just in case) on entry.
 
5251
        (grub_util_iterate_devices) [__linux__]: Iterate over non-partition
 
5252
        devices in /dev/disk/by-id/, in sorted order.  Remove DM-RAID
 
5253
        seen-devices list, superseded by general code in check_device.
 
5254
 
 
5255
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
 
5256
 
 
5257
        * commands/cat.c (options): New variable.
 
5258
        (grub_cmd_cat): Parse options.  If the --dos option is given, print
 
5259
        DOS-style "\r\n" line endings as simple newlines (Debian bug
 
5260
        #586358).
 
5261
        (GRUB_MOD_INIT): Use extcmd.
 
5262
        (GRUB_MOD_FINI): Likewise.
 
5263
        * docs/grub.texi (cat): Document --dos.
 
5264
 
 
5265
2010-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
5266
 
 
5267
        XEN with Linux grub-mkconfig support.
 
5268
 
 
5269
        * conf/common.rmk (grub-mkconfig_SCRIPTS) [linux]: Add 20_linux_xen.
 
5270
        * util/grub-mkconfig.in: Export GRUB_CMDLINE_XEN and
 
5271
        GRUB_CMDLINE_XEN_DEFAULT.
 
5272
        * util/grub.d/20_linux_xen.in: New file.
 
5273
 
 
5274
2010-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
5275
 
 
5276
        Initialise VGA video on qemu ourselves.
 
5277
 
 
5278
        * boot/i386/qemu/boot.S: Don't call 0xc000.
 
5279
        * conf/i386-qemu.rmk (kern/i386/qemu/init.c_DEPENDENCIES): New variable.
 
5280
        (kernel_img_SOURCES): Add kern/i386/qemu/init.c and bus/pci.c.
 
5281
        (kernel_img_HEADERS): Add pci.h.
 
5282
        * conf/i386.rmk (pkglib_MODULES) [qemu]: Remove pci.mod.
 
5283
        * configure.ac: Force unifont on qemu and yeeloong.
 
5284
        * include/grub/i386/qemu/kernel.h (grub_qemu_init_cirrus): New proto.
 
5285
        (grub_vga_palette_write): Use correct register.
 
5286
        * kern/i386/coreboot/init.c (grub_machine_init) [GRUB_MACHINE_QEMU]:
 
5287
        Call grub_qemu_init_cirrus.
 
5288
        * kern/i386/qemu/init.c: New file.
 
5289
        * term/i386/pc/vga_text.c (inc_y): Never read outside the screen.
 
5290
 
 
5291
        * commands/videotest.c (grub_cmd_videotest): Handle double buffering.
 
5292
 
 
5293
2010-06-26  Pavel Roskin  <proski@gnu.org>
 
5294
 
 
5295
        * util/grub.d/10_linux.in: Add support for initrd images on Fedora
 
5296
        13.
 
5297
 
 
5298
2010-06-26  Colin Watson  <cjwatson@ubuntu.com>
 
5299
 
 
5300
        * docs/grub.texi (Simple configuration): Explain that
 
5301
        GRUB_DISABLE_LINUX_RECOVERY and GRUB_DISABLE_NETBSD_RECOVERY must be
 
5302
        set to `true' to disable their respective recovery entries, not
 
5303
        merely set.
 
5304
 
 
5305
2010-06-26  Colin Watson  <cjwatson@ubuntu.com>
 
5306
 
 
5307
        Make the `source' command slightly faster.
 
5308
 
 
5309
        * normal/main.c (grub_normal_execute): Don't re-read list files when
 
5310
        nested.
 
5311
 
 
5312
2010-06-23  Colin Watson  <cjwatson@ubuntu.com>
 
5313
 
 
5314
        * loader/i386/multiboot_mbi.c (retrieve_video_parameters): Set red
 
5315
        field position and mask size to red fields from mode_info, not
 
5316
        green.
 
5317
        * loader/multiboot_mbi2.c (retrieve_video_parameters): Likewise.
 
5318
        Remove redundant tag->common.framebuffer_type assignment.
 
5319
        Reported by: Seth Goldberg.
 
5320
 
 
5321
2010-06-23  Colin Watson  <cjwatson@ubuntu.com>
 
5322
 
 
5323
        Sync up other versions of the Linux loader with Robert Millan's
 
5324
        change of 2010-01-09, "Make loader output a bit more user-friendly".
 
5325
 
 
5326
        * loader/i386/efi/linux.c (grub_linux_boot): Move debug info to
 
5327
        grub_dprintf().
 
5328
        (grub_cmd_linux): Likewise.
 
5329
        (grub_cmd_initrd): Likewise.
 
5330
        * loader/i386/ieee1275/linux.c (grub_cmd_linux): Likewise.
 
5331
        * loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
 
5332
 
 
5333
2010-06-21  Colin Watson  <cjwatson@ubuntu.com>
 
5334
 
 
5335
        * kern/efi/mm.c (grub_efi_mm_init): Handle systems with memory maps
 
5336
        larger than MEMORY_MAP_SIZE.
 
5337
 
 
5338
2010-06-21  BVK Chaitanya  <bvk.groups@gmail.com>
 
5339
 
 
5340
        Fix parallel build.
 
5341
 
 
5342
        * conf/common.rmk: Add grub_script.tab.h as a grub-script-check
 
5343
        dependency.
 
5344
        * script/parser.y: #include grub_script.tab.h header.
 
5345
 
 
5346
2010-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
5347
 
 
5348
        Support >3GiB and <16MiB RAM in i386-qemu.
 
5349
 
 
5350
        * kern/i386/qemu/mmap.c (QEMU_CMOS_MEMSIZE2_HIGH): New const.
 
5351
        (QEMU_CMOS_MEMSIZE2_LOW): Likewise.
 
5352
        (grub_lower_mem): Removed.
 
5353
        (grub_upper_mem): Likewise.
 
5354
        (mem_size): Made static.
 
5355
        (above_4g): New variable.
 
5356
        (grub_machine_mmap_init): Detect small mem_size and above_4g.
 
5357
        (grub_machine_mmap_iterate): Order in ascending order and add above_4g
 
5358
        support.
 
5359
 
 
5360
2010-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
5361
 
 
5362
        Cirrus 5446 and Bochs video cards support.
 
5363
 
 
5364
        * conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and
 
5365
        video_bochs.mod
 
5366
        (video_cirrus_mod_SOURCES): New variable.
 
5367
        (video_cirrus_mod_CFLAGS): Likewise.
 
5368
        (video_cirrus_mod_LDFLAGS): Likewise.
 
5369
        (video_bochs_mod_SOURCES): Likewise.
 
5370
        (video_bochs_mod_CFLAGS): Likewise.
 
5371
        (video_bochs_mod_LDFLAGS): Likewise.
 
5372
        * include/grub/vga.h: New file.
 
5373
        * include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed.
 
5374
        (grub_video_fb_set_page_t): New type.
 
5375
        (grub_video_fb_setup): New prototype.
 
5376
        (grub_video_fb_swap_buffers): Likewise.
 
5377
        (grub_video_fb_get_info_and_fini): Likewise.
 
5378
        * term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h.
 
5379
        (CRTC_DATA_PORT): Likewise.
 
5380
        (CRTC_CURSOR): Likewise.
 
5381
        (CRTC_CURSOR_ADDR_HIGH): Likewise.
 
5382
        (CRTC_CURSOR_ADDR_LOW): Likewise.
 
5383
        (CRTC_CURSOR_DISABLE): Likewise.
 
5384
        (update_cursor): Use grub_vga_cr_write.
 
5385
        (grub_vga_text_setcursor): Likewise.
 
5386
        * video/bochs.c: New file.
 
5387
        * video/fb/video_fb.c (render_target): Moved into framebuffer variable.
 
5388
        (palette): Likewise.
 
5389
        (palette_size): Likewise.
 
5390
        (framebuffer): New variable.
 
5391
        (grub_video_fb_init): Use 'framebuffer'.
 
5392
        (grub_video_fb_fini): Likewise.
 
5393
        (grub_video_fb_get_info): Likewise.
 
5394
        (grub_video_fb_get_palette): Likewise.
 
5395
        (grub_video_fb_set_palette): Likewise.
 
5396
        (grub_video_fb_set_viewport): Likewise.
 
5397
        (grub_video_fb_get_viewport): Likewise.
 
5398
        (grub_video_fb_map_color): Likewise.
 
5399
        (grub_video_fb_map_rgb): Likewise.
 
5400
        (grub_video_fb_map_rgba): Likewise.
 
5401
        (grub_video_fb_unmap_color): Likewise.
 
5402
        (grub_video_fb_unmap_color_int): Likewise.
 
5403
        (grub_video_fb_fill_rect): Likewise.
 
5404
        (grub_video_fb_blit_bitmap): Likewise.
 
5405
        (grub_video_fb_blit_render_target): Likewise.
 
5406
        (grub_video_fb_scroll): Likewise.
 
5407
        (grub_video_fb_create_render_target): Likewise.
 
5408
        (grub_video_fb_doublebuf_blit_init): Likewise.
 
5409
        (grub_video_fb_set_active_render_target): Handle doublebuffering.
 
5410
        (doublebuf_pageflipping_update_screen): New function.
 
5411
        (doublebuf_pageflipping_init): Likewise.
 
5412
        (grub_video_fb_setup): Likewise.
 
5413
        (grub_video_fb_swap_buffers): Likewise.
 
5414
        (grub_video_fb_get_info_and_fini): Likewise.
 
5415
        * video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields.
 
5416
        All users updated.
 
5417
        (doublebuf_pageflipping_commit): Restructured into ...
 
5418
        (doublebuf_pageflipping_set_page): ... this.
 
5419
        (doublebuf_pageflipping_update_screen): Removed.
 
5420
        (doublebuf_pageflipping_init): Likewise.
 
5421
        (double_buffering_init): Likewise.
 
5422
        (grub_video_vbe_setup): Use grub_video_fb_setup.
 
5423
        (grub_video_vbe_swap_buffers): Removed.
 
5424
        (grub_video_vbe_set_active_render_target): Likewise.
 
5425
        (grub_video_vbe_get_active_render_target): Likewise.
 
5426
        (grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini.
 
5427
        (grub_video_vbe_adapter): Use grub_video_fb_swap_buffers,
 
5428
        grub_video_fb_set_active_render_target and
 
5429
        grub_video_fb_get_active_render_target.
 
5430
        * video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h.
 
5431
        (SEQUENCER_DATA_PORT): Likewise.
 
5432
        (MAP_MASK_REGISTER): Likewise.
 
5433
        (CRTC_ADDR_PORT): Likewise.
 
5434
        (CRTC_DATA_PORT): Likewise.
 
5435
        (START_ADDR_HIGH_REGISTER): Likewise.
 
5436
        (START_ADDR_LOW_REGISTER): Likewise.
 
5437
        (GRAPHICS_ADDR_PORT): Likewise.
 
5438
        (GRAPHICS_DATA_PORT): Likewise.
 
5439
        (READ_MAP_REGISTER): Likewise.
 
5440
        (INPUT_STATUS1_REGISTER): Likewise.
 
5441
        (INPUT_STATUS1_VERTR_BIT): Likewise.
 
5442
        (get_map_mask): Use grub_vga_sr_read.
 
5443
        (set_map_mask): Use grub_vga_sr_write.
 
5444
        (set_read_map): Use grub_vga_gr_write.
 
5445
        (set_start_address): Use grub_vga_cr_write.
 
5446
        * video/sm712.c (framebuffer): Remove leftover fields.
 
5447
 
 
5448
2010-06-20  Colin Watson  <cjwatson@ubuntu.com>
 
5449
 
 
5450
        * util/grub-mkconfig.in: Capitalise and export GRUB_PREFIX.  Stop
 
5451
        setting GRUB_VIDEO_BACKEND.  Make it available as a user override
 
5452
        instead.  Replace the gfxterm backend check with a check that
 
5453
        ${GRUB_PREFIX}/video.lst is non-empty.
 
5454
        * util/grub.d/00_header.in: Use GRUB_PREFIX rather than computing it
 
5455
        again.
 
5456
        (load_video): New generated function.  Call it before loading
 
5457
        gfxterm rather than loading ${GRUB_VIDEO_BACKEND}.
 
5458
        * util/grub.d/10_linux.in (linux_entry): Call load_video.
 
5459
        * util/grub.d/30_os-prober.in (osx_entry): Likewise.
 
5460
        * docs/grub.texi (Simple configuration): Document
 
5461
        GRUB_VIDEO_BACKEND.
 
5462
 
 
5463
2010-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
5464
 
 
5465
        Use video functions in linux and xnu loaders.
 
5466
 
 
5467
        * conf/i386-pc.rmk (xnu_mod_SOURCES): Remove loader/i386/pc/xnu.c.
 
5468
        * conf/x86-efi.rmk (xnu_mod_SOURCES): Remove loader/i386/efi/xnu.c.
 
5469
        * include/grub/i386/xnu.h (grub_xnu_set_video): Removed.
 
5470
        * loader/i386/efi/linux.c (grub_linux_setup_video): Copied from
 
5471
        loader/i386/pc/linux.c.
 
5472
        (grub_linux_boot): Resynced with loader/i386/pc/linux.c.
 
5473
        (find_line_len): Removed.
 
5474
        (find_framebuf): Likewise.
 
5475
        (grub_cmd_linux): Declare grub_linux_boot as possibly returning.
 
5476
        * loader/i386/efi/xnu.c: Removed.
 
5477
        * loader/i386/pc/xnu.c: Moved from here...
 
5478
        * loader/i386/xnu.c: ...here.
 
5479
 
 
5480
        Enable priorities in video drivers.
 
5481
 
 
5482
        * include/grub/video.h (grub_video_adapter_prio_t): New type.
 
5483
        (grub_video_adapter): New field prio.
 
5484
        (grub_video_register): Respect prio when inserting.
 
5485
        * video/efi_gop.c (grub_video_gop_adapter): Add prio.
 
5486
        * video/efi_uga.c (grub_video_uga_adapter): Likewise.
 
5487
        * video/emu/sdl.c (grub_video_sdl_adapter): Likewise.
 
5488
        * video/i386/pc/vbe.c (grub_video_vbe_adapter): Likewise.
 
5489
        * video/i386/pc/vga.c (grub_video_vga_adapter): Likewise.
 
5490
        * video/ieee1275.c (grub_video_ieee1275_adapter): Likewise.
 
5491
        * video/sm712.c (grub_video_sm712_adapter): Likewise.
 
5492
 
 
5493
        Fix SDL driver ID.
 
5494
 
 
5495
        * include/grub/video.h (grub_video_driver_id_t): New value
 
5496
        GRUB_VIDEO_DRIVER_SDL.
 
5497
        * video/emu/sdl.c (grub_video_sdl_adapter): Add id.
 
5498
 
 
5499
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
 
5500
 
 
5501
        * util/i386/pc/grub-setup.c (usage): Pass an extra `program_name'
 
5502
        argument to printf.
 
5503
        * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
 
5504
 
 
5505
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
 
5506
 
 
5507
        * util/i386/pc/grub-setup.c (usage): Fix syntax error.
 
5508
        * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
 
5509
 
 
5510
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
 
5511
 
 
5512
        * util/i386/pc/grub-setup.c (usage): Warn against running grub-setup
 
5513
        directly, and recommend grub-install instead.
 
5514
        * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
 
5515
 
 
5516
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
 
5517
 
 
5518
        Fix i386-pc prefix handling with nested partitions (Debian bug
 
5519
        #585068).  Note that the case where the core image is booted using
 
5520
        multiboot and relocated from its original location still requires
 
5521
        more work.
 
5522
 
 
5523
        * kern/i386/pc/init.c (make_install_device): If the prefix starts
 
5524
        with "(,", fill the boot drive in between those two characters, but
 
5525
        expect that a full partition specification including partition map
 
5526
        names will follow.
 
5527
        * util/i386/pc/grub-setup.c (setup): Unless an explicit prefix was
 
5528
        specified, write a prefix without the drive name but including a
 
5529
        full partition specification.
 
5530
 
 
5531
2010-06-16  Colin Watson  <cjwatson@ubuntu.com>
 
5532
 
 
5533
        * util/grub-mkconfig.in: Ignore non-option arguments, for
 
5534
        compatibility with older versions (before 2010-06-12) which did the
 
5535
        same.  In particular, this makes it easier to ship an update-grub
 
5536
        wrapper which is compatible with that used with GRUB Legacy (Debian
 
5537
        bug #586056).
 
5538
 
 
5539
2010-06-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5540
 
 
5541
        * Makefile.in (install-local): Use $$file.h2m instead of $$dest.h2m
 
5542
        for manual page generation.
 
5543
 
 
5544
2010-06-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5545
 
 
5546
        * po/POTFILES: Remove leftover commands/handler.c.
 
5547
 
 
5548
2010-06-14  Colin Watson  <cjwatson@ubuntu.com>
 
5549
 
 
5550
        * util/grub-mkconfig.in: Remove vestige of old argument parsing that
 
5551
        left this script non-functional.
 
5552
 
 
5553
2010-06-14  Colin Watson  <cjwatson@ubuntu.com>
 
5554
 
 
5555
        * docs/man/grub-emu.h2m: New file.
 
5556
 
 
5557
2010-06-13  Colin Watson  <cjwatson@ubuntu.com>
 
5558
 
 
5559
        * docs/grub.texi (Commands): Document reduced command set in rescue
 
5560
        mode.
 
5561
        (cpuid): New section.
 
5562
 
 
5563
2010-06-13  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5564
 
 
5565
        * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Use the
 
5566
        new partition naming style.
 
5567
        * util/grub-install.in: Adapt sed subtitutions in grub-probe calls.
 
5568
 
 
5569
2010-06-12  BVK Chaitanya  <bvk.groups@gmail.com>
 
5570
 
 
5571
        Add "-o grub.iso" like cmdline options support.
 
5572
 
 
5573
        * util/grub-install.in: Improve cmdline option parsing.
 
5574
        * util/grub-mkconfig.in: Likewise.
 
5575
        * util/grub-mkrescue.in: Likewise.
 
5576
        * util/grub-reboot.in: Likewise.
 
5577
        * util/grub-set-default.in: Likewise.
 
5578
        * util/i386/efi/grub-install.in: Likewise.
 
5579
        * util/ieee1275/grub-install.in: Likewise.
 
5580
        * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
 
5581
 
 
5582
2010-06-12  Colin Watson  <cjwatson@ubuntu.com>
 
5583
 
 
5584
        * .bzrignore: Ignore 41_custom.
 
5585
 
 
5586
2010-06-12  Thomas Schmitt  <scdbackup@gmx.net>
 
5587
 
 
5588
        * util/grub-mkrescue.in: Pass unrecognized options to xorriso.
 
5589
 
 
5590
2010-06-12  Colin Watson  <cjwatson@ubuntu.com>
 
5591
 
 
5592
        Avoid false positives in fs.lst, partmap.lst, and video.lst due to
 
5593
        prototype declarations.
 
5594
 
 
5595
        * genmk.rb (PModule::rule): Define GRUB_LST_GENERATOR when
 
5596
        generating fs, partmap, and video lists.
 
5597
        * include/grub/fs.h (grub_fs_register): Omit prototype if
 
5598
        GRUB_LST_GENERATOR is defined.
 
5599
        * include/grub/partition.h (grub_partition_map_register): Likewise.
 
5600
        * include/grub/video.h (grub_video_register): Likewise.
 
5601
 
 
5602
2010-06-12  Javier Martín <lordhabbit@gmail.com>
 
5603
 
 
5604
        * include/grub/types.h: Check for GRUB_CPU_SIZEOF_LONG when appropriate.
 
5605
 
 
5606
2010-06-12  Thomas Schmitt  <scdbackup@gmx.net>
 
5607
 
 
5608
        * util/grub-mkrescue.in: Support --xorriso argument.
 
5609
 
 
5610
2010-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
5611
 
 
5612
        * util/grub-mkrescue.in: Use -graft-points instead of -pathspecs.
 
5613
        Suggested by: Thomas Schmitt.
 
5614
 
 
5615
2010-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
5616
 
 
5617
        * util/grub-mkrescue.in: Add --sort-weight arguments to xorriso.
 
5618
        Suggested by: Thomas Schmitt.
 
5619
 
 
5620
2010-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
 
5621
 
 
5622
        custom.cfg support.
 
5623
 
 
5624
        * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 41_custom.
 
5625
        * util/grub.d/41_custom.in: New file.
 
5626
 
 
5627
2010-06-12  Colin Watson  <cjwatson@ubuntu.com>
 
5628
 
 
5629
        * util/grub-mkrescue.in (make_image): Remove sh module, which has
 
5630
        been merged back into normal.
 
5631
 
 
5632
2010-06-11  Colin Watson  <cjwatson@ubuntu.com>
 
5633
 
 
5634
        * include/grub/efi/uga_draw.h (GRUB_EFI_UGA_GLT_MAX): Rename to ...
 
5635
        (GRUB_EFI_UGA_BLT_MAX): ... this (typo fix).
 
5636
 
 
5637
2010-06-11  Colin Watson  <cjwatson@ubuntu.com>
 
5638
 
 
5639
        * Makefile.in (install-local): Include $(srcdir)/docs/man/$$dest.h2m
 
5640
        when generating manual pages.
 
5641
        * docs/man/grub-bin2h.h2m: New file.
 
5642
        * docs/man/grub-editenv.h2m: New file.
 
5643
        * docs/man/grub-fstest.h2m: New file.
 
5644
        * docs/man/grub-install.h2m: New file.
 
5645
        * docs/man/grub-macho2img.h2m: New file.
 
5646
        * docs/man/grub-mkconfig.h2m: New file.
 
5647
        * docs/man/grub-mkdevicemap.h2m: New file.
 
5648
        * docs/man/grub-mkfont.h2m: New file.
 
5649
        * docs/man/grub-mkimage.h2m: New file.
 
5650
        * docs/man/grub-mkpasswd-pbkdf2.h2m: New file.
 
5651
        * docs/man/grub-mkrelpath.h2m: New file.
 
5652
        * docs/man/grub-mkrescue.h2m: New file.
 
5653
        * docs/man/grub-ofpathname.h2m: New file.
 
5654
        * docs/man/grub-pe2elf.h2m: New file.
 
5655
        * docs/man/grub-probe.h2m: New file.
 
5656
        * docs/man/grub-reboot.h2m: New file.
 
5657
        * docs/man/grub-script-check.h2m: New file.
 
5658
        * docs/man/grub-set-default.h2m: New file.
 
5659
        * docs/man/grub-setup.h2m: New file.
 
5660
 
 
5661
2010-06-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
5662
 
 
5663
        Use FOR_* macros instead of *_iterate whenever possible.
 
5664
 
 
5665
        * commands/handler.c: Removed.
 
5666
        * commands/help.c (grub_cmd_help): Use FOR_COMMANDS.
 
5667
        * commands/minicmd.c (grub_mini_cmd_lsmod): Use FOR_DL_MODULES.
 
5668
        * conf/any-emu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
 
5669
        * conf/common.rmk (script/lexer.c_DEPENDENCIES): Add grub_script.yy.h.
 
5670
        (grub_probe_SOURCES): Remove kern/parser.c.
 
5671
        (util/grub-script-check.c_DEPENDENCIES): Removed.
 
5672
        (grub_script_check_SOURCES): Remove kern/handler.c, kern/parser.c
 
5673
        and grub_script_check_init.c.
 
5674
        (grub_script_check_init.lst): Removed.
 
5675
        (grub_script_check_init.h): Likewise.
 
5676
        (grub_script_check_init.c): Likewise.
 
5677
        (pkglib_MODULES): Remove handler.mod and sh.mod.
 
5678
        (handler_mod_SOURCES): Removed.
 
5679
        (handler_mod_CFLAGS): Likewise.
 
5680
        (handler_mod_LDFLAGS): Likewise.
 
5681
        (normal_mod_SOURCES): Remove normal/handler.c.
 
5682
        Add script/main.c, script/script.c, script/execute.c,
 
5683
        script/function.c, script/lexer.c, grub_script.tab.c
 
5684
        and grub_script.yy.c.
 
5685
        * conf/i386-coreboot.rmk (kernel_img_SOURCES): Remove kern/handler.c.
 
5686
        * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
 
5687
        * conf/i386-pc.rmk (kernel_img_SOURCES): Likewise.
 
5688
        (grub_setup_SOURCES): Remove kern/parser.c.
 
5689
        * conf/i386-qemu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
 
5690
        * conf/mips-qemu-mips.rmk (kernel_img_SOURCES): Likewise.
 
5691
        * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
 
5692
        * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Likewise.
 
5693
        * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
 
5694
        (grub_setup_SOURCES): Remove kern/parser.c.
 
5695
        * conf/x86-efi.rmk (kernel_img_SOURCES): Remove kern/handler.c.
 
5696
        * gettext/gettext.c (grub_gettext_delete_list): Don't use grub_list_pop.
 
5697
        * include/grub/command.h (grub_command_iterate): Removed.
 
5698
        (FOR_COMMANDS): New macro.
 
5699
        * include/grub/dl.h (grub_dl): New member next.
 
5700
        (grub_dl_iterate): Removed.
 
5701
        (grub_dl_head): New variable declaration.
 
5702
        (FOR_DL_MODULES): New macro.
 
5703
        * include/grub/fs.h: Include list.h.
 
5704
        (grub_fs): Make next first element.
 
5705
        (grub_fs_list): New variable declaration.
 
5706
        (grub_fs_register): Make inline.
 
5707
        (grub_fs_unregister): Likewise.
 
5708
        (grub_fs_iterate): Removed.
 
5709
        (FOR_FILESYSTEMS): New macro.
 
5710
        * include/grub/handler.h: Removed.
 
5711
        * include/grub/list.h (grub_list_hook_t): Removed.
 
5712
        (grub_list_test_t): Likewise.
 
5713
        (grub_list_pop): Likewise.
 
5714
        (grub_list_iterate): Likewise.
 
5715
        (grub_list_insert): Likewise.
 
5716
        (FOR_LIST_ELEMENTS): New macro.
 
5717
        * include/grub/parser.h (grub_parser_class): Removed.
 
5718
        (grub_parser_register): Likewise.
 
5719
        (grub_parser_unregister): Likewise.
 
5720
        (grub_parser_get_current): Likewise.
 
5721
        (grub_parser_set_current): Likewise.
 
5722
        (grub_register_rescue_parser): Likewise.
 
5723
        (grub_rescue_parse_line): New function.
 
5724
        * include/grub/partition.h (FOR_PARTITION_MAPS): Use FOR_LIST_ELEMENTS.
 
5725
        * include/grub/script_sh.h (grub_script_function_list): New variable
 
5726
        declaration.
 
5727
        (FOR_SCRIPT_FUNCTIONS): New macro.
 
5728
        (grub_script_function_iterate): Removed.
 
5729
        (grub_normal_parse_line): New prototype.
 
5730
        * include/grub/term.h (FOR_ACTIVE_TERM_INPUTS): Use FOR_LIST_ELEMENTS.
 
5731
        (FOR_DISABLED_TERM_INPUTS): Likewise.
 
5732
        (FOR_ACTIVE_TERM_OUTPUTS): Likewise.
 
5733
        (FOR_DISABLED_TERM_OUTPUTS): Likewise.
 
5734
        * include/grub/video.h (grub_video_adapter): Move 'next' to first
 
5735
        element.
 
5736
        (grub_video_register): Inline.
 
5737
        (grub_video_unregister): Likewise.
 
5738
        (grub_video_adapter_list): New variable declaration.
 
5739
        (grub_video_iterate): Removed.
 
5740
        (FOR_VIDEO_ADAPTERS): New macro.
 
5741
        * kern/dl.c (grub_dl_list): Removed. All users updated.
 
5742
        (grub_dl_iterate): Removed.
 
5743
        * kern/fs.c (grub_fs_list): Make global.
 
5744
        (grub_fs_register): Removed.
 
5745
        (grub_fs_unregister): Likewise.
 
5746
        (grub_fs_iterate): Likewise.
 
5747
        * kern/handler.c: Removed.
 
5748
        * kern/list.c (grub_list_pop): Removed.
 
5749
        (grub_list_iterate): Likewise.
 
5750
        (grub_list_insert): Likewise.
 
5751
        (grub_named_list_find): Use FOR_LIST_ELEMENTS.
 
5752
        (grub_prio_list_insert): Don't use grub_list_insert.
 
5753
        * kern/main.c (grub_register_rescue_parser): Don't call
 
5754
        grub_register_rescue_parser.
 
5755
        * kern/parser.c (grub_parser_class): Removed.
 
5756
        (grub_parser_execute): Use grub_rescue_parse_line.
 
5757
        * kern/rescue_parser.c (grub_rescue_parse_line): Make global.
 
5758
        (grub_rescue_parser): Removed.
 
5759
        (grub_register_rescue_parser): Likewise.
 
5760
        * kern/rescue_reader.c (grub_rescue_run): Use grub_rescue_parse_line.
 
5761
        * normal/auth.c (is_authenticated): Use FOR_LIST_ELEMENTS.
 
5762
        (grub_auth_check_authentication): Likewise.
 
5763
        * normal/completion.c (iterate_command): Removed.
 
5764
        (grub_normal_do_completion): Use FOR_COMMANDS.
 
5765
        * normal/handler.c: Removed.
 
5766
        * normal/main.c (read_config_file): Remove parser changing.
 
5767
        (grub_normal_execute): Don't call read_handler_list.
 
5768
        (grub_normal_read_line_real): Statically allocate prompt.
 
5769
        (grub_cmdline_run): Use grub_normal_parse_line.
 
5770
        (GRUB_MOD_FINI): Don't call free_handler_list.
 
5771
        * normal/menu_entry.c (run): Likewise.
 
5772
        * script/function.c (grub_script_function_list): Make global.
 
5773
        (grub_script_function_iterate): Removed.
 
5774
        * script/main.c (grub_normal_parse_line): Make global.
 
5775
        (grub_sh_parser): Removed.
 
5776
        (GRUB_MOD_INIT): Likewise.
 
5777
        (GRUB_MOD_FINI): Likewise.
 
5778
        * tests/lib/functional_test.c (grub_functional_test): Use
 
5779
        FOR_LIST_ELEMENTS.
 
5780
        * tests/lib/test.c (free_failures): Don't use grub_list_pop.
 
5781
        (grub_test_run): Use FOR_LIST_ELEMENTS.
 
5782
        * tests/lib/unit_test.c (main): Likewise.
 
5783
        * util/deviceiter.c (grub_util_iterate_devices): Don't use
 
5784
        grub_list_pop.
 
5785
        * util/grub-fstest.c (grub_term_input_class): Removed.
 
5786
        (grub_term_output_class): Likewise.
 
5787
        * util/grub-probe.c: Likewise.
 
5788
        * util/i386/pc/grub-setup.c: Likewise.
 
5789
        * util/sparc64/ieee1275/grub-setup.c: Likewise.
 
5790
        * util/grub-script-check.c (main): Don't call grub_init_all and
 
5791
        grub_fini_all.
 
5792
        * video/video.c (grub_video_adapter_list): Make global.
 
5793
        (grub_video_register): Removed.
 
5794
        (grub_video_unregister): Likewise.
 
5795
        (grub_video_iterate): Likewise.
 
5796
 
 
5797
2010-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
5798
 
 
5799
        * docs/grub.texi (Vendor power-on button): Add Asus EeePC 1005PE as
 
5800
        reported by Henrique Ferreiro.
 
5801
 
 
5802
2010-06-09  Robert Millan  <rmh@gnu.org>
 
5803
 
 
5804
        * util/grub.d/10_linux.in: Prefer compressed images over non-compressed
 
5805
        ones, when both are available.
 
5806
 
 
5807
2010-06-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5808
 
 
5809
        Make --version uniform and avoid hard-coded program name.
 
5810
 
 
5811
        * util/grub-mkimage.c (main): Use `program_name' instead of
 
5812
        hard-coded string.
 
5813
        * util/i386/pc/grub-setup.c (main): Likewise.
 
5814
        * util/sparc64/ieee1275/grub-setup.c (parse_options): Likewise.
 
5815
        * util/grub-install.in: Save the basename of $0 in $self, and use the
 
5816
        latter in informational messages.  Use the same format for --version
 
5817
        as the binary programs.
 
5818
        * util/grub-mkconfig.in: Likewise.
 
5819
        * util/grub-mkrescue.in: Likewise.
 
5820
        * util/grub-reboot.in: Likewise.
 
5821
        * util/grub-set-default.in: Likewise.
 
5822
        * util/i386/efi/grub-install.in: Likewise.
 
5823
        * util/ieee1275/grub-install.in: Likewise.
 
5824
        * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
 
5825
 
 
5826
2010-06-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5827
 
 
5828
        * util/i386/pc/grub-setup.c (setup): Use absolute offsets for start of
 
5829
        embedding area.  Use <= instead of == when checking for non-emptiness.
 
5830
 
 
5831
2010-06-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5832
 
 
5833
        * configure.ac: Add `.' to the directories searched for unifont.
 
5834
 
 
5835
2010-06-08  Colin Watson  <cjwatson@ubuntu.com>
 
5836
 
 
5837
        * .bzrignore: Add ascii.bitmaps, ascii.h, grub_script.yy.c, and
 
5838
        grub_script.yy.h.
 
5839
 
 
5840
2010-06-08  Colin Watson  <cjwatson@ubuntu.com>
 
5841
 
 
5842
        * docs/grub.texi (History): Expand to cover GRUB 2.
 
5843
        (Serial terminal): Refer to `terminal_input' and `terminal_output'
 
5844
        commands, not `terminal'.
 
5845
        (serial): Likewise.
 
5846
        (terminal_input): New section.
 
5847
        (terminal_output): New section.
 
5848
        (uppermem): New section (stub).
 
5849
        (Obtaining and Building GRUB): Refer to Bazaar, not Subversion.
 
5850
 
 
5851
2010-06-08  Colin Watson  <cjwatson@ubuntu.com>
 
5852
 
 
5853
        * docs/grub.texi (Security): Menu entries are unrestricted by
 
5854
        default, not restricted to superusers as I had previously thought.
 
5855
        Reword to account for this.
 
5856
 
 
5857
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5858
 
 
5859
        * kern/emu/misc.c (device_mapper_null_log): New function.
 
5860
        (grub_device_mapper_supported): New function.
 
5861
        * include/grub/emu/misc.h (grub_device_mapper_supported): Add
 
5862
        prototype.
 
5863
        * kern/emu/hostdisk.c (find_partition_start): Check whether
 
5864
        device-mapper is supported before trying to use it.
 
5865
        * util/deviceiter.c (grub_util_iterate_devices): Likewise.
 
5866
 
 
5867
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5868
 
 
5869
        * docs/grub.texi (Naming convention): Use GRUB 2 syntax.
 
5870
        (File name syntax): Likewise.
 
5871
        (help): --all is no longer supported in GRUB 2.  Be more precise
 
5872
        about pattern matching.
 
5873
 
 
5874
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5875
 
 
5876
        * normal/completion.c (grub_normal_do_completion): When completing
 
5877
        arguments to "set" and the current word contains an equals sign,
 
5878
        skip to after the equals sign before starting completion.
 
5879
 
 
5880
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5881
 
 
5882
        * fs/i386/pc/pxe.c (grub_pxe_open): Fix parsing of gateway_ip.
 
5883
 
 
5884
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5885
 
 
5886
        * docs/grub.texi (Network): New section.
 
5887
        (Device syntax): The network device is called `(pxe)' in GRUB 2, not
 
5888
        `(nd)' as in GRUB Legacy.
 
5889
        (pxe_unload): New section.
 
5890
 
 
5891
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5892
 
 
5893
        * docs/grub.texi (Troubleshooting): `echo' is not usually available
 
5894
        in the rescue shell, so recommend using `set' instead.  Thanks,
 
5895
        Jordan Uggla.
 
5896
 
 
5897
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5898
 
 
5899
        * docs/grub.texi (Filesystem): Refer to `search' instead of `find'.
 
5900
        (password): New section.
 
5901
        (password_pbkdf2): New section.
 
5902
        (search): New section.
 
5903
        (Security): New section.
 
5904
        (Troubleshooting): New section, currently very incomplete.
 
5905
        (Invoking grub-mkpasswd-pbkdf2): New section.
 
5906
        (Internals): New section, currently very incomplete.
 
5907
 
 
5908
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5909
 
 
5910
        * util/grub.d/00_header.in: Add some more quoting (of
 
5911
        "${prev_saved_entry}" and "${boot_once}") needed to make savedefault
 
5912
        work again.
 
5913
        Reported by: Mario 'BitKoenig' Holbe (Debian bug #584812).
 
5914
 
 
5915
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
 
5916
 
 
5917
        * util/grub-mkpasswd-pbkdf2.c (main): Rename top-level `c' variable
 
5918
        to `count', fixing variable shadowing that broke the -c option.
 
5919
 
 
5920
2010-06-05  Colin Watson  <cjwatson@ubuntu.com>
 
5921
 
 
5922
        * util/grub.d/00_header.in: Quote values assigned to `saved_entry',
 
5923
        in case they contain spaces.
 
5924
 
 
5925
2010-06-04  Colin Watson  <cjwatson@ubuntu.com>
 
5926
 
 
5927
        * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Prepend
 
5928
        "part_" to partmap module names, in line with grub-install.
 
5929
        Reported by: Jindřich Makovička (Debian bug #584426).
 
5930
 
 
5931
2010-06-04  Colin Watson  <cjwatson@ubuntu.com>
 
5932
 
 
5933
        * util/grub-mkimage.c: Make target-related error messages slightly
 
5934
        more helpful; -O talks about "format".  Explicitly point to the use
 
5935
        of -O if no target is specified.
 
5936
        Reported by: Didier Raboud (Debian bug #584415).
 
5937
 
 
5938
2010-06-03  Colin Watson  <cjwatson@ubuntu.com>
 
5939
 
 
5940
        * INSTALL: Document several build requirements for optional features
 
5941
        (libdevmapper, ncurses, libusb, SDL, FreeType, GNU Unifont).
 
5942
 
 
5943
2010-06-02  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
5944
 
 
5945
        * kern/emu/hostdisk.c (convert_system_partition_to_system_disk)
 
5946
        [__NetBSD__]: Handle all device names matching /dev/r[a-z]+[0-9][a-z].
 
5947
        (find_partition_start) [__NetBSD__]: Correct error messages for NetBSD.
 
5948
 
 
5949
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
5950
 
 
5951
        * docs/grub.texi (Simple configuration): Fix copy-and-paste typo.
 
5952
        Thanks to Jordan Uggla for spotting this.
 
5953
 
 
5954
2010-06-02  Aleš Nesrsta <starous@volny.cz>
 
5955
 
 
5956
        Finally make USB usable.
 
5957
 
 
5958
        * bus/usb/ohci.c (grub_ohci_reg_t): Add missing values.
 
5959
        (GRUB_OHCI_RHUB_PORT_POWER_MASK): New macro.
 
5960
        (GRUB_OHCI_RHUB_PORT_ALL_POWERED): Likewise.
 
5961
        (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK): Likewise.
 
5962
        (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT): Likewise.
 
5963
        (GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT): Likewise.
 
5964
        (GRUB_OHCI_FSMPS): Likewise.
 
5965
        (GRUB_OHCI_PERIODIC_START): Likewise.
 
5966
        (GRUB_OHCI_FRAME_INTERVAL): Likewise.
 
5967
        (GRUB_OHCI_SET_PORT_ENABLE): Likewise.
 
5968
        (GRUB_OHCI_CLEAR_PORT_ENABLE): Likewise.
 
5969
        (GRUB_OHCI_SET_PORT_RESET): Likewise.
 
5970
        (GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE): Likewise.
 
5971
        * bus/usb/ohci.c (grub_ohci_pci_iter): Various important fixups.
 
5972
        (grub_ohci_transaction): Likewise.
 
5973
        (grub_ohci_transfer): Improve condition detection algorithms.
 
5974
        Handle toggle property. Program the transactions correctly.
 
5975
        Improve error handling. Various important fixups.
 
5976
        (grub_ohci_portstatus): Put register writes in right order.
 
5977
        * bus/usb/uhci.c (grub_free_queue): Compute last_trans.
 
5978
        (grub_uhci_transfer): Don't show "failed" message on success.
 
5979
        * bus/usb/usb.c (grub_usb_set_configuration): Zero-fill whole "toggle"
 
5980
        array.
 
5981
        (grub_usb_device_initialize): Read first 8 bytes of descriptor to
 
5982
        determine its size.
 
5983
        * bus/usb/usbtrans.c (grub_usb_control_msg): Use descdev.maxsize0 even
 
5984
        before initialization is completed. Use IN direction for empty
 
5985
        transfers. Use last_trans and compute toggle.
 
5986
        * include/grub/usbtrans.h (grub_usb_transfer): New field last_trans.
 
5987
        (GRUB_USB_FEATURE_ENDP_HALT): Correct the value.
 
5988
        (GRUB_USB_FEATURE_DEV_REMOTE_WU): Likewise.
 
5989
        (GRUB_USB_FEATURE_TEST_MODE): Likewise.
 
5990
        * include/grub/usb.h (grub_usb_err_t): New value GRUB_USB_ERR_UNRECOVERABLE.
 
5991
        (grub_usb_device): Increase toggle to 256.
 
5992
        (grub_usbms_subclass_t): New values GRUB_USBMS_SUBCLASS_RBC,
 
5993
        GRUB_USBMS_SUBCLASS_MMC2, GRUB_USBMS_SUBCLASS_UFI and
 
5994
        GRUB_USBMS_SUBCLASS_SFF8070.
 
5995
        * include/grub/scsicmd.h (grub_scsi_test_unit_ready): New structure.
 
5996
        (grub_scsi_inquiry): New member page and alloc_length.
 
5997
        (grub_scsi_request_sense): New structure.
 
5998
        (grub_scsi_request_sense_data): Likewise.
 
5999
        (grub_scsi_read_capacity): New fields logical_block_addr, PMI and
 
6000
        control.
 
6001
        * disk/scsi.c (grub_scsi_request_sense): New function.
 
6002
        (grub_scsi_test_unit_ready): Likewise.
 
6003
        (grub_scsi_inquiry): Fill new fields.
 
6004
        (grub_scsi_read_capacity): Likewise.
 
6005
        (grub_scsi_read10): Add request sense at the end.
 
6006
        (grub_scsi_read12): Likewise.
 
6007
        (grub_scsi_write10): Likewise.
 
6008
        (grub_scsi_write12): Likewise.
 
6009
        (grub_scsi_open): Add Test Unit Ready.
 
6010
        * disk/usbms.c (grub_usbms_finddevs): Check configcnt.
 
6011
        Support additional subclasses. Con't clear halt yet. Activate the
 
6012
        proper config. Calculate LUNs correctly.
 
6013
        (grub_usbms_transfer): Various important fixups.
 
6014
 
 
6015
2010-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
6016
 
 
6017
        * bus/pci.c (grub_pci_iterate) [GRUB_MACHINE_MIPS_YEELOONG]: Skip ghosts.
 
6018
        * bus/usb/ohci.c (grub_ohci_portstatus): Handle R/WC correctly.
 
6019
        (grub_ohci_fini_hw): New function.
 
6020
        (grub_ohci_restore_hw): Likewise.
 
6021
        (GRUB_MOD_INIT(ohci)): Register preboot hook.
 
6022
        (GRUB_MOD_FINI(ohci)): Shutdown OHCI.
 
6023
        * term/usb_keyboard.c: Remove include of grub/machine/console.h.
 
6024
 
 
6025
2010-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
6026
 
 
6027
        Dedicated DMA allocations.
 
6028
 
 
6029
        * bus/pci.c (grub_memalign_dma32): New function
 
6030
        (grub_dma_free): Likewise.
 
6031
        (grub_dma_get_virt): Likewise.
 
6032
        (grub_dma_get_phys): Likewise.
 
6033
        * bus/usb/ohci.c (grub_ohci): New members hcca_addr and hcca_chunk.
 
6034
        (grub_ohci_pci_iter): Use dma32_alloc.
 
6035
        (grub_ohci_transfer): Likewise.
 
6036
        * bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
 
6037
        (grub_usb_bulk_readwrite): Likewise.
 
6038
        * include/grub/pci.h: Add declarations.
 
6039
 
 
6040
2010-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
6041
 
 
6042
        CS5536 support.
 
6043
 
 
6044
        * bus/cs5536.c: New file.
 
6045
        * bus/usb/ohci.c (grub_ohci_pci_iter): Check for CS5536.
 
6046
        * conf/i386.rmk (pkglib_MODULES): Add cs5536.mod.
 
6047
        (cs5536_mod_SOURCES): New variable.
 
6048
        (cs5536_mod_CFLAGS): Likewise.
 
6049
        (cs5536_mod_LDFLAGS): Likewise.
 
6050
        * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add cs5536.h and
 
6051
        machine/pci.h.
 
6052
        (kernel_img_SOURCES): Add bus/cs5536.c.
 
6053
        (pkglib_MODULES): Add usb.mod, usbtest.mod, ohci.mod, usbms.mod and
 
6054
        usb_keyboard.mod.
 
6055
        (usb_mod_SOURCES): New variable.
 
6056
        (usb_mod_CFLAGS): New variable.
 
6057
        (usb_mod_LDFLAGS): New variable.
 
6058
        (usbtest_mod_SOURCES): New variable.
 
6059
        (usbtest_mod_CFLAGS): New variable.
 
6060
        (usbtest_mod_LDFLAGS): New variable.
 
6061
        (ohci_mod_SOURCES): New variable.
 
6062
        (ohci_mod_CFLAGS): New variable.
 
6063
        (ohci_mod_LDFLAGS): New variable.
 
6064
        (usbms_mod_SOURCES): New variable.
 
6065
        (usbms_mod_CFLAGS): New variable.
 
6066
        (usbms_mod_LDFLAGS): New variable.
 
6067
        (usb_keyboard_mod_SOURCES): New variable.
 
6068
        (usb_keyboard_mod_CFLAGS): New variable.
 
6069
        (usb_keyboard_mod_LDFLAGS): New variable.
 
6070
        * include/grub/smbus.h: New file.
 
6071
        * include/grub/cs5536.h: New file.
 
6072
 
 
6073
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6074
 
 
6075
        * util/grub.d/00_header.in: Add safety check to make sure that
 
6076
        ${locale_dir} exists before trying to probe it.
 
6077
 
 
6078
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6079
 
 
6080
        * docs/grub.texi (SCO UnixWare): Remove, at Vladimir's request and
 
6081
        per the GNU Coding Standards; this is now too obscure to be worth
 
6082
        documenting.
 
6083
        (QNX): Likewise.
 
6084
        (chainloader): Remove cross-reference to `SCO UnixWare'.
 
6085
 
 
6086
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6087
 
 
6088
        * docs/grub.texi (Chain-loading): New section.
 
6089
        (DOS/Windows): New section, borrowed from GRUB Legacy with details
 
6090
        adjusted for GRUB 2.
 
6091
        (SCO UnixWare): Likewise.
 
6092
        (QNX): Likewise.
 
6093
        (chainloader): Add reference to `Block list syntax'.
 
6094
        (drivemap): New section.
 
6095
        (parttool): New section.
 
6096
 
 
6097
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6098
 
 
6099
        * docs/grub.texi (GNU GRUB manual): Remove reference to `Invoking
 
6100
        the grub shell'.
 
6101
        (Installation): Add reference to `Making a GRUB bootable CD-ROM'.
 
6102
        (Installing GRUB using grub-install): Remove reference to the grub
 
6103
        shell; mention `grub-mkimage' and `grub-setup' instead.
 
6104
        (Invoking grub-install): Likewise.
 
6105
        (Interface): Add reference to `Menu entry editor'.
 
6106
        (serial): Remove `--device' option.
 
6107
 
 
6108
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6109
 
 
6110
        * docs/grub.texi (Configuration): New section, documenting
 
6111
        configuration file generation using grub-mkconfig.  I've left a slot
 
6112
        for documenting the full shell scripting format but have not yet
 
6113
        started on writing that up.
 
6114
        (Invoking grub-mkconfig): New section.
 
6115
 
 
6116
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6117
 
 
6118
        * docs/grub.texi (direntry): Remove grub-terminfo reference.
 
6119
        (GNU GRUB manual): Likewise.
 
6120
        (General commands): Update description of `terminfo' for GRUB 2.
 
6121
 
 
6122
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6123
 
 
6124
        * commands/gptsync.c (grub_cmd_gptsync): Fix typos.
 
6125
        (GRUB_MOD_INIT): Fix capitalisation.
 
6126
        * docs/grub.texi (Command-line and menu entry commands): Document
 
6127
        gettext and gptsync commands.
 
6128
 
 
6129
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
 
6130
 
 
6131
        * conf/any-emu.rmk (kernel_img_SOURCES) [!x86]: Include
 
6132
        kern/$(target_cpu)/cache.S even if TARGET_NO_MODULES = yes.
 
6133
 
 
6134
2010-06-01  Colin Watson  <cjwatson@ubuntu.com>
 
6135
 
 
6136
        Add btrfs probing support, currently only in the single-device case.
 
6137
 
 
6138
        * kern/emu/getroot.c (find_root_device_from_mountinfo): New
 
6139
        function.
 
6140
        (grub_guess_root_device): Call find_root_device_from_mountinfo
 
6141
        before looking in /dev.
 
6142
 
 
6143
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
6144
 
 
6145
        * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Use
 
6146
        GRUB_DISK_SIZE_UNKNOWN.
 
6147
        * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Likewise.
 
6148
 
 
6149
2010-05-31  Jiro SEKIBA <jir@unicus.jp>
 
6150
 
 
6151
        * include/grub/disk.h (GRUB_DISK_SIZE_UNKNOWN): New macro.
 
6152
        * fs/nilfs.c: Support 2nd super block in case 1st one is accidently
 
6153
        corrupted or not synced properly.
 
6154
 
 
6155
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
6156
 
 
6157
        * normal/main.c (grub_normal_add_menu_entry): Avoid going out of args.
 
6158
        Reported by: Seth Goldberg.
 
6159
 
 
6160
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
6161
 
 
6162
        * loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix incorrect
 
6163
        addition of dest.
 
6164
        Reported by: Seth Goldberg.
 
6165
 
 
6166
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
6167
 
 
6168
        * commands/setpci.c (grub_setpci_iter): Fix an incorrect function check.
 
6169
        Reported by: Seth Goldberg.
 
6170
 
 
6171
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
6172
 
 
6173
        * loader/multiboot_elfxx.c (grub_multiboot_load_elfXX) [__mips]: Check
 
6174
        64-bit address as signed on MIPS.
 
6175
 
 
6176
2010-05-28  Colin Watson  <cjwatson@ubuntu.com>
 
6177
 
 
6178
        * configure.ac: AC_PROG_LEX sets LEX to ":" if lex is missing, not
 
6179
        to the empty string.
 
6180
 
 
6181
2010-05-28  BVK Chaitanya  <bvk.groups@gmail.com>
 
6182
 
 
6183
        Fix grub-emu issues on NetBSD, with gcc 4.1.3.
 
6184
 
 
6185
        * conf/any-emu.rmk: Remove unnecessary COMMON_CFLAGS.
 
6186
        * include/grub/emu/misc.h (canonicalize_file_name): New Prototype.
 
6187
        * kern/misc.c (__enable_execute_stack): Disable on
 
6188
        GRUB_MACHINE_EMU.
 
6189
 
 
6190
2010-05-28  Colin Watson  <cjwatson@ubuntu.com>
 
6191
 
 
6192
        Make grub-probe work with symbolic links under /dev/mapper as well
 
6193
        as with real block devices.  The Linux world seems to be (at best)
 
6194
        in transition here, and GRUB shouldn't get caught in the middle.
 
6195
 
 
6196
        * kern/emu/getroot.c (find_root_device): Follow symbolic links under
 
6197
        /dev/mapper.
 
6198
 
 
6199
2010-05-27  Colin Watson  <cjwatson@ubuntu.com>
 
6200
 
 
6201
        * util/grub-script-check.c (main): Ensure defined behaviour on empty
 
6202
        input files (in which case exit zero).
 
6203
 
 
6204
2010-05-27  Colin Watson  <cjwatson@ubuntu.com>
 
6205
 
 
6206
        * kern/emu/misc.c (canonicalize_file_name): realpath can still
 
6207
        return NULL for various reasons even if it has a maximum-length
 
6208
        buffer: for example, there might be a symlink loop, or the path
 
6209
        might exceed PATH_MAX.  If this happens, return NULL.
 
6210
 
 
6211
2010-05-27  Robert Millan  <rmh@gnu.org>
 
6212
 
 
6213
        * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Insert
 
6214
        partmap module to handle cross-partmap setups.
 
6215
        Reported by Orestes Mas.  Gràcies!
 
6216
 
 
6217
2010-05-27  Colin Watson  <cjwatson@ubuntu.com>
 
6218
 
 
6219
        * util/grub-mkrescue.in: Initialise override_dir rather than
 
6220
        assuming that it's unset or empty in the environment.
 
6221
 
 
6222
2010-05-26  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
6223
 
 
6224
        * kern/emu/hostdisk.c (find_partition_start) [__NetBSD__]: Renamed
 
6225
        variable index into p_index to suppress a warning with -Wshadow.
 
6226
 
 
6227
2010-05-25  BVK Chaitanya  <bvk.groups@gmail.com>
 
6228
 
 
6229
        * INSTALL: Added flex >= 2.5.35 requirement.
 
6230
 
 
6231
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
6232
 
 
6233
        * commands/usbtest.c (grub_usb_get_string): Properly support UTF-16.
 
6234
 
 
6235
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
6236
 
 
6237
        cmostest support.
 
6238
 
 
6239
        * commands/i386/cmostest.c: New file.
 
6240
        * conf/i386-coreboot.rmk (pkglib_MODULES): Add cmostest.mod.
 
6241
        (cmostest_mod_SOURCES): New variable.
 
6242
        (cmostest_mod_CFLAGS): Likewise.
 
6243
        (cmostest_mod_LDFLAGS): Likewise.
 
6244
        * conf/i386-pc.rmk: Likewise.
 
6245
        * docs/grub.texi (Vendor power-on keys): New section.
 
6246
        * util/grub-mkconfig.in: export GRUB_DEFAULT_BUTTON,
 
6247
        GRUB_HIDDEN_TIMEOUT_BUTTON, GRUB_TIMEOUT_BUTTON
 
6248
        and GRUB_BUTTON_CMOS_ADDRESS.
 
6249
        * util/grub.d/00_header.in: Handle powering-on by separate button.
 
6250
 
 
6251
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
6252
 
 
6253
        * gfxmenu/gui_list.c (draw_menu): Don't add scrollbar width to padding.
 
6254
        Removed drawing_scrollbar argument. All users updated
 
6255
        Fixes #29792.
 
6256
        Reported by Jo Shields
 
6257
 
 
6258
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
6259
 
 
6260
        * gfxmenu/view.c (grub_gfxmenu_draw_terminal_box): Apply only to current
 
6261
        buffer since gfxterm handles double repaint.
 
6262
 
 
6263
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
6264
 
 
6265
        * gfxmenu/gfxmenu.c (grub_gfxmenu_try): Change viewport on both buffers.
 
6266
        * term/gfxterm.c (real_scroll): Likewise.
 
6267
 
 
6268
2010-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
6269
 
 
6270
        * kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Zero-fill entry
 
6271
        before calling BIOS.
 
6272
 
 
6273
2010-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
6274
 
 
6275
        * include/grub/i18n.h: Always enable grub_gettext.
 
6276
 
 
6277
2010-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
6278
 
 
6279
        * kern/i386/pc/init.c (make_install_device): Fix a leftover usage of old
 
6280
        partition naming style.
 
6281
 
 
6282
2010-05-21  Colin Watson  <cjwatson@ubuntu.com>
 
6283
 
 
6284
        * util/grub-mkconfig.in: Fix handling of -o so that it works when
 
6285
        not the first option.
 
6286
 
 
6287
2010-05-20  Colin Watson  <cjwatson@ubuntu.com>
 
6288
 
 
6289
        * util/grub-mkrelpath.c (usage): Remove excess apostrophe.
 
6290
 
 
6291
2010-05-20  Colin Watson  <cjwatson@ubuntu.com>
 
6292
 
 
6293
        * util/misc.c: Move inclusion of <limits.h> to ...
 
6294
        * kern/emu/misc.c: ... here.  Needed for canonicalize_file_name.
 
6295
 
 
6296
2010-05-20  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
6297
 
 
6298
        * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev) [__NetBSD__]:
 
6299
        Fix merge error in NetBSD code.
 
6300
        (find_partition_start) [__NetBSD__]: Likewise.
 
6301
 
 
6302
2010-05-19  BVK Chaitanya  <bvk.groups@gmail.com>
 
6303
 
 
6304
        Fix grub-mkrescue usage unit testing.
 
6305
 
 
6306
        * tests/util/grub-shell.in: Use --grub-mkimage with grub-mkrescue.
 
6307
 
 
6308
2010-05-18  Christian Franke  <franke@computer.org>
 
6309
 
 
6310
        * util/grub.d/10_windows.in: Use path names instead of
 
6311
        drive letters to prevent warning from Cygwin 1.7.
 
6312
        Add drivemap command to menuentry if needed.
 
6313
 
 
6314
2010-05-18  Justus Winter  <4winter@informatik.uni-hamburg.de>
 
6315
 
 
6316
        * util/grub.d/10_hurd.in: Include all gnumach* kernels, not only
 
6317
        gnumach and gnumach.gz.
 
6318
 
 
6319
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6320
 
 
6321
        * include/grub/i18n.h (gettext): Inline instead of using #define.
 
6322
        (grub_gettext): Likewise.
 
6323
        (_): Likewise.
 
6324
 
 
6325
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6326
 
 
6327
        * Makefile.in (CPPFLAGS): Replace -DGRUB_LIBDIR with
 
6328
        -DGRUB_PKGLIBROOTDIR= and prepend @PACKAGE_TARNAME@. All users updated.
 
6329
        * util/grub-mkimage.c (image_targets): Add i386-multiboot.
 
6330
        (main): Add a slash after pkglibdirroot.
 
6331
 
 
6332
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6333
 
 
6334
        * util/grub-install.in: Add missing "in" keyword.
 
6335
 
 
6336
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6337
 
 
6338
        * util/grub-mkrescue.in: Remove -O i386-pc duplication.
 
6339
        Reported by: Seth Goldberg.
 
6340
 
 
6341
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6342
 
 
6343
        * po/POTFILES: Rename util/grub-mkrawimage.c to util/grub-mkimage.c.
 
6344
 
 
6345
2010-05-18  Colin Watson  <cjwatson@ubuntu.com>
 
6346
 
 
6347
        * configure.ac: Check for Linux device-mapper support.
 
6348
 
 
6349
        * util/hostdisk.c (device_is_mapped): New function.
 
6350
        (find_partition_start): New function, partly broken out from
 
6351
        linux_find_partition and grub_util_biosdisk_get_grub_dev but with
 
6352
        device-mapper support added.
 
6353
        (linux_find_partition): Use find_partition_start.
 
6354
        (convert_system_partition_to_system_disk): Add `st' argument.
 
6355
        Support Linux /dev/mapper/* devices if device-mapper support is
 
6356
        available; only DM-RAID devices are understood at present.
 
6357
        (find_system_device): Add `st' argument.  Pass it to
 
6358
        convert_system_partition_to_system_disk.
 
6359
        (grub_util_biosdisk_get_grub_dev): Pass stat result to
 
6360
        find_system_device and convert_system_partition_to_system_disk.  Use
 
6361
        find_partition_start.
 
6362
 
 
6363
        * conf/common.rmk (grub_mkdevicemap_SOURCES): Add kern/env.c,
 
6364
        kern/err.c, kern/list.c, kern/misc.c, and kern/emu/mm.c.
 
6365
        * util/deviceiter.c [__linux__]: Define MINOR.
 
6366
        (grub_util_iterate_devices): Add support for DM-RAID disk devices.
 
6367
        * util/mkdevicemap.c (grub_putchar): New function.
 
6368
        (grub_getkey): New function.
 
6369
        (grub_refresh): New function.
 
6370
        (main): Set debug=all if -v -v is used.
 
6371
 
 
6372
2010-05-18  Colin Watson  <cjwatson@ubuntu.com>
 
6373
 
 
6374
        Fix build with non-GNU libcs.
 
6375
 
 
6376
        * util/misc.c (canonicalize_file_name): Move to ...
 
6377
        * kern/emu/misc.c (canonicalize_file_name): ... here.  Needed by
 
6378
        grub_make_system_path_relative_to_its_root.
 
6379
 
 
6380
2010-05-18  Colin Watson  <cjwatson@ubuntu.com>
 
6381
 
 
6382
        * util/grub-mkrescue.in: Sync up with grub-install in terms of how
 
6383
        we handle finding grub-mkimage.  Default to finding grub-mkimage in
 
6384
        ${bindir} with program_transform_name applied, and provide a
 
6385
        --grub-mkimage option to override this.
 
6386
 
 
6387
2010-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
6388
 
 
6389
        Remove grub-mkisofs.
 
6390
 
 
6391
        * conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs.
 
6392
        (grub_mkisofs_SOURCES): Removed.
 
6393
        (grub_mkisofs_CFLAGS): Removed.
 
6394
        * util/mkisofs/defaults.h: Removed.
 
6395
        * util/mkisofs/eltorito.c: Likewise.
 
6396
        * util/mkisofs/exclude.h: Likewise.
 
6397
        * util/mkisofs/hash.c: Likewise.
 
6398
        * util/mkisofs/include/: Likewise.
 
6399
        * util/mkisofs/include/fctldefs.h: Likewise.
 
6400
        * util/mkisofs/include/mconfig.h: Likewise.
 
6401
        * util/mkisofs/include/prototyp.h: Likewise.
 
6402
        * util/mkisofs/include/statdefs.h: Likewise.
 
6403
        * util/mkisofs/iso9660.h: Likewise.
 
6404
        * util/mkisofs/joliet.c: Likewise.
 
6405
        * util/mkisofs/match.c: Likewise.
 
6406
        * util/mkisofs/match.h: Likewise.
 
6407
        * util/mkisofs/mkisofs.c: Likewise.
 
6408
        * util/mkisofs/mkisofs.h: Likewise.
 
6409
        * util/mkisofs/msdos_partition.h: Likewise.
 
6410
        * util/mkisofs/multi.c: Likewise.
 
6411
        * util/mkisofs/name.c: Likewise.
 
6412
        * util/mkisofs/rock.c: Likewise.
 
6413
        * util/mkisofs/tree.c: Likewise.
 
6414
        * util/mkisofs/write.c: Likewise.
 
6415
 
 
6416
2010-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
6417
 
 
6418
        Unify grub-mkimage accross platforms.
 
6419
 
 
6420
        * Makefile.in (CPPFLAGS): Set GRUB_LIBDIR to $(libdir).
 
6421
        * conf/common.rmk (bin_UTILITIES): Removed grub-mkelfimage.
 
6422
        (grub_mkelfimage_SOURCES): Removed.
 
6423
        (util/elf/grub-mkimage.c_DEPENDENCIES): Renamed to ..
 
6424
        (util/grub-mkimage.c_DEPENDENCIES): .. this.
 
6425
        (bin_UTILITIES): Add grub-mkimage.
 
6426
        (grub_mkimage_SOURCES): New variable.
 
6427
        (kernel_img_HEADERS): Remove machine/kernel.h.
 
6428
        * conf/i386-pc.rmk (pkglib_IMAGES): Remove kernel.img.
 
6429
        (pkglib_PROGRAMS): Add kernel.img.
 
6430
        (kernel_img_HEADERS): Add machine/kernel.h.
 
6431
        (kernel_img_FORMAT): Removed.
 
6432
        (bin_UTILITIES): Remove grub-mkimage.
 
6433
        (grub_mkimage_SOURCES): Removed.
 
6434
        (grub_mkimage_CFLAGS): Likewise.
 
6435
        (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
 
6436
        * conf/i386-qemu.rmk (pkglib_IMAGES): Remove kernel.img.
 
6437
        (pkglib_PROGRAMS): Add kernel.img.
 
6438
        (bin_UTILITIES): Remove grub-mkimage.
 
6439
        (grub_mkimage_SOURCES): Removed.
 
6440
        (grub_mkimage_CFLAGS): Likewise.
 
6441
        (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
 
6442
        * conf/mips-qemu-mips.rmk (pkglib_IMAGES): Remove kernel.img.
 
6443
        (pkglib_PROGRAMS): Add kernel.img.
 
6444
        * conf/mips-yeeloong.rmk (pkglib_IMAGES): Remove kernel.img.
 
6445
        (pkglib_PROGRAMS): Add kernel.img.
 
6446
        * conf/mips.rmk (bin_UTILITIES): Remove grub-mkimage.
 
6447
        (grub_mkimage_SOURCES): Removed.
 
6448
        (grub_mkimage_CFLAGS): Likewise.
 
6449
        (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
 
6450
        * conf/sparc64-ieee1275.rmk (pkglib_IMAGES): Remove kernel.img.
 
6451
        (pkglib_PROGRAMS): Add kernel.img.
 
6452
        (bin_UTILITIES): Remove grub-mkimage.
 
6453
        (grub_mkimage_SOURCES): Removed.
 
6454
        (grub_mkimage_CFLAGS): Likewise.
 
6455
        (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
 
6456
        * conf/x86-efi.rmk (bin_UTILITIES): Remove grub-mkimage.
 
6457
        (grub_mkimage_SOURCES): Removed.
 
6458
        (grub_mkimage_CFLAGS): Likewise.
 
6459
        (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
 
6460
        * configure.ac (machine_CFLAGS): Add "-DMACHINE".
 
6461
        * include/grub/efi/pe32.h (grub_pe32_optional_header): Split into ...
 
6462
        (grub_pe32_optional_header): ... this.
 
6463
        (grub_pe64_optional_header): ... and this. All users updated.
 
6464
        (GRUB_PE32_PE32_MAGIC): Split into ..
 
6465
        (GRUB_PE32_PE32_MAGIC): .. this.
 
6466
        (GRUB_PE32_PE64_MAGIC): .. and this.
 
6467
        (GRUB_PE32_SIGNATURE_SIZE): New definition.
 
6468
        * include/grub/elf.h (PT_GNU_STACK): New definition.
 
6469
        * include/grub/i386/coreboot/kernel.h: Merged into include/grub/offsets.h. All users updated.
 
6470
        * include/grub/i386/efi/kernel.h: Likewise.
 
6471
        * include/grub/i386/kernel.h: Likewise.
 
6472
        * include/grub/i386/pc/kernel.h: Likewise.
 
6473
        * include/grub/i386/qemu/boot.h: Likewise.
 
6474
        * include/grub/mips/kernel.h: Likewise.
 
6475
        * include/grub/mips/qemu-mips/kernel.h: Likewise.
 
6476
        * include/grub/powerpc/ieee1275/kernel.h: Likewise.
 
6477
        * include/grub/powerpc/kernel.h: Likewise.
 
6478
        * include/grub/sparc64/ieee1275/boot.h: Likewise.
 
6479
        * include/grub/sparc64/ieee1275/kernel.h: Likewise.
 
6480
        * include/grub/sparc64/kernel.h: Likewise.
 
6481
        * include/grub/x86_64/efi/kernel.h: Likewise.
 
6482
        * include/grub/x86_64/kernel.h: Likewise.
 
6483
        * include/grub/offsets.h: New file.
 
6484
        * include/grub/kernel.h (grub_module_info): Split into ...
 
6485
        (grub_module_info32): ... this.
 
6486
        (grub_module_info64): ... and this.
 
6487
        * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_KERNEL_SEG): Moved from here ...
 
6488
        * include/grub/offsets.h (GRUB_BOOT_I386_PC_KERNEL_SEG): ... here.
 
6489
        (grub_boot_blocklist): Moved from here ...
 
6490
        * include/grub/offsets.h (grub_pc_bios_boot_blocklist): ... here.
 
6491
        * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): Moved from here.
 
6492
        * include/grub/offsets.h (GRUB_MEMORY_I386_PC_UPPER): .. here.
 
6493
        * include/grub/types.h (grub_target_to_host16): Removed.
 
6494
        (grub_target_to_host32): Likewise.
 
6495
        (grub_target_to_host64): Likewise.
 
6496
        (grub_host_to_target16): Likewise.
 
6497
        (grub_host_to_target32): Likewise.
 
6498
        (grub_host_to_target64): Likewise.
 
6499
        (grub_host_to_target_addr): Likewise.
 
6500
 
 
6501
        Support grub-mkrescue for efi, coreboot and qemu.
 
6502
 
 
6503
        * conf/x86-efi.rmk (bin_SCRIPTS): Add grub-mkrescue.
 
6504
        * kern/efi/init.c (grub_efi_set_prefix): Handle baked in prefix.
 
6505
        * util/elf/grub-mkimage.c: Merged into util/grub-mkimage.c.
 
6506
        * util/grub-mkrawimage.c: Moved from here ...
 
6507
        * util/grub-mkimage.c: ... here. All users updated.
 
6508
        (ALIGN_ADDR): Use image_target.
 
6509
        (TARGET_NO_FIELD): New const.
 
6510
        (image_target_desc): New type.
 
6511
        (image_targets): New array.
 
6512
        (grub_target_to_host64): Use image_target.
 
6513
        (grub_target_to_host32): Likewise.
 
6514
        (grub_target_to_host16): Likewise.
 
6515
        (grub_host_to_target64): Likewise.
 
6516
        (grub_host_to_target32): Likewise.
 
6517
        (grub_host_to_target16): Likewise.
 
6518
        (grub_host_to_target_addr): Likewise.
 
6519
        (generate_image): Handle multiimage.
 
6520
        (main): Require -O parameter. All users updated.
 
6521
        * util/grub-mkimagexx.c: New file. Based on util/grub-mkrawimage.c and
 
6522
        util/efi/grub-mkimage.c
 
6523
        * util/grub-mkrescue.in: Handle coreboot, efi and qemu.
 
6524
        New option --rom-directory.
 
6525
        Use xorriso.
 
6526
        * util/i386/efi/grub-mkimage.c: Removed.
 
6527
        * util/i386/pc/grub-setup.c (grub_target_to_host16): New definition.
 
6528
        (grub_target_to_host32): Likewise.
 
6529
        (grub_target_to_host64): Likewise.
 
6530
        (grub_host_to_target16): Likewise.
 
6531
        (grub_host_to_target32): Likewise.
 
6532
        (grub_host_to_target64): Likewise.
 
6533
        * util/sparc64/ieee1275/grub-setup.c (grub_target_to_host16): New definition.
 
6534
        (grub_target_to_host32): Likewise.
 
6535
        (grub_target_to_host64): Likewise.
 
6536
        (grub_host_to_target16): Likewise.
 
6537
        (grub_host_to_target32): Likewise.
 
6538
        (grub_host_to_target64): Likewise.
 
6539
 
 
6540
2010-05-17  BVK Chaitanya  <bvk.groups@gmail.com>
 
6541
 
 
6542
        Source tree is reorganized for emu build.
 
6543
 
 
6544
        * include/grub/util/console.h: Move from here...
 
6545
        * include/grub/emu/console.h: ...to here.
 
6546
        * include/grub/util/getroot.h: Move from here...
 
6547
        * include/grub/emu/getroot.h: ...to here.
 
6548
        * include/grub/util/hostdisk.h: Move from here...
 
6549
        * include/grub/emu/hostdisk.h: ...to here.
 
6550
        * util/console.c: Move from here...
 
6551
        * kern/emu/console.c: ...to here.
 
6552
        * util/getroot.c: Move from here...
 
6553
        * kern/emu/getroot.c: ...to here.
 
6554
        * util/grub-emu.c: Move from here...
 
6555
        * kern/emu/main.c: ...to here.
 
6556
        * util/hostdisk.c: Move from here...
 
6557
        * kern/emu/hostdisk.c: ...to here.
 
6558
        * util/hostfs.c: Move from here...
 
6559
        * kern/emu/hostfs.c: ...to here.
 
6560
        * util/mm.c: Move from here...
 
6561
        * kern/emu/mm.c: ...to here.
 
6562
        * util/pci.c: Move from here...
 
6563
        * bus/emu/pci.c: ...to here.
 
6564
        * util/sdl.c: Move from here...
 
6565
        * video/emu/sdl.c: ...to here.
 
6566
        * util/time.c: Move from here...
 
6567
        * kern/emu/time.c: ...to here.
 
6568
        * util/usb.c: Move from here...
 
6569
        * bus/usb/emu/usb.c: ...to  here.
 
6570
 
 
6571
        * include/grub/emu/misc.h: New header for grub-emu functions.
 
6572
        * kern/emu/misc.c: grub-emu functions separated from util/misc.c
 
6573
 
 
6574
        * conf/any-emu.rmk: Rule updates for above renames.
 
6575
        * conf/common.rmk: Likewise.
 
6576
        * conf/i386-pc.rmk: Likewise.
 
6577
        * conf/i386-qemu.rmk: Likewise.
 
6578
        * conf/mips.rmk: Likewise.
 
6579
        * conf/sparc64-ieee1275.rmk: Likewise.
 
6580
        * conf/x86-efi.rmk: Likewise.
 
6581
 
 
6582
        * disk/lvm.h: #include updates for above renames.
 
6583
        * util/grub-mkrelpath.c: Likewise.
 
6584
        * util/grub-probe.c: Likewise.
 
6585
        * util/i386/pc/grub-setup.c: Likewise.
 
6586
        * util/sparc64/ieee1275/grub-setup.c: Likewise.
 
6587
        * kern/emu/console.c: Likewise.
 
6588
        * kern/emu/getroot.c: Likewise.
 
6589
        * kern/emu/hostdisk.c: Likewise.
 
6590
        * kern/emu/main.c: Likewise. (was grub-emu.c earlier)
 
6591
 
 
6592
        * include/grub/dl.h: Remove grub_dl_{ref,unref}.
 
6593
        * include/grub/util/misc.h: Move grub-emu functions to emu/misc.h.
 
6594
        * kern/dl.c: Handle null mod in grub_dl_{ref,unref}.
 
6595
        * util/misc.c: Remove grub-emu functions.
 
6596
 
 
6597
2010-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
6598
 
 
6599
        Fix gfxmenu crash.
 
6600
        Reported by: Thorsten Grützmacher.
 
6601
 
 
6602
        * gfxmenu/gui_circular_progress.c (circprog_destroy): Unregister
 
6603
        timeout hook.
 
6604
        (circprog_set_property): Register and unregister timeout hook.
 
6605
        * gfxmenu/gui_label.c (grub_gui_label): New fields template and value.
 
6606
        (label_destroy): Free template. and unregister hook.
 
6607
        (label_set_state): New function.
 
6608
        (label_set_property): Handle templates and hooks.
 
6609
        * gfxmenu/gui_progress_bar.c (progress_bar_destroy): Unregister
 
6610
        timeout hook.
 
6611
        (progress_bar_set_property): Register and unregister timeout hook.
 
6612
        * gfxmenu/view.c (TIMEOUT_COMPONENT_ID): Move from here ...
 
6613
        * include/grub/gui.h (GRUB_GFXMENU_TIMEOUT_COMPONENT_ID): ...to here
 
6614
        * gfxmenu/view.c (grub_gfxmenu_timeout_notifications): New variable.
 
6615
        (update_timeout_visit): Removed.
 
6616
        (update_timeouts): New function.
 
6617
        (redraw_timeouts): Likewise.
 
6618
        (grub_gfxmenu_print_timeout): Use update_timeouts and redraw_timeouts.
 
6619
        (grub_gfxmenu_clear_timeout): Likewise.
 
6620
        * include/grub/gui.h (grub_gfxmenu_set_state_t): New type.
 
6621
        (grub_gfxmenu_timeout_notify): Likewise.
 
6622
        (grub_gfxmenu_timeout_notifications): New external variable.
 
6623
        (grub_gfxmenu_timeout_register): New function.
 
6624
        (grub_gfxmenu_timeout_unregister): Likewise.
 
6625
 
 
6626
2010-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
6627
 
 
6628
        Transform (broken) vga terminal into (working) vga video driver.
 
6629
 
 
6630
        * conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
 
6631
        video/i386/pc/vga.c.
 
6632
        * include/grub/video.h (grub_video_driver_id):
 
6633
        Add GRUB_VIDEO_DRIVER_VGA.
 
6634
        * term/i386/pc/vga.c: Renamed to ...
 
6635
        * video/i386/pc/vga.c: ...this
 
6636
        (DEBUG_VGA): Removed.
 
6637
        (CHAR_WIDTH): Likewise.
 
6638
        (CHAR_HEIGHT): Likewise.
 
6639
        (TEXT_WIDTH): Likewise.
 
6640
        (TEXT_HEIGHT): Likewise.
 
6641
        (DEFAULT_FG_COLOR): Likewise.
 
6642
        (DEFAULT_BG_COLOR): Likewise.
 
6643
        (colored_char): Likewise.
 
6644
        (xpos): Likewise.
 
6645
        (ypos): Likewise.
 
6646
        (cursor_state): Likewise.
 
6647
        (fg_color): Likewise.
 
6648
        (bg_color): Likewise.
 
6649
        (text_buf): Likewise.
 
6650
        (page): Likewise.
 
6651
        (font): Likewise.
 
6652
        (framebuffer): New variable.
 
6653
        (set_read_map): Disabled.
 
6654
        (setup): New variable.
 
6655
        (is_target): Likewise.
 
6656
        (grub_vga_mod_init): Likewise.
 
6657
        (grub_vga_mod_fini): Likewise.
 
6658
        (check_vga_mem): Likewise.
 
6659
        (write_char): Likewise.
 
6660
        (write_cursor): Likewise.
 
6661
        (scroll_up): Likewise.
 
6662
        (grub_vga_putchar): Likewise.
 
6663
        (grub_vga_getcharwidth): Likewise.
 
6664
        (grub_vga_getwh): Likewise.
 
6665
        (grub_vga_getxy): Likewise.
 
6666
        (grub_vga_gotoxy): Likewise.
 
6667
        (grub_vga_cls): Likewise.
 
6668
        (grub_vga_setcolorstate): Likewise.
 
6669
        (grub_vga_setcursor): Likewise.
 
6670
        (grub_video_vga_init): New function.
 
6671
        (grub_video_vga_setup): Likewise.
 
6672
        (grub_video_vga_fini): Likewise.
 
6673
        (update_target): Likewise.
 
6674
        (grub_video_vga_blit_bitmap): Likewise.
 
6675
        (grub_video_vga_blit_render_target): Likewise.
 
6676
        (grub_video_vga_set_active_render_target): Likewise.
 
6677
        (grub_video_vga_get_active_render_target): Likewise.
 
6678
        (grub_video_vga_swap_buffers): Likewise.
 
6679
        (grub_video_vga_set_palette): Likewise.
 
6680
        (grub_video_vga_get_info_and_fini): Likewise.
 
6681
        (grub_vga_term): Removed.
 
6682
        (grub_video_vga_adapter): New variable.
 
6683
        (GRUB_MOD_INIT): Register a video driver instead of terminal.
 
6684
        (GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
 
6685
 
 
6686
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
6687
 
 
6688
        * video/readers/jpeg.c: Indented.
 
6689
 
 
6690
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
6691
 
 
6692
        Various jpeg cleanups.
 
6693
 
 
6694
        * video/readers/jpeg.c (grub_jpeg_get_huff_code): Use ARRAY_SIZE.
 
6695
        (grub_jpeg_decode_quan_table): Use sizeof.
 
6696
        (grub_jpeg_decode_du): Use ARRAY_SIZE.
 
6697
 
 
6698
2010-05-05  Peter Hurley <No e-mail available> (tiny change)
 
6699
 
 
6700
        * video/readers/jpeg.c (grub_jpeg_decode_huff_table): Loop over all
 
6701
        tables. Ignore non-last ac bit.
 
6702
        (grub_jpeg_decode_quan_table): Likewise.
 
6703
 
 
6704
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
6705
 
 
6706
        * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
 
6707
        GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM.
 
6708
        * kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
 
6709
        GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM on qemu.
 
6710
        * kern/ieee1275/init.c (grub_claim_heap): Don0t allocate below
 
6711
        1.5MiB if GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM is set.
 
6712
 
 
6713
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
6714
 
 
6715
        * term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one
 
6716
        error.
 
6717
 
 
6718
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
6719
 
 
6720
        * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code.
 
6721
 
 
6722
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
6723
 
 
6724
        * commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES
 
6725
        condition.
 
6726
 
 
6727
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
6728
 
 
6729
        * kern/mm.c (grub_real_malloc): Put magic and size assignment in common
 
6730
        part.
 
6731
 
 
6732
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
6733
 
 
6734
        * kern/mm.c (grub_mm_init_region): Check for region size after aligning
 
6735
        pointers.
 
6736
 
 
6737
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
6738
 
 
6739
        * kern/mm.c (grub_real_malloc): Fix size calculation when extra == 0.
 
6740
 
 
6741
2010-05-01  Christian Franke  <franke@computer.org>
 
6742
 
 
6743
        * util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
 
6744
        Remove broken Cygwin path conversion.
 
6745
        * util/misc.c: [__CYGWIN__] Add include and define.
 
6746
        [__CYGWIN__] (get_win32_path): Copy function from getroot.c, modify
 
6747
        for Cygwin 1.7.
 
6748
        (make_system_path_relative_to_its_root): Simplify loop, replace early
 
6749
        return by break.
 
6750
        [__CYGWIN__] Add conversion to win32 path.
 
6751
        Include "/" case in trailing slash removal.
 
6752
 
 
6753
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6754
 
 
6755
        * kern/main.c (grub_load_config): Fix copy-pasted comment.
 
6756
        Reported by: Seth Goldberg
 
6757
 
 
6758
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6759
 
 
6760
        * commands/help.c (grub_cmd_help): Fix a typo.
 
6761
        Reported by: Seth Goldberg
 
6762
 
 
6763
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6764
 
 
6765
        * commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command
 
6766
        name and add N_.
 
6767
        * commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise.
 
6768
        * commands/iorw.c (GRUB_MOD_INIT): Likewise.
 
6769
        * commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise.
 
6770
        * commands/regexp.c (GRUB_MOD_INIT): Likewise.
 
6771
        * commands/setpci.c (GRUB_MOD_INIT): Likewise.
 
6772
        * commands/terminal.c (GRUB_MOD_INIT): Likewise.
 
6773
        * efiemu/main.c (GRUB_MOD_INIT): Likewise.
 
6774
        * font/font_cmd.c (GRUB_MOD_INIT): Likewise.
 
6775
        * kern/corecmd.c (GRUB_MOD_INIT): Likewise.
 
6776
        * mmap/mmap.c (GRUB_MOD_INIT): Likewise.
 
6777
        * normal/context.c (GRUB_MOD_INIT): Likewise.
 
6778
        * normal/main.c (GRUB_MOD_INIT): Likewise.
 
6779
        * term/gfxterm.c (GRUB_MOD_INIT): Likewise.
 
6780
        * term/serial.c (GRUB_MOD_INIT): Likewise.
 
6781
        * term/terminfo.c (GRUB_MOD_INIT): Likewise.
 
6782
 
 
6783
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6784
 
 
6785
        * kern/mm.c (grub_real_malloc): Satisfy alignment requirement when
 
6786
        extra == 0.
 
6787
 
 
6788
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6789
 
 
6790
        * commands/iorw.c: New file.
 
6791
        * conf/i386.rmk (pkglib_MODULES): Add iorw.mod.
 
6792
        (iorw_mod_SOURCES): New variable.
 
6793
        (iorw_mod_CFLAGS): Likewise.
 
6794
        (iorw_mod_LDFLAGS): Likewise.
 
6795
 
 
6796
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6797
 
 
6798
        Hotkey support
 
6799
 
 
6800
        * include/grub/menu.h (grub_menu_entry): New field 'hotkey'.
 
6801
        * normal/main.c (hotkey_aliases): New variable.
 
6802
        (grub_normal_add_menu_entry): Parse "--hotkey".
 
6803
        * normal/menu_text.c (run_menu): Handle hotkeys.
 
6804
 
 
6805
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6806
 
 
6807
        * kern/i386/coreboot/init.c (grub_machine_init): Call
 
6808
        grub_machine_mmap_init on qemu.
 
6809
 
 
6810
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6811
 
 
6812
        * boot/i386/qemu/boot.S: Add a missing .code16.
 
6813
 
 
6814
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6815
 
 
6816
        Use LBIO on coreboot.
 
6817
 
 
6818
        * conf/i386-coreboot.rmk (kernel_img_SOURCES): Change
 
6819
        kern/i386/multiboot_mmap.c to kern/i386/coreboot/mmap.c.
 
6820
        * include/grub/i386/coreboot/memory.h (GRUB_LINUXBIOS_MEMBER_LINK):
 
6821
        New declaration.
 
6822
        * kern/i386/coreboot/init.c (grub_machine_init): Don't call
 
6823
        grub_machine_mmap_init on coreboot.
 
6824
        * kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): Handle
 
6825
        GRUB_LINUXBIOS_MEMBER_LINK.
 
6826
        (grub_machine_mmap_iterate): Fix declaration.
 
6827
        * kern/i386/coreboot/startup.S: Don't save mbi location on coreboot.
 
6828
 
 
6829
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6830
 
 
6831
        Split coreboot and multiboot ports.
 
6832
 
 
6833
        * conf/i386-multiboot.rmk: New file.
 
6834
        * configure.ac: Add multiboot port.
 
6835
        * include/grub/i386/multiboot/boot.h: New file.
 
6836
        * include/grub/i386/multiboot/console.h: Likewise.
 
6837
        * include/grub/i386/multiboot/init.h: Likewise.
 
6838
        * include/grub/i386/multiboot/kernel.h: Likewise.
 
6839
        * include/grub/i386/multiboot/loader.h: Likewise.
 
6840
        * include/grub/i386/multiboot/memory.h: Likewise.
 
6841
        * include/grub/i386/multiboot/serial.h: Likewise.
 
6842
        * include/grub/i386/multiboot/time.h: Likewise.
 
6843
        * include/grub/multiboot.h: Add GRUB_MACHINE_MULTIBOOT to ifdef.
 
6844
        * loader/multiboot.c: Likewise.
 
6845
        * loader/multiboot_mbi2.c: Likewise.
 
6846
        * util/grub-mkrescue.in: Generate multiboot rescue.
 
6847
 
 
6848
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6849
 
 
6850
        * kern/parser.c (grub_parser_execute): Cope with read-only config.
 
6851
 
 
6852
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
6853
 
 
6854
        Merge handling of input and output terminals. Fix a hang.
 
6855
 
 
6856
        * commands/terminal.c (abstract_terminal): New struct.
 
6857
        (handle_command): New function. Based on grub_cmd_terminal_input.
 
6858
        (grub_cmd_terminal_input): Use handle_command.
 
6859
        (grub_cmd_terminal_output): Use handle_command.
 
6860
 
 
6861
2010-05-01  BVK Chaitanya  <bvk.groups@gmail.com>
 
6862
 
 
6863
        Fix comment handling.
 
6864
 
 
6865
        * tests/grub_script_comments.in: New testcase.
 
6866
        * conf/tests.rmk: Rules for new testcase.
 
6867
        * script/yylex.l: Updated flex rules.
 
6868
 
 
6869
2010-04-28  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
6870
 
 
6871
        * docs/grub.texi (play): Document that zero pitches produce rests.
 
6872
        * commands/i386/pc/play.c (grub_cmd_play): Call 'grub_file_open' only
 
6873
        if argc is 1.
 
6874
 
 
6875
2010-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
6876
 
 
6877
        * conf/x86-efi.rmk (linux_mod_SOURCES): Write explicitly to avoid
 
6878
        autogen issues.
 
6879
 
 
6880
2010-04-26  Christian Franke  <franke@computer.org>
 
6881
 
 
6882
        * include/grub/util/getroot.h (grub_get_prefix): Remove prototype.
 
6883
        * util/getroot.c [__CYGWIN__] (get_win32_path): Remove function.
 
6884
        (grub_get_prefix): Remove function.
 
6885
        * util/grub-emu.c (main): Replace grub_get_prefix () call by
 
6886
        make_system_path_relative_to_its_root ().
 
6887
        * util/sparc64/ieee1275/grub-setup.c (main): Likewise.
 
6888
 
 
6889
2010-04-24  Christian Franke  <franke@computer.org>
 
6890
 
 
6891
        * Makefile.in (TARGET_LDFLAGS): Add -static-libgcc.
 
6892
        (kernel_img_LDFLAGS): Remove -static-libgcc.
 
6893
 
 
6894
2010-04-24  Christian Franke  <franke@computer.org>
 
6895
 
 
6896
        * configure.ac: Do not CHECK_BSS_START_SYMBOL
 
6897
        and CHECK_END_SYMBOL if grub-emu is built.
 
6898
        Unset TARGET_OBJ2ELF if grub-emu is built
 
6899
        without module support.
 
6900
 
 
6901
2010-04-24  Jiro SEKIBA <jir@unicus.jp>
 
6902
 
 
6903
        Nilfs2 support.
 
6904
 
 
6905
        * conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c.
 
6906
        (grub_fstest_SOURCES): Likewise.
 
6907
        (pkglib_MODULES): Add nilfs2.mod.
 
6908
        (nilfs2_mod_SOURCES): New variable.
 
6909
        (nilfs2_mod_CFLAGS): Likewise.
 
6910
        (nilfs2_mod_LDFLAGS): Likewise.
 
6911
        * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
 
6912
        * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
 
6913
        * fs/nilfs2.c: New file.
 
6914
 
 
6915
2010-04-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
6916
 
 
6917
        * configure.ac: Refuse to compile for x86_64-efi is mcmodel=large
 
6918
        is not supported.
 
6919
 
 
6920
2010-04-19  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
6921
 
 
6922
        Add grub-mkconfig support for NetBSD.
 
6923
 
 
6924
        * util/grub.d/10_netbsd.in: grub-mkconfig helper script for NetBSD.
 
6925
        * util/grub-mkconfig.in: export new NetBSD specific variables.
 
6926
        * po/POTFILES-shell: added 10_netbsd.in.
 
6927
        * util/grub-mkconfig_lib.in: check for gettext binary, default to echo.
 
6928
 
 
6929
2010-04-19  BVK Chaitanya  <bvk.groups@gmail.com>
 
6930
 
 
6931
        Fix emu build with grub-emu-pci and grub-emu-modules.
 
6932
 
 
6933
        * include/grub/util/misc.h: Export grub_util_{info,error,warn}
 
6934
        functions.
 
6935
        * include/grub/libpciaccess.h: New file.
 
6936
        * conf/any-emu.rmk: Update kernel headers for emu build.
 
6937
 
 
6938
2010-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
6939
 
 
6940
        * fs/udf.c (grub_udf_iterate_dir): Silence a spurious warning.
 
6941
 
 
6942
2010-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
6943
 
 
6944
        * fs/udf.c (grub_udf_iterate_dir): Decode the Unicode filenames.
 
6945
 
 
6946
2010-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6947
 
 
6948
        * boot/sparc64/ieee1275/boot.S: Various size-reducing changes.
 
6949
        Retrieve chosen/bootpath if bootpath isn't hardcoded.
 
6950
        * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add
 
6951
        util/ieee1275/ofpath.c.
 
6952
        * util/sparc64/ieee1275/grub-ofpathname.c: Renamed to ...
 
6953
        * util/ieee1275/grub-ofpathname.c: ... this. All users updated
 
6954
        * include/grub/sparc64/ieee1275/boot.h
 
6955
        (GRUB_BOOT_MACHINE_KERNEL_SECTOR): Renamed to ...
 
6956
        (GRUB_BOOT_MACHINE_KERNEL_BYTE): ...this. Moved 8 bytes lower.
 
6957
        * util/hostdisk.c (grub_util_biosdisk_get_osdev): New function.
 
6958
        * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Make argument
 
6959
        const char *.
 
6960
        * util/sparc64/ieee1275/grub-setup.c (compute_dest_ofpath): Removed.
 
6961
        (setup): Use KERNEL_BYTE instead of KERNEL_SECTOR.
 
6962
        Use grub_util_devname_to_ofpath. Zero-fill boot_devpath on same disk
 
6963
        install.
 
6964
 
 
6965
2010-04-18  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
6966
 
 
6967
        * util/grub-mkconfig.in: Corrected two == equality tests.
 
6968
        Set grub_prefix as in grub-install for NetBSD and OpenBSD.
 
6969
        * configure.ac: All definitions and uses of TARGET_IMG_LDFLAGS_AC now
 
6970
        expect a number appended to it.
 
6971
        * acinclude.m4 (grub_PROG_OBJCOPY_ABSOLUTE): ${TARGET_IMG_LDFLAGS_AC}
 
6972
        expects a number appended to it.
 
6973
 
 
6974
2010-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6975
 
 
6976
        * po/POTFILES: Renamed multiboot_loader.c to multiboot.c
 
6977
 
 
6978
2010-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
6979
 
 
6980
        * util/hostdisk.c (make_device_name): Change to new partition naming.
 
6981
 
 
6982
2010-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
6983
 
 
6984
        * disk/lvm.c (grub_lvm_memberlist): Issue an error if pv->disk = 0.
 
6985
 
 
6986
2010-04-17  Christian Franke  <franke@computer.org>
 
6987
 
 
6988
        * Makefile.in: Add missing localedir setting.
 
6989
 
 
6990
2010-04-14  Colin Watson  <cjwatson@ubuntu.com>
 
6991
 
 
6992
        Restore TEXTDOMAINDIR correction from r1889, lost apparently by
 
6993
        mistake in r2156.  Noticed by Anthony Fok.
 
6994
 
 
6995
        * util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased
 
6996
        @localedir@.
 
6997
        * util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
 
6998
 
 
6999
2010-04-14  BVK Chaitanya  <bvk.groups@gmail.com>
 
7000
 
 
7001
        Fix a spurious, uninitialized variable warning.
 
7002
 
 
7003
        * loader/i386/bsdXX.c (grub_freebsd_load_elfmodule_obj):
 
7004
        Initialize variable, shdr.
 
7005
        (grub_freebsd_load_elfmodule): Likewise.
 
7006
        (grub_freebsd_load_elf_meta): Likewise.
 
7007
 
 
7008
2010-04-13  BVK Chaitanya  <bvk.groups@gmail.com>
 
7009
 
 
7010
        Fix for escaped dollar in double quoted strings.
 
7011
 
 
7012
        * script/yylex.l: Updated flex rules.
 
7013
        * conf/tests.rmk: Rule for new testcase.
 
7014
        * tests/grub_script_dollar.in: New testcase.
 
7015
 
 
7016
2010-04-13  Carles Pina i Estany  <carles@pina.cat>
 
7017
2010-04-13  Colin Watson  <cjwatson@ubuntu.com>
 
7018
 
 
7019
        Enclose all translated strings in grub.cfg in single quotes, and
 
7020
        escape them appropriately (Ubuntu bug #552921).
 
7021
 
 
7022
        * util/grub-mkconfig_lib.in (gettext_quoted): New function.
 
7023
        * util/grub.d/10_hurd.in: Use it.
 
7024
        * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
 
7025
        * util/grub.d/10_linux.in (linux_entry): Likewise.
 
7026
 
 
7027
2010-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
7028
 
 
7029
        Fix cygwin compilation.
 
7030
 
 
7031
        * configure.ac: Define NEED_REGISTER_FRAME_INFO.
 
7032
        * include/grub/misc.h (__register_frame_info)
 
7033
        [NEED_REGISTER_FRAME_INFO && !UTIL]: New export.
 
7034
        (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
 
7035
        * kern/misc.c (__register_frame_info)
 
7036
        [NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function.
 
7037
        (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
 
7038
 
 
7039
2010-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
7040
 
 
7041
        * configure.ac: Respect grub_cv_asm_uscore when defining dummy symbols.
 
7042
 
 
7043
2010-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
 
7044
 
 
7045
        Unify libgcc processing.
 
7046
 
 
7047
        * Makefile.in (kernel_img_LDFLAGS): New variable.
 
7048
        * conf/common.rmk (kernel_img_HEADERS): Add libgcc.h.
 
7049
        * conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of
 
7050
        overwriting.
 
7051
        * conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise.
 
7052
        * conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise.
 
7053
        * conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise.
 
7054
        * conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise.
 
7055
        * conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of
 
7056
        overwriting. Remove -lgcc and -static-libgcc
 
7057
        * conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise.
 
7058
        * conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
 
7059
        * conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
 
7060
        (kernel_img_LDFLAGS): Append instead of overwriting.
 
7061
        Remove -lgcc and -static-libgcc
 
7062
        * conf/sparc64-ieee1275.rmk: Likewise.
 
7063
        * include/grub/powerpc/libgcc.h: Move to ...
 
7064
        * include/grub/libgcc.h: .. this.
 
7065
        * include/grub/libgcc.h: Don't export most of the function on x86.
 
7066
        (__bswapsi2): New export.
 
7067
        (__bswapdi2): Likewise.
 
7068
        * include/grub/mips/libgcc.h: Removed.
 
7069
        * include/grub/sparc64/libgcc.h: Likewise.
 
7070
 
 
7071
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
7072
 
 
7073
        * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Remove
 
7074
        disk_info_msg (conflicts with gettexting into languages with cases).
 
7075
 
 
7076
2010-04-10  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7077
 
 
7078
        Add grub-probe support for NetBSD.
 
7079
 
 
7080
        * util/getroot.c (find_root_device): Convert block device to
 
7081
        character device on NetBSD.
 
7082
        * util/probe.c (probe): Require character device on NetBSD.
 
7083
        * util/hostdisk.c: NetBSD specific headers.
 
7084
        (configure_device_driver): new function to tune device driver
 
7085
        parameters (currently only for NetBSD floppy driver).
 
7086
        (grub_util_biosdisk_open): NetBSD specific code (get disk size
 
7087
        via disklabel ioctl).
 
7088
        (open_device): call configure_device_driver on NetBSD.
 
7089
        (convert_system_partition_to_system_disk): NetBSD specific code.
 
7090
        (device_is_wholedisk): Likewise.
 
7091
        (grub_util_biosdisk_get_grub_dev): Likewise.
 
7092
        (make_device_name): Fixed a typo in bsd_part_str.
 
7093
        * configure.ac: check for opendisk() and getrawpartition() on
 
7094
        NetBSD and set LIBUTIL.
 
7095
        * Makefile.in: add LIBUTIL to LIBS.
 
7096
 
 
7097
2010-04-10  BVK Chaitanya  <bvk.groups@gmail.com>
 
7098
 
 
7099
        Documentation fix.
 
7100
 
 
7101
        * util/grub-script-check.c: Better help message.
 
7102
 
 
7103
2010-04-10  BVK Chaitanya  <bvk.groups@gmail.com>
 
7104
 
 
7105
        Fix FreeBSD build.
 
7106
 
 
7107
        * configure.ac: Flex version check.
 
7108
        * conf/common.rmk: Add -Wno-error to sh.mod.
 
7109
        * script/yylex.l: Remove all #pragma.
 
7110
 
 
7111
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
7112
 
 
7113
        * include/grub/util/misc.h (canonicalise_file_name): Add missing
 
7114
        prototype.
 
7115
        Reported by: Seth Goldberg.
 
7116
 
 
7117
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
7118
 
 
7119
        * loader/multiboot.c (GRUB_MOD_INIT) [GRUB_USE_MULTIBOOT2]:
 
7120
        Rename "module" to "module2".
 
7121
        Reported by: Seth Goldberg.
 
7122
 
 
7123
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
7124
 
 
7125
        * include/grub/efi/memory.h (grub_machine_mmap_iterate): Remove
 
7126
        EXPORT_FUNC.
 
7127
        Reported by: Seth Goldberg.
 
7128
 
 
7129
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
7130
 
 
7131
        * lib/posix_wrap/locale.h: Add missing file.
 
7132
        Reported by: Seth Goldberg.
 
7133
 
 
7134
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
7135
 
 
7136
        grub-emu module load support.
 
7137
 
 
7138
        * Makefile.in (TARGET_NO_MODULES): New variable. All users of
 
7139
        NO_DYNAMIC_MODULES switched to this.
 
7140
        (TARGET_CFLAGS): Add -DGRUB_TARGET_NO_MODULES=1 if applicable.
 
7141
        (CFLAGS): Likewise.
 
7142
        * conf/any-emu.rmk: Generate symlist.
 
7143
        (kernel_img_HEADERS): Add util/datetime.h.
 
7144
        (kernel_img_HEADERS) [sdl]: Add sdl.h.
 
7145
        (kernel_img_HEADERS) [libusb]: Add libusb.h.
 
7146
        (kernel_img_SOURCES) [TARGET_NO_MODULES = no && !x86]: Add
 
7147
        kern/$(target_cpu)/cache.S.
 
7148
        * configure.ac (grub-emu-modules): New option.
 
7149
        * genmk.rb: Handle multiple source lists.
 
7150
        * include/grub/sdl.h: New file.
 
7151
        * include/grub/libusb.h: Likewise.
 
7152
        * util/grub-emu.c (main): Hanle (host) root.
 
7153
        * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Error with
 
7154
        GRUB_ERR_UNKNOWN_DEVICE.
 
7155
        * util/misc.c: Move mm functions to ...
 
7156
        * util/mm.c: ... here. All users updated.
 
7157
 
 
7158
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7159
 
 
7160
        * Makefile.in (RMKFILES): Search in srcdir and not current directory.
 
7161
        (MAINTAINER_CLEANFILES): Don't add $(srcdir) to MKFILES. Add few
 
7162
        missing files.
 
7163
        (maintainer-clean): Remove libgcrypt-grub.
 
7164
 
 
7165
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7166
 
 
7167
        * term/efi/console.c (grub_console_checkkey): Macroify key contants.
 
7168
 
 
7169
2010-04-09  EFI Coder <eficoder@hotmail.com>
 
7170
 
 
7171
        * normal/menu_text.c (print_message): Clean up the message and show
 
7172
        the Fn information when on EFI
 
7173
        * term/efi/console.c (grub_console_checkkey): Add F4 support.
 
7174
 
 
7175
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7176
 
 
7177
        * normal/autofs.c (read_fs_list): New parameter 'prefix'.
 
7178
        All users updated.
 
7179
        * normal/crypto.c (read_crypto_list): Likewise.
 
7180
        * normal/dyncmd.c (read_command_list): Likewise.
 
7181
        * normal/term.c (read_terminal_list): Likewise.
 
7182
        * normal/main.c (read_lists): Use explicit prefix.
 
7183
        (read_lists_hook): Use read_lists.
 
7184
        (grub_normal_execute): Likewise.
 
7185
 
 
7186
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7187
 
 
7188
        * util/grub-mkrescue.in: Fix incorrect path in coreboot part.
 
7189
        Reported by: Thomas Schmitt.
 
7190
        Add -no-emul-boot to grub-mkisofs parameters.
 
7191
 
 
7192
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7193
 
 
7194
        * font/font.c: Indented.
 
7195
 
 
7196
2010-04-09  BVK Chaitanya  <bvk.groups@gmail.com>
 
7197
 
 
7198
        Elif support to GRUB script (by Deepak Vankadaru).
 
7199
 
 
7200
        * tests/grub_script_if.in: New testcase.
 
7201
        * conf/tests.rmk: Rule for new testcase.
 
7202
        * script/parser.y: Grammar rules for elif.
 
7203
 
 
7204
2010-04-09  BVK Chaitanya  <bvk.groups@gmail.com>
 
7205
 
 
7206
        While and until loops support to GRUB script.
 
7207
 
 
7208
        * include/grub/script_sh.h (grub_script_cmdwhile): New struct.
 
7209
        (grub_script_create_cmdwhile): New function prototype.
 
7210
        (grub_script_execute_cmdwhile): New function prototype.
 
7211
        * script/execute.c (grub_script_execute_cmdwhile): New function.
 
7212
        * script/parser.y (command): New commands.
 
7213
        (whilecmd): New grammar rule.
 
7214
        (untilcmd): New grammar rule.
 
7215
        * script/script.c (grub_script_create_cmdwhile): New function.
 
7216
        * util/grub-script-check.c (grub_script_execute_cmdwhile): New
 
7217
        function.
 
7218
 
 
7219
        * tests/grub_script_while1.in: New testcase.
 
7220
        * conf/tests.rmk: Rule for new testcase.
 
7221
 
 
7222
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7223
 
 
7224
        * util/grub.d/00_header.in: Add few missing quotes. Recognise *.jpeg
 
7225
        as *.jpg.
 
7226
 
 
7227
2010-04-09  Mario Vazquez <mariovazq@gmail.com>
 
7228
 
 
7229
        GRUB_BACKGROUND support.
 
7230
 
 
7231
        * util/grub-mkconfig.in: Export GRUB_BACKGROUND.
 
7232
        * util/grub.d/00_header.in: Parse GRUB_BACKGROUND.
 
7233
 
 
7234
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7235
 
 
7236
        Load fonts and modules for gfxmenu in grub-mkconfig.
 
7237
        Idea by: Mario Vazquez
 
7238
 
 
7239
        * util/grub.d/00_header.in: Load pf2 and image modules.
 
7240
 
 
7241
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7242
 
 
7243
        grub-mkconfig multiple terminal support.
 
7244
 
 
7245
        * util/grub-mkconfig.in: Handle multiple terminals correctly.
 
7246
        * util/grub.d/00_header.in: Likewise.
 
7247
 
 
7248
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
7249
 
 
7250
        * Makefile.in: Specify files explicitly instead of using $< and $@ since
 
7251
        we use cd $(srcdir).
 
7252
 
 
7253
2010-04-08  Colin Watson  <cjwatson@ubuntu.com>
 
7254
 
 
7255
        * util/grub.d/10_linux.in: Only use the first word of
 
7256
        GRUB_DISTRIBUTOR for --class, to avoid problems if somebody puts
 
7257
        spaces in GRUB_DISTRIBUTOR.
 
7258
        * util/grub.d/10_kfreebsd.in: Likewise.
 
7259
        * util/grub.d/10_hurd.in: Likewise.
 
7260
 
 
7261
2010-04-06  BVK Chaitanya  <bvk.groups@gmail.com>
 
7262
 
 
7263
        Fix unit testing framework for Qemu 0.12.
 
7264
 
 
7265
        * tests/util/grub-shell.in: Remove -serial stdio option.
 
7266
 
 
7267
2010-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
7268
 
 
7269
        POSIX header file wrappers.
 
7270
 
 
7271
        * lib/posix_wrap/assert.h: New file. Wrapper for its POSIX
 
7272
        equivalents.
 
7273
        * lib/posix_wrap/ctype.h: Likewise.
 
7274
        * lib/posix_wrap/errno.h: Likewise.
 
7275
        * lib/posix_wrap/langinfo.h: Likewise.
 
7276
        * lib/posix_wrap/limits.h: Likewise.
 
7277
        * lib/posix_wrap/localcharset.h: Likewise.
 
7278
        * lib/posix_wrap/stdint.h: Likewise.
 
7279
        * lib/posix_wrap/stdio.h: Likewise.
 
7280
        * lib/posix_wrap/stdlib.h: Likewise.
 
7281
        * lib/posix_wrap/string.h: Likewise.
 
7282
        * lib/posix_wrap/sys/types.h: Likewise.
 
7283
        * lib/posix_wrap/unistd.h: Likewise.
 
7284
        * lib/posix_wrap/wchar.h: Likewise.
 
7285
        * lib/posix_wrap/wctype.h: Likewise.
 
7286
        * conf/common.rmk (grub_script.yy.c): Remove #include elimination.
 
7287
        (grub_script.yy.h): Likewise.
 
7288
        * script/yylex.l: Remove POSIX emulation #defines.
 
7289
        * Makefile.in (POSIX_CFLAGS): New variable.
 
7290
        (GNULIB_UTIL_CFLAGS): Likewise.
 
7291
 
 
7292
        Regexp support.
 
7293
 
 
7294
        * conf/common.rmk (pkglib_MODULES): Add regexp.mod.
 
7295
        (regexp_mod_SOURCES): New variable.
 
7296
        (regexp_mod_CFLAGS): Likewise.
 
7297
        (regexp_mod_LDFLAGS): Likewise.
 
7298
        * commands/regexp.c: New file.
 
7299
        * gnulib/regcomp.c: New file. Imported from gnulib.
 
7300
        * gnulib/regex.c: Likewise.
 
7301
        * gnulib/regex_internal.c: Likewise.
 
7302
        * gnulib/regex_internal.h: Likewise.
 
7303
        * gnulib/regexec.c: Likewise.
 
7304
        * gnulib/regex.h: Likewise.
 
7305
 
 
7306
2010-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
7307
 
 
7308
        * loader/i386/multiboot_mbi.c (grub_multiboot_load): Correctly report
 
7309
        unsupported video mode types.
 
7310
 
 
7311
2010-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
7312
 
 
7313
        * kern/i386/pc/startup.S (grub_getrtsecs): Removed (dead code).
 
7314
 
 
7315
2010-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
7316
 
 
7317
        * include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
 
7318
        * conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
 
7319
 
 
7320
2010-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
7321
 
 
7322
        Remove unused grub_vga_get_font.
 
7323
 
 
7324
        * kern/i386/pc/startup.S (grub_vga_get_font): Removed.
 
7325
        * include/grub/i386/pc/vga.h (grub_vga_get_font): Likewise.
 
7326
 
 
7327
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7328
 
 
7329
        * kern/misc.c: Disable the __enable_execute_stack hack for utilities.
 
7330
        * include/grub/misc.h: Likewise.
 
7331
 
 
7332
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7333
 
 
7334
        * util/grub-install.in: Add `|| exit 1' to all grub-probe calls
 
7335
        for which failure is fatal.
 
7336
 
 
7337
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7338
 
 
7339
        * util/grub-install.in: Use mkdir -p to create grub directory.
 
7340
        * util/i386/efi/grub-install.in: Likewise.
 
7341
        * util/ieee1275/grub-install.in: Likewise.
 
7342
 
 
7343
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7344
 
 
7345
        * Makefile.in (LEX): new variable.
 
7346
 
 
7347
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7348
 
 
7349
        * util/i386/efi/grub-dumpdevtree: replaced the non-portable `==' by
 
7350
        `=' and added double quotes on operands of this equality test.
 
7351
 
 
7352
2010-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
7353
 
 
7354
        * Makefile.in (uninstall): Remove a leftover debug echo.
 
7355
        Reported by: Grégoire Sutre
 
7356
 
 
7357
2010-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
7358
 
 
7359
        MIPS multiboot2 support.
 
7360
 
 
7361
        * conf/mips.rmk (pkglib_MODULES): Add multiboot2.mod.
 
7362
        (multiboot2_mod_SOURCES): New variable.
 
7363
        (multiboot2_mod_CFLAGS): Likewise.
 
7364
        (multiboot2_mod_LDFLAGS): Likewise.
 
7365
        (multiboot2_mod_ASFLAGS): Likewise.
 
7366
        * include/grub/i386/multiboot.h (MULTIBOOT_INITIAL_STATE): New
 
7367
        definition.
 
7368
        (MULTIBOOT_ENTRY_REGISTER): Likewise.
 
7369
        (MULTIBOOT_MBI_REGISTER): Likewise.
 
7370
        (MULTIBOOT_ARCHITECTURE_CURRENT): Likewise.
 
7371
        (MULTIBOOT_ELF32_MACHINE): Likewise.
 
7372
        (MULTIBOOT_ELF64_MACHINE): Likewise.
 
7373
        * include/grub/mips/multiboot.h: New file.
 
7374
        * include/grub/video.h (grub_video_driver_id): New type
 
7375
        GRUB_VIDEO_DRIVER_SM712.
 
7376
        (grub_video_get_info_and_fini): Export.
 
7377
        (grub_video_get_palette): Likewise.
 
7378
        (grub_video_get_driver_id): Likewise.
 
7379
        * include/multiboot2.h: Resynced with spec.
 
7380
        * loader/i386/multiboot.c: Moved from here ...
 
7381
        * loader/multiboot.c: ... here. All users updated.
 
7382
        (grub_multiboot_boot): Use platform-specific macros.
 
7383
        * loader/i386/multiboot_elfxx.c: Moved from here ...
 
7384
        * loader/multiboot_elfxx.c: ... here. All users updated.
 
7385
        (E_MACHINE): Use MULTIBOOT_ELF32_MACHINE and MULTIBOOT_ELF64_MACHINE.
 
7386
        * loader/i386/multiboot_mbi2.c (grub_multiboot_load): Check arcitecture.
 
7387
        * video/sm712.c (grub_video_sm712_adapter): Add missing id field.
 
7388
 
 
7389
2010-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
 
7390
 
 
7391
        Import gnulib argp module.
 
7392
 
 
7393
        * gnulib/argp-ba.c: New file.
 
7394
        * gnulib/argp-eexst.c: Likewise.
 
7395
        * gnulib/argp-fmtstream.c: Likewise.
 
7396
        * gnulib/argp-fmtstream.h: Likewise.
 
7397
        * gnulib/argp-fs-xinl.c: Likewise.
 
7398
        * gnulib/argp-help.c: Likewise.
 
7399
        * gnulib/argp-namefrob.h: Likewise.
 
7400
        * gnulib/argp-parse.c: Likewise.
 
7401
        * gnulib/argp-pin.c: Likewise.
 
7402
        * gnulib/argp-pv.c: Likewise.
 
7403
        * gnulib/argp-pvh.c: Likewise.
 
7404
        * gnulib/argp-version-etc.c: Likewise.
 
7405
        * gnulib/argp-version-etc.h: Likewise.
 
7406
        * gnulib/argp-xinl.c: Likewise.
 
7407
        * gnulib/argp.h: Likewise.
 
7408
 
 
7409
2010-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
7410
 
 
7411
        * kern/device.c (grub_device_iterate): Clear errors after failed
 
7412
        opening device.
 
7413
 
 
7414
2010-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
7415
 
 
7416
        * kern/ieee1275/openfw.c (grub_children_iterate): Skip device itself if
 
7417
        returned by firmware.
 
7418
 
 
7419
2010-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
 
7420
 
 
7421
        * loader/i386/multiboot_mbi2.c (retrieve_video_parameters): Fix
 
7422
        compilation on coreboot and qemu
 
7423
 
 
7424
2010-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
7425
 
 
7426
        * include/multiboot2.h: Resync with spec.
 
7427
 
 
7428
2010-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
 
7429
 
 
7430
        Multiboot2 tag support
 
7431
 
 
7432
        * conf/i386.rmk (multiboot2_mod_SOURCES): Replace
 
7433
        loader/i386/multiboot_mbi.c with loader/i386/multiboot_mbi2.c.
 
7434
        Remove loader/multiboot_loader.c.
 
7435
        * include/grub/i386/multiboot.h (grub_multiboot_real_boot): Removed.
 
7436
        (grub_multiboot2_real_boot): Likewise.
 
7437
        * include/grub/multiboot.h (grub_multiboot_set_accepts_video): Removed.
 
7438
        (grub_get_multiboot_mmap_count): New proto.
 
7439
        (grub_fill_multiboot_mmap): Likewise.
 
7440
        (grub_multiboot_set_video_mode): Likewise.
 
7441
        (grub_multiboot_set_console): Likewise.
 
7442
        (grub_multiboot_load): Likewise.
 
7443
        (grub_multiboot_load_elf): Likewise.
 
7444
        (GRUB_MULTIBOOT_CONSOLE_EGA_TEXT): New definition.
 
7445
        (GRUB_MULTIBOOT_CONSOLE_FRAMEBUFFER): Likewise.
 
7446
        * include/multiboot.h: Resynced with specification.
 
7447
        * include/multiboot2.h: Resynced with specification.
 
7448
        * loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): Moved from here...
 
7449
        * loader/i386/multiboot.c (DEFAULT_VIDEO_MODE): ... here.
 
7450
        * loader/i386/multiboot_mbi.c (HAS_VGA_TEXT): Moved from here ..
 
7451
        * include/grub/multiboot.h (GRUB_MACHINE_HAS_VGA_TEXT): ... here. All
 
7452
        users updated.
 
7453
        * loader/i386/multiboot_mbi.c (accepts_video): Moved from here...
 
7454
        * loader/i386/multiboot.c (accepts_video): ... here. All users updated.
 
7455
        * loader/i386/multiboot_mbi.c (grub_multiboot_set_accepts_video):
 
7456
        Removed.
 
7457
        * loader/i386/multiboot_mbi.c (grub_get_multiboot_mmap_len):
 
7458
        Moved from here...
 
7459
        * loader/i386/multiboot.c (grub_get_multiboot_mmap_len): ... here.
 
7460
        * loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
 
7461
        Moved from here...
 
7462
        * loader/i386/multiboot.c (grub_fill_multiboot_mmap): ... here.
 
7463
        * loader/i386/multiboot_mbi.c (set_video_mode): Moved from here...
 
7464
        * loader/i386/multiboot.c (grub_multiboot_set_video_mode): ... here.
 
7465
        All users updated.
 
7466
        * loader/i386/multiboot_mbi2.c: New file.
 
7467
 
 
7468
2010-03-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
7469
 
 
7470
        Resync with gnulib.
 
7471
 
 
7472
        * Makefile.in (GNULIB_CFLAGS): New variable.
 
7473
        * conf/common.rmk (grub_mkisofs_CFLAGS): Add GNULIB_CFLAGS.
 
7474
        (grub_script_check_CFLAGS): New variable.
 
7475
        * gnulib/alloca.h: Resync with gnulib.
 
7476
        * gnulib/error.c: Likewise.
 
7477
        * gnulib/error.h: Likewise.
 
7478
        * gnulib/fnmatch.c: Likewise.
 
7479
        * gnulib/fnmatch_loop.c: Likewise.
 
7480
        * gnulib/getdelim.c: Likewise.
 
7481
        * gnulib/getline.c: Likewise.
 
7482
        * gnulib/getopt.c: Likewise.
 
7483
        * gnulib/getopt1.c: Likewise.
 
7484
        * gnulib/getopt_int.h: Likewise.
 
7485
        * gnulib/gettext.h: Likewise.
 
7486
        * gnulib/progname.c: Likewise.
 
7487
        * gnulib/progname.h: Likewise.
 
7488
 
 
7489
2010-03-27  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
7490
 
 
7491
        Fix a build failure (-Wundef -Werror) when ENABLE_NLS is not defined,
 
7492
        which is the case with --disabled-nls.
 
7493
 
 
7494
        * include/grub/i18n.h: Use (defined(ENABLE_NLS)
 
7495
        && ENABLE_NLS) instead of ENABLE_NLS in all #if preprocessor macros.
 
7496
        * util/misc.c: Likewise.
 
7497
        * util/mkisofs/mkisofs.c: Likewise.
 
7498
        * util/mkisofs/mkisofs.h: Likewise.
 
7499
 
 
7500
2010-03-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
7501
 
 
7502
        Simplify Apple CC support.
 
7503
 
 
7504
        * commands/i386/pc/drivemap_int13h.S: Use LOCAL when possible.
 
7505
        Add 0 byte at the end not to have a symbol with empty target.
 
7506
        * mmap/i386/pc/mmap_helper.S: Likewise.
 
7507
        * genmk.rb: Ignore errors 2030 and 2050.
 
7508
        * kern/i386/pc/startup.S: Use LOCAL when possible.
 
7509
 
 
7510
2010-03-26  BVK Chaitanya  <bvk.groups@gmail.com>
 
7511
 
 
7512
        Testcase and the fix for final semicolon on cmdline.
 
7513
 
 
7514
        * tests/grub_script_final_semicolon.in: New testcase.
 
7515
        * conf/tests.rmk: Rules for the new testcase.
 
7516
        * script/parser.y: Grammar fix.
 
7517
 
 
7518
2010-03-26  BVK Chaitanya  <bvk@localhost>
 
7519
 
 
7520
        Blank lines testcase for GRUB script.
 
7521
 
 
7522
        * tests/grub_script_blanklines.in: New testcase.
 
7523
        * conf/tests.rmk: Rules for the new testcase.
 
7524
 
 
7525
2010-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
7526
 
 
7527
        Don't use __FILE__.
 
7528
 
 
7529
        * genmk.rb: Add -DGRUB_FILE to all C targets.
 
7530
        * fs/reiserfs.c: Replace __FILE__ with GRUB_FILE.
 
7531
        * include/grub/list.h: Likewise.
 
7532
        * include/grub/misc.h: Likewise.
 
7533
        * include/grub/mm.h: Likewise.
 
7534
        * include/grub/test.h: Likewise.
 
7535
        * kern/mm.c: Likewise.
 
7536
        * lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
 
7537
 
 
7538
2010-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
7539
 
 
7540
        Sunpc partitions support.
 
7541
 
 
7542
        * conf/common.rmk (grub_probe_SOURCES): Add partmap/sunpc.c.
 
7543
        (grub_fstest_SOURCES): Likewise.
 
7544
        (pkglib_MODULES): Add part_sunpc.mod.
 
7545
        (part_sunpc_mod_SOURCES): New variable.
 
7546
        (part_sunpc_mod_CFLAGS): Likewise.
 
7547
        (part_sunpc_mod_LDFLAGS): Likewise.
 
7548
        * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/sunpc.c.
 
7549
        * partmap/sunpc.c: New file.
 
7550
 
 
7551
2010-03-26  BVK Chaitanya  <bvk@localhost>
 
7552
 
 
7553
        For loop support to GRUB script.
 
7554
 
 
7555
        * include/grub/script_sh.h (grub_script_cmdfor): New struct.
 
7556
        (grub_script_create_cmdfor): New function prototype.
 
7557
        (grub_script_execute_cmdfor): New function prototype.
 
7558
        * script/execute.c (grub_script_execute_cmdfor): New function.
 
7559
        * script/parser.y (command): New for command.
 
7560
        (forcmd): New grammar rule.
 
7561
        * script/script.c (grub_script_create_cmdfor): New function.
 
7562
        * util/grub-script-check.c (grub_script_execute_cmdfor): New
 
7563
        function.
 
7564
        * tests/grub_script_for1.in: New testcase.
 
7565
        * conf/tests.rmk: Rules for new testcase.
 
7566
 
 
7567
2010-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
7568
 
 
7569
        Nested partitions
 
7570
 
 
7571
        * commands/blocklist.c (grub_cmd_blocklist): Don't check whether
 
7572
        'partition' is NULL, grub_partition_get_start already does that.
 
7573
        * commands/loadenv.c (check_blocklists): Likewise.
 
7574
        (write_blocklists): Likewise.
 
7575
        * conf/common.rmk (grub_probe_SOURCES): Add partmap/bsdlabel.c.
 
7576
        (grub_fstest_SOURCES): Likewise.
 
7577
        (pkglib_MODULES): Add part_bsd.mod.
 
7578
        (part_bsd_mod_SOURCES): New variable.
 
7579
        (part_bsd_mod_CFLAGS): Likewise.
 
7580
        (part_bsd_mod_LDFLAGS): Likewise.
 
7581
        * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/bsdlabel.c.
 
7582
        (grub_emu_SOURCES): Likewise.
 
7583
        * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
 
7584
        * include/grub/bsdlabel.h: New file.
 
7585
        * include/grub/partition.h (grub_partition_map): Remove 'probe' and
 
7586
        'get_name'.
 
7587
        (grub_partition): Add 'parent' and 'number'. Remove 'data'.
 
7588
        (grub_partition_map_list): New variable.
 
7589
        (grub_partition_map_register): Inline.
 
7590
        (grub_partition_map_unregister): Likewise.
 
7591
        (FOR_PARTITION_MAPS): New macro.
 
7592
        (grub_partition_map_iterate): Removed.
 
7593
        (grub_partition_get_start): Handle nested partitions.
 
7594
        * include/grub/msdos_partition.h: Remove bsd-related entries.
 
7595
        (grub_pc_partition): Remove.
 
7596
        * kern/disk.c (grub_disk_close): Free partition data.
 
7597
        (grub_disk_adjust_range): Handle nested partitions.
 
7598
        * kern/partition.c (grub_partition_map_probe): New function.
 
7599
        (grub_partition_probe): Parse name to number, handle subpartitions.
 
7600
        (get_partmap): New function.
 
7601
        (grub_partition_iterate): Handle subpartitions.
 
7602
        (grub_partition_get_name): Likewise.
 
7603
        * loader/i386/pc/bsd.c (grub_bsd_get_device): Likewise.
 
7604
        * loader/i386/multiboot.c (grub_multiboot_get_bootdev): Likewise.
 
7605
        * loader/i386/pc/chainloader.c (grub_chainloader_cmd): Likewise.
 
7606
        * partmap/acorn.c (acorn_partition_map_iterate): Don't force raw access.
 
7607
        Set 'number'.
 
7608
        (acorn_partition_map_probe): Remove.
 
7609
        (acorn_partition_map_get_name): Likewise.
 
7610
        * partmap/amiga.c (amiga_partition_map_iterate): Don't force raw access.
 
7611
        Set 'number'.
 
7612
        Set 'index' to 0 since there can be only one partition entry per sector.
 
7613
        (amiga_partition_map_probe): Remove.
 
7614
        (amiga_partition_map_get_name): Likewise.
 
7615
        * partmap/apple.c (apple_partition_map_iterate): Don't force raw access.
 
7616
        Set 'number'.
 
7617
        Set 'offset' and 'index' to real positions of partitions.
 
7618
        (apple_partition_map_probe): Remove.
 
7619
        (apple_partition_map_get_name): Likewise.
 
7620
        * partmap/bsdlabel.c: New file.
 
7621
        * partmap/gpt.c (gpt_partition_map_iterate): Don't force raw access.
 
7622
        Set 'number'.
 
7623
        Allocate 'data' so it can be correctly freed.
 
7624
        Set 'index' to offset inside sector.
 
7625
        (gpt_partition_map_probe): Remove.
 
7626
        (gpt_partition_map_get_name): Likewise.
 
7627
        * partmap/msdos.c (grub_partition_parse): Remove.
 
7628
        (pc_partition_map_iterate): Don't force raw access.
 
7629
        Set 'number'.
 
7630
        Make 'ext_offset' a local variable.
 
7631
        (pc_partition_map_probe): Remove.
 
7632
        (pc_partition_map_get_name): Remove.
 
7633
        * partmap/sun.c (sun_partition_map_iterate): Don't force raw access.
 
7634
        Set 'number'.
 
7635
        (sun_partition_map_probe): Remove.
 
7636
        (sun_partition_map_get_name): Likewise.
 
7637
        * parttool/msdospart.c (grub_pcpart_boot): Handle nested partitions.
 
7638
        (grub_pcpart_type): Likewise.
 
7639
        * util/hostdisk.c (open_device): Handle new numbering scheme.
 
7640
        (grub_util_biosdisk_get_grub_dev): Handle nested partitions.
 
7641
        * util/i386/pc/grub-setup.c (setup): Handle new numbering scheme.
 
7642
        * util/grub-probe.c (probe_partmap): Handle nested paritions.
 
7643
        * util/grub-install.in: Insert all subpartition modules.
 
7644
        * util/ieee1275/grub-install.in: Likewise.
 
7645
 
 
7646
2010-03-24  Adrian Glaubitz  <glaubitz@physik.fu-berlin.de>
 
7647
 
 
7648
        * kern/dl.c (grub_dl_resolve_symbols): Improve error message
 
7649
        grammar.
 
7650
 
 
7651
2010-03-24  Colin Watson  <cjwatson@ubuntu.com>
 
7652
 
 
7653
        * .bzrignore: Add grub-bin2h, grub-reboot, and grub-set-default.
 
7654
 
 
7655
2010-03-21  Colin Watson  <cjwatson@ubuntu.com>
 
7656
 
 
7657
        * util/grub-install.in: Copy .mo files from @datadir@/locale, to
 
7658
        match where 'make install' puts them.
 
7659
        * util/i386/efi/grub-install.in: Likewise.
 
7660
 
 
7661
2010-03-19  Colin Watson  <cjwatson@ubuntu.com>
 
7662
 
 
7663
        * .bzrignore: Add gentrigtables, grub-script-check,
 
7664
        grub_script_check_init.c, grub_script_check_init.h, and
 
7665
        trigtables.c.
 
7666
 
 
7667
2010-03-18  Vladimir Serbinenko  <phcoder@gmail.com>
 
7668
 
 
7669
        * kern/parser.c: Indented.
 
7670
 
 
7671
2010-03-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
7672
 
 
7673
        * term/i386/pc/vesafb.c: Removed (orphaned, deprecated and broken).
 
7674
 
 
7675
2010-03-17  Vladimir Serbinenko  <phcoder@gmail.com>
 
7676
 
 
7677
        * video/fb/fbblit.c (grub_video_fbblit_blend_XXXA8888_1bit): Handle
 
7678
        alpha_mask_size == 0 case.
 
7679
 
 
7680
2010-03-14  BVK Chaitanya  <bvk.groups@gmail.com>
 
7681
 
 
7682
        GRUB shell lexer and parser improvements.
 
7683
 
 
7684
        * conf/any-emu.rmk: Build rule updates.
 
7685
        * conf/common.rmk: Likewise.
 
7686
        * conf/i386-coreboot.rmk: Likewise.
 
7687
        * conf/i386-efi.rmk: Likewise.
 
7688
        * conf/i386-ieee1275.rmk: Likewise.
 
7689
        * conf/i386-pc.rmk: Likewise.
 
7690
        * conf/powerpc-ieee1275.rmk: Likewise.
 
7691
        * conf/x86_64-efi.rmk: Likewise.
 
7692
 
 
7693
        * configure.ac: Configure check for flex.
 
7694
 
 
7695
        * include/grub/script_sh.h (grub_script_arg_type_t): More argument
 
7696
        types.
 
7697
        (grub_lexer_param): Struct member updates.
 
7698
        (grub_parser_param): Likewise.
 
7699
        (GRUB_LEXER_TOKEN_MAX): Maximum token size.
 
7700
        (GRUB_LEXER_RECORD_INCREMENT): Memory increments' size.
 
7701
        (grub_script_lexer_init): Prototype update.
 
7702
        (grub_script_lexer_record_start): Likewise.
 
7703
        (grub_script_lexer_record_stop): Likewise.
 
7704
        (grub_script_lexer_yywrap): New function prototype.
 
7705
        (grub_script_lexer_fini): Likewise.
 
7706
        (grub_script_execute_argument_to_string): Removed by...
 
7707
        (grub_script_execute_argument_to_argv): ...better version.
 
7708
 
 
7709
        * script/execute.c (ROUND_UPTO): New macro.
 
7710
        (grub_script_execute_cmdline): Out of memory fixes.
 
7711
        (grub_script_execute_menuentry): Likewise.
 
7712
        (grub_script_execute_argument_to_string): Removed. Update all
 
7713
        users by...
 
7714
        (grub_script_execute_argument_to_argv): ...better version.
 
7715
        * script/function.c (grub_script_function_create): Use
 
7716
        grub_script_execute_argument_to_argv instead of
 
7717
        grub_script_execute_argument_to_string.
 
7718
 
 
7719
        * script/lexer.c (check_varstate): Removed.
 
7720
        (check_textstate): Removed.
 
7721
        (grub_script_lexer_record_start): Likewise.
 
7722
        (grub_script_lexer_record_stop): Likewise.
 
7723
        (recordchar): Replaced with...
 
7724
        (grub_script_lexer_record): ...new function.
 
7725
        (nextchar): Removed.
 
7726
        (grub_script_lexer_init): Rewritten.
 
7727
        (grub_script_yylex): Rewritten.
 
7728
        (append_newline): New function.
 
7729
        (grub_script_lexer_yywrap): New function.
 
7730
        (grub_script_lexer_fini): New function.
 
7731
        (grub_script_yyerror): Sets error flag.
 
7732
 
 
7733
        * script/yylex.l: New file.
 
7734
        (grub_lexer_yyfree): Wrapper for flex yyffre.
 
7735
        (grub_lexer_yyalloc): Likewise.
 
7736
        (grub_lexer_yyrealloc): Likewise.
 
7737
        * script/parser.y: Refactored.
 
7738
 
 
7739
        * script/script.c (grub_script_arg_add): Out of memory fixes.
 
7740
        (grub_script_add_arglist): Likewise.
 
7741
        (grub_script_create_cmdline): Likewise.
 
7742
        (grub_script_create_cmdmenu): Likewise.
 
7743
        (grub_script_add_cmd): Likewise.
 
7744
        (grub_script_parse): Use grub_script_lexer_fini to deallocated.
 
7745
        * util/grub-script-check.c (grub_script_execute_menuentry): Remove
 
7746
        unnecessary code.
 
7747
 
 
7748
        * tests/grub_script_echo1.in: New testcase.
 
7749
        * tests/grub_script_vars1.in: New testcase.
 
7750
        * tests/grub_script_echo_keywords.in: New testcase.
 
7751
 
 
7752
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
7753
 
 
7754
        Remove some redundancy in build system.
 
7755
 
 
7756
        * Makefile.in (TARGET_CFLAGS): Add -ffreestanding.
 
7757
        (TARGET_ASFLAGS): Add -nostdinc -fno-builtin.
 
7758
        (TARGET_LDFLAGS): Add -nostdlib.
 
7759
        (TARGET_IMG_LDFLAGS): Likewise.
 
7760
        * commands/lsmmap.c (grub_cmd_lsmmap) [GRUB_MACHINE_EMU]: Don't do
 
7761
        anything since mmap isn't available.
 
7762
        * conf/any-emu.rmk (kernel_img_SOURCES): Remove commands/boot.c.
 
7763
        Add util/time.c.
 
7764
        (pkglib_MODULES): Remove reboot.mod.
 
7765
        (reboot_mod_SOURCES): Removed.
 
7766
        (reboot_mod_CFLAGS): Likewise.
 
7767
        (reboot_mod_LDFLAGS): Likewise.
 
7768
        * conf/common.rmk (script/lexer.c_DEPENDENCIES): New variable.
 
7769
        (MOSTLYCLEANFILES): Add symlist.c kernel_syms.lst.
 
7770
        (DEFSYMFILES): Add kernel_syms.lst.
 
7771
        (kernel_img_HEADERS): Add common headers.
 
7772
        (symlist.c): New target.
 
7773
        (kernel_syms.lst): Likewise.
 
7774
        (pkglib_MODULES): Add memdisk.mod.
 
7775
        (memdisk_mod_SOURCES): New variable.
 
7776
        (memdisk_mod_CFLAGS): Likewise.
 
7777
        (memdisk_mod_LDFLAGS): Likewise.
 
7778
        (pkglib_MODULES): Add reboot.mod.
 
7779
        (reboot_mod_SOURCES): New variable.
 
7780
        (reboot_mod_CFLAGS): Likewise.
 
7781
        (reboot_mod_LDFLAGS): Likewise.
 
7782
        (pkglib_MODULES): Add date.mod.
 
7783
        (date_mod_SOURCES): New variable.
 
7784
        (date_mod_CFLAGS): Likewise.
 
7785
        (date_mod_LDFLAGS): Likewise.
 
7786
        (pkglib_MODULES): Add datehook.mod.
 
7787
        (datehook_mod_SOURCES): New variable.
 
7788
        (datehook_mod_CFLAGS): Likewise.
 
7789
        (datehook_mod_LDFLAGS): Likewise.
 
7790
        (pkglib_MODULES): Add lsmmap.mod.
 
7791
        (lsmmap_mod_SOURCES): New variable.
 
7792
        (lsmmap_mod_CFLAGS): Likewise.
 
7793
        (lsmmap_mod_LDFLAGS): Likewise.
 
7794
        (pkglib_MODULES): Add boot.mod.
 
7795
        (boot_mod_SOURCES): New variable.
 
7796
        (boot_mod_CFLAGS): Likewise.
 
7797
        (boot_mod_LDFLAGS): Likewise.
 
7798
        * conf/i386-coreboot.rmk: Removed redundant parts.
 
7799
        * conf/i386-ieee1275.rmk: Likewise.
 
7800
        * conf/i386-pc.rmk: Likewise.
 
7801
        * conf/mips-yeeloong.rmk: Likewise.
 
7802
        * conf/mips.rmk: Likewise.
 
7803
        * conf/powerpc-ieee1275.rmk: Likewise.
 
7804
        * conf/sparc64-ieee1275.rmk: Likewise.
 
7805
        * conf/x86_64-efi.rmk: Likewise.
 
7806
        * conf/i386-coreboot.rmk: Moved qemu parts ..
 
7807
        * conf/i386-qemu.rmk: ... here
 
7808
        * conf/i386-efi.rmk: Moved common parts to...
 
7809
        * conf/x86-efi.rmk: ... here.
 
7810
        * conf/i386.rmk: Added modules common to all x86 variants.
 
7811
        * configure.ac: Add -m32/-m64 to TARGET_ASFLAGS.
 
7812
        * disk/memdisk.c: Remove grub/machine/kernel.h.
 
7813
        * gensymlist.sh.in: Include symbol.h.
 
7814
        * hook/datehook.c: Correct module name.
 
7815
        * include/grub/datetime.h (grub_get_datetime) [GRUB_MACHINE_EMU]: Export.
 
7816
        (grub_set_datetime) [GRUB_MACHINE_EMU]: Likewise.
 
7817
        * include/grub/i386/efi/serial.h: New file.
 
7818
        * include/grub/x86_64/efi/serial.h: Likewise.
 
7819
        * util/time.c: Likewise.
 
7820
        * video/ieee1275.c (grub_video_ieee1275_setup): Handle 64-bit void *.
 
7821
 
 
7822
2010-03-14  Colin King  <colin.king@ubuntu.com>
 
7823
2010-03-14  Colin Watson  <cjwatson@ubuntu.com>
 
7824
 
 
7825
        Shrink the pre-partition-table part of boot.img by eight bytes.
 
7826
 
 
7827
        * boot/i386/pc/boot.S (ERR): New macro.
 
7828
        (chs_mode): Use ERR.
 
7829
        (geometry_error): Likewise.
 
7830
        (hd_probe_error): Remove.  This is only used once, so we wrwite
 
7831
        it inline instead.
 
7832
        (read_error): Instead of printing read_error_string, just set up
 
7833
        %si and fall through to ...
 
7834
        (error_message): ... this new function, also used by ERR.
 
7835
 
 
7836
2010-03-14  Colin Watson  <cjwatson@ubuntu.com>
 
7837
 
 
7838
        Speed up consecutive hostdisk operations on the same device.
 
7839
 
 
7840
        * util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
 
7841
        (grub_util_biosdisk_open): Initialise disk->data.
 
7842
        (struct linux_partition_cache): New structure.
 
7843
        (linux_find_partition): Cache partition start positions; these are
 
7844
        expensive to compute on every read and write.
 
7845
        (open_device): Cache open file descriptor in disk->data, so that we
 
7846
        don't have to reopen it and flush the buffer cache for consecutive
 
7847
        operations on the same device.
 
7848
        (grub_util_biosdisk_close): New function.
 
7849
        (grub_util_biosdisk_dev): Set `close' member.
 
7850
 
 
7851
        * conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
 
7852
        * conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
 
7853
        * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
 
7854
        * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
 
7855
        * conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
 
7856
 
 
7857
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
7858
 
 
7859
        Compile parts of grub-emu as modules.
 
7860
 
 
7861
        * Makefile.in (TARGET_CPPFLAGS) [emu]: Remove -nostdinc -isystem.
 
7862
        (pkglib_DATA) [emu]: Remove moddep.lst command.lst fs.lst
 
7863
        partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst.
 
7864
        (all-local): Add $(GRUB_EMU).
 
7865
        (install-local): Install $(GRUB_EMU).
 
7866
        (uninstall): Uninstall $(GRUB_EMU).
 
7867
        * commands/parttool.c: Replace GRUB_UTIL with GRUB_NO_MODULES.
 
7868
        * kern/dl.c: Likewise.
 
7869
        * commands/sleep.c: Not include machine/time.h.
 
7870
        * conf/any-emu.rmk (COMMON_LDFLAGS): New variable.
 
7871
        (COMMON_CFLAGS): Likewise.
 
7872
        (sbin_UTILITIES): Remove grub-emu.
 
7873
        (grub_emu_SOURCES): Removed.
 
7874
        (kernel_img_RELOCATABLE): New variable.
 
7875
        (pkglib_PROGRAMS): Add kernel.img.
 
7876
        (kernel_img_SOURCES): New variable
 
7877
        (kernel_img_CFLAGS): Likewise.
 
7878
        (kernel_img_LDFLAGS): Likewise.
 
7879
        (TARGET_NO_STRIP): Likewise.
 
7880
        (TARGET_NO_DYNAMIC_MODULES): Likewise.
 
7881
        (pkglib_MODULES): Add progname.mod, hostfs.mod, host.mod, reboot.mod,
 
7882
        halt.mod, cpuid.mod, usb.mod, sdl.mod and pci.mod.
 
7883
        (grub-emu): New target.
 
7884
        (GRUB_EMU): New variable.
 
7885
        * configure.ac: Whitelist -emu as possible x86_64 architecture.
 
7886
        * efiemu/main.c: Replace GRUB_UTIL with GRUB_MACHINE_EMU.
 
7887
        * loader/xnu.c: Likewise.
 
7888
        * include/grub/pci.h: Likewise.
 
7889
        * genemuinit.sh: New file.
 
7890
        * genemuinitheader.sh: Likewise.
 
7891
        * genmk.rb: Don't strip if TARGET_NO_STRIP is yes.
 
7892
        Support TARGET_NO_DYNAMIC_MODULES.
 
7893
        * include/grub/dl.h (GRUB_NO_MODULES): New variable.
 
7894
        * commands/search.c: Fix GRUB_MOD_INIT and GRUB_MOD_FINI arguments.
 
7895
        * disk/loopback.c: Likewise.
 
7896
        * font/font_cmd.c: Likewise.
 
7897
        * partmap/acorn.c: Likewise.
 
7898
        * partmap/amiga.c: Likewise.
 
7899
        * partmap/apple.c: Likewise.
 
7900
        * partmap/gpt.c: Likewise.
 
7901
        * partmap/msdos.c: Likewise.
 
7902
        * partmap/sun.c: Likewise.
 
7903
        * parttool/msdospart.c: Likewise.
 
7904
        * term/gfxterm.c: Likewise.
 
7905
        * video/bitmap.c: Likewise.
 
7906
        * video/readers/jpeg.c: Likewise.
 
7907
        * video/readers/png.c: Likewise.
 
7908
        * video/readers/tga.c: Likewise.
 
7909
        * video/video.c: Likewise.
 
7910
        * util/grub-emu.c (read_command_list): Removed.
 
7911
        (main): Don't call util_init_nls.
 
7912
        * util/misc.c (grub_err_printf) [!GRUB_UTIL]: Removed.
 
7913
        (grub_util_init_nls) [!GRUB_UTIL]: Likewise.
 
7914
 
 
7915
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
7916
 
 
7917
        * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add datetime.mod,
 
7918
        date.mod, datehook.mod.
 
7919
        (datetime_mod_SOURCES): New variable.
 
7920
        (datetime_mod_CFLAGS): Likewise.
 
7921
        (datetime_mod_LDFLAGS): Likewise.
 
7922
        (date_mod_SOURCES): Likewise.
 
7923
        (date_mod_CFLAGS): Likewise.
 
7924
        (date_mod_LDFLAGS): Likewise.
 
7925
        (datehook_mod_SOURCES): Likewise.
 
7926
        (datehook_mod_CFLAGS): Likewise.
 
7927
        (datehook_mod_LDFLAGS): Likewise.
 
7928
        * conf/sparc64-ieee1275.rmk: Likewise.
 
7929
        * lib/ieee1275/datetime.c: New file.
 
7930
 
 
7931
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
7932
 
 
7933
        * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add ieee1275_fb.mod.
 
7934
        (ieee1275_fb_mod_SOURCES): New variable.
 
7935
        (ieee1275_fb_mod_CFLAGS): Likewise.
 
7936
        (ieee1275_fb_mod_LDFLAGS): Likewise.
 
7937
        * include/grub/ieee1275/ieee1275.h (grub_ieee1275_devices_iterate):
 
7938
        New proto.
 
7939
        * kern/ieee1275/init.c (HEAP_MAX_SIZE): Increased.
 
7940
        (HEAP_MAX_ADDR): Likewise.
 
7941
        * kern/ieee1275/openfw.c (grub_children_iterate): Don't skip empty
 
7942
        type.
 
7943
        Correct stop condition.
 
7944
        (grub_ieee1275_devices_iterate): New function.
 
7945
        * video/ieee1275.c: New file.
 
7946
 
 
7947
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
7948
 
 
7949
        Merge sparc grub-mkimage into generic grub-mkimage and a.out support.
 
7950
 
 
7951
        * boot/sparc64/ieee1275/boot.S (boot_continue): Use SCRATCH_PAD_BOOT
 
7952
        as scratch.
 
7953
        * boot/sparc64/ieee1275/diskboot.S (after_info_block): Use
 
7954
        SCRATCH_PAD_DISKBOOT as scratch.
 
7955
        (bootit): Pass Openfirmware pointer in %o4.
 
7956
        * conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link at 0x4400 instead
 
7957
        of 0x200000.
 
7958
        (grub_mkimage_SOURCES): Replace util/sparc64/ieee1275/grub-mkimage.c
 
7959
        with util/grub-mkrawimage.c.
 
7960
        * configure.ac: Handle GRUB_MACHINE_SPARC64 and GRUB_MACHINE_MIPS.
 
7961
        * include/grub/aout.h (AOUT_MID_SUN): New definition.
 
7962
        (grub_aout_get_type) [GRUB_UTIL]: Removed.
 
7963
        (grub_aout_load) [GRUB_UTIL]: Likewise.
 
7964
        * include/grub/kernel.h (grub_modules_get_end): New proto.
 
7965
        * include/grub/sparc64/ieee1275/boot.h (SCRATCH_PAD): Removed.
 
7966
        (SCRATCH_PAD_BOOT): New definition.
 
7967
        (SCRATCH_PAD_DISKBOOT): Likewise.
 
7968
        (GRUB_BOOT_MACHINE_IMAGE_ADDRESS): Set to 0x4400.
 
7969
        * include/grub/sparc64/ieee1275/ieee1275.h
 
7970
        (grub_ieee1275_original_stack): New variable
 
7971
        * include/grub/sparc64/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
 
7972
        New definition
 
7973
        (GRUB_KERNEL_MACHINE_STACK_SIZE): Likewise.
 
7974
        (GRUB_PLATFORM_IMAGE_FORMATS): Likewise.
 
7975
        (GRUB_PLATFORM_IMAGE_DEFAULT_FORMAT): Likewise.
 
7976
        (GRUB_PLATFORM_IMAGE_DEFAULT): Likewise.
 
7977
        (GRUB_PLATFORM_IMAGE_RAW): Likewise.
 
7978
        (GRUB_PLATFORM_IMAGE_AOUT): Likewise.
 
7979
        (grub_platform_image_format_t): New type.
 
7980
        * kern/mips/yeeloong/init.c (grub_modules_get_end): Move from here ...
 
7981
        * kern/main.c (grub_modules_get_end)
 
7982
        [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_SPARC64]: ... here.
 
7983
        * kern/sparc64/ieee1275/crt0.S: Store firmware entry point in %o0.
 
7984
        (codestart): Switch stacks.
 
7985
        * kern/sparc64/ieee1275/init.c (grub_ieee1275_original_stack): New
 
7986
        variable.
 
7987
        (grub_heap_init): Use grub_modules_get_end.
 
7988
        * loader/sparc64/ieee1275/linux.c (grub_linux_boot): Restore original
 
7989
        stack.
 
7990
        * util/grub-mkrawimage.c (generate_image): Support sparc64.
 
7991
        (main): Likewise.
 
7992
        * util/sparc64/ieee1275/grub-mkimage.c: Removed.
 
7993
 
 
7994
2010-03-14  Thorsten Glaser <tg@mirbsd.org>
 
7995
 
 
7996
        * util/grub-mkrescue.in: Base ISO UUID on UTC.
 
7997
 
 
7998
2010-03-08  Matt Kraai  <kraai@ftbfs.org>
 
7999
 
 
8000
        * util/i386/pc/grub-setup.c (setup): Fix a grammatical error (Debian
 
8001
        bug #559005).
 
8002
 
 
8003
2010-03-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8004
 
 
8005
        * genmoddep.awk: Output all missing symbols and not only first.
 
8006
 
 
8007
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8008
 
 
8009
        * NEWS: Put the date of 1.98 release.
 
8010
 
 
8011
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8012
 
 
8013
        * configure.ac: Update CPPFLAGS and not CFLAGS when checking for
 
8014
        ft2build.h.
 
8015
 
 
8016
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8017
 
 
8018
        * normal/cmdline.c (grub_cmdline_get): Fix gabled line after
 
8019
        completition in the middle of string.
 
8020
 
 
8021
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8022
 
 
8023
        * util/grub-mkrescue.in: Use mktemp with explicit template.
 
8024
 
 
8025
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8026
 
 
8027
        * loader/i386/bsd.c (grub_bsd_get_device): Fix a memory leak.
 
8028
 
 
8029
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8030
 
 
8031
        * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Free the
 
8032
        right pointer.
 
8033
 
 
8034
2010-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
8035
 
 
8036
        Fix FreeBSD compilation.
 
8037
 
 
8038
        * Makefile.in (TARGET_CPPFLAGS): Remove -nostdinc -isystem.
 
8039
        * configure.ac: Add -nostdinc -isystem to TARGET_CPPFLAGS if it works.
 
8040
 
 
8041
2010-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
 
8042
 
 
8043
        * util/import_gcry.py: Add autogenerated files to MAINTAINER_CLEANFILES.
 
8044
 
 
8045
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8046
 
 
8047
        * gettext/gettext.c (grub_gettext_init_ext): Fix a memory leak.
 
8048
 
 
8049
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8050
 
 
8051
        * disk/scsi.c (grub_scsi_iterate): Fix a memory leak.
 
8052
 
 
8053
2010-03-04  Robert Millan  <rmh.grub@aybabtu.com>
 
8054
 
 
8055
        Support relative image path in theme file.
 
8056
 
 
8057
        * gfxmenu/gui_image.c (grub_gui_image): New member theme_dir.
 
8058
        (image_set_property): Handle theme_dir and relative path.
 
8059
 
 
8060
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8061
 
 
8062
        * configure.ac: Alias amd64 to x86_64.
 
8063
 
 
8064
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8065
 
 
8066
        * NEWS: mention multiboot on EFI.
 
8067
 
 
8068
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8069
 
 
8070
        * kern/main.c (grub_load_modules): Handle errors from init functions of
 
8071
        embeded modules.
 
8072
 
 
8073
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8074
 
 
8075
        * normal/autofs.c (autoload_fs_module): Handle errors.
 
8076
 
 
8077
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8078
 
 
8079
        Disable linux.mod on qemu-mips since it's not functional and leads
 
8080
        to compilation failure.
 
8081
 
 
8082
        * conf/mips.rmk (pkglib_MODULES): Remove linux.mod.
 
8083
        * conf/mips-yeeloong.rmk (pkglib_MODULES): Add linux.mod.
 
8084
        * conf/mips.rmk (linux_mod_SOURCES): Move from here ...
 
8085
        * conf/mips-yeeloong.rmk (linux_mod_SOURCES): ... here
 
8086
        * conf/mips.rmk (linux_mod_CFLAGS): Move from here ...
 
8087
        * conf/mips-yeeloong.rmk (linux_mod_CFLAGS): ... here
 
8088
        * conf/mips.rmk (linux_mod_ASFLAGS): Move from here ...
 
8089
        * conf/mips-yeeloong.rmk (linux_mod_ASFLAGS): ... here
 
8090
        * conf/mips.rmk (linux_mod_LDFLAGS): Move from here ...
 
8091
        * conf/mips-yeeloong.rmk (linux_mod_LDFLAGS): ... here
 
8092
        Reported by: BVK Chaitanya
 
8093
 
 
8094
2010-03-04  Jordan Uggla  <jordan.uggla@gmail.com>
 
8095
 
 
8096
        * INSTALL: Add gettext as a dependency and add qemu to a new section
 
8097
        "Prerequisites for make-check".
 
8098
 
 
8099
2010-03-04  Christian Franke  <franke@computer.org>
 
8100
 
 
8101
        * util/grub-pe2elf.c: Add missing include "progname.h".
 
8102
 
 
8103
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8104
 
 
8105
        * normal/crypto.c (read_crypto_list): Fix a typo.
 
8106
        Reported by: Seth Goldberg.
 
8107
 
 
8108
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8109
 
 
8110
        * Makefile.in (DISTCLEANFILES): Add stamp-h1.
 
8111
        Reported by: Seth Goldberg.
 
8112
 
 
8113
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8114
 
 
8115
        * Makefile.in (CLEANFILES) [FONT_SOURCE && grub_mkfont]: Add
 
8116
        ascii.bitmaps.
 
8117
 
 
8118
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8119
 
 
8120
        * genmk.rb: Remove terminal*.lst in make clean.
 
8121
        Reported by: Seth Goldberg.
 
8122
 
 
8123
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
 
8124
 
 
8125
        * util/i386/efi/grub-install.in: Copy gettext files.
 
8126
 
 
8127
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
8128
 
 
8129
        * fs/ext2.c (grub_ext2_read_block): Fix an integer overflow.
 
8130
 
 
8131
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
8132
 
 
8133
        Wait for user entry basing on presence of output rather than on errors.
 
8134
 
 
8135
        * include/grub/normal.h (grub_normal_get_line_counter): New proto.
 
8136
        (grub_install_newline_hook): Likewise.
 
8137
        * normal/main.c (GRUB_MOD_INIT): Call grub_install_newline_hook.
 
8138
        * normal/menu.c (show_menu): Check line_counter to determine presence
 
8139
        of output.
 
8140
        * normal/term.c (grub_normal_line_counter): New variable.
 
8141
        (grub_normal_get_line_counter): New function.
 
8142
        (grub_install_newline_hook): Likewise.
 
8143
 
 
8144
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
8145
 
 
8146
        * commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error.
 
8147
 
 
8148
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
 
8149
 
 
8150
        * configure.ac: Update version to 1.98.
 
8151
 
 
8152
2010-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
8153
 
 
8154
        * util/grub.d/10_linux.in (linux_entry): Don't default to
 
8155
        gfxpayload=keep if Linux doesn't support video handover.
 
8156
 
 
8157
2010-02-25  Vladimir Serbinenko  <phcoder@gmail.com>
 
8158
 
 
8159
        Don't compile video modules on yeeloong since video subsystem is part
 
8160
        of kernel.
 
8161
 
 
8162
        * conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
 
8163
        video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
 
8164
        * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
 
8165
        video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
 
8166
        * conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
 
8167
        * include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
 
8168
        * include/grub/bitmap_scale.h: Likewise.
 
8169
        * include/grub/bufio.h: Likewise.
 
8170
        * include/grub/font.h: Likewise.
 
8171
        * include/grub/gfxterm.h: Likewise.
 
8172
        * include/grub/video.h: Likewise.
 
8173
        * include/grub/vbe.h: Don't include video_fb.h.
 
8174
        * video/i386/pc/vbe.c: Include video_fb.h.
 
8175
        * commands/i386/pc/vbetest.c: Include video.h.
 
8176
 
 
8177
2010-02-25  Jordan Uggla  <jordan.uggla@gmail.com>
 
8178
 
 
8179
        * util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable.
 
8180
        * util/grub-mkconfig_lib.in (save_default_entry): Only save a new
 
8181
        default entry if GRUB_SAVEDEFAULT=true.  This allows using
 
8182
        GRUB_DEFAULT=saved on its own to let grub-reboot work, without
 
8183
        saving a new default on every boot.
 
8184
 
 
8185
2010-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
 
8186
 
 
8187
        * normal/crypto.c (read_crypto_list): Fix a memory leak.
 
8188
        * normal/term.c (read_terminal_list): Likewise.
 
8189
        * normal/main.c (grub_normal_init_page): Likewise.
 
8190
        (grub_normal_read_line_real): Likewise.
 
8191
 
 
8192
2010-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
 
8193
 
 
8194
        * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Fix a
 
8195
        memory leak.
 
8196
        Reported by: Seth Goldberg.
 
8197
 
 
8198
2010-02-24  Joey Korkames  <joey+lists@kidfixit.com>
 
8199
 
 
8200
        * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Remove
 
8201
        duplicate declaration of `start'.
 
8202
 
 
8203
2010-02-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
8204
 
 
8205
        * fs/iso9660.c (grub_iso9660_iterate_dir): Strip version from joliet
 
8206
        filename.
 
8207
        Reported by: Georgy Buranov
 
8208
 
 
8209
2010-02-20  Carles Pina i Estany  <carles@pina.cat>
 
8210
 
 
8211
        * util/grub-mkrawimage.c (usage): Change string formatting to
 
8212
        improve gettext.
 
8213
 
 
8214
2010-02-20  Manoel Rebelo Abranches <mrabran@br.ibm.com>
 
8215
 
 
8216
        * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Add delete and
 
8217
        backspace keys.
 
8218
 
 
8219
2010-02-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
8220
 
 
8221
        * video/fb/video_fb.c (grub_video_fb_scroll): Fix a pixel size bug.
 
8222
        Reported by: Michael Suchanek.
 
8223
 
 
8224
2010-02-18  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
8225
 
 
8226
        * util/grub-mkconfig.in: Export GRUB_INIT_TUNE.
 
8227
        * util/grub.d/00_header.in: Handle GRUB_INIT_TUNE.
 
8228
 
 
8229
2010-02-16  Vladimir Serbinenko  <phcoder@gmail.com>
 
8230
 
 
8231
        Remove any reference to non-free fonts.
 
8232
 
 
8233
        * commands/videotest.c (grub_cmd_videotest): Use unifont by default.
 
8234
        * docs/gfxmenu-theme-example.txt: Removed. It's both outdated and
 
8235
        uses non-free components.
 
8236
        * font/font.c (grub_font_get_name): Remove example name.
 
8237
        * gfxmenu/gui_label.c (grub_gui_label_new): Use unifont by default.
 
8238
        * gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
 
8239
        * gfxmenu/gui_progress_bar.c (grub_gui_progress_bar_new): Likewise.
 
8240
        * gfxmenu/view.c (grub_gfxmenu_view_new): Likewise.
 
8241
 
 
8242
2010-02-16  Georgy Buranov <gburanov@gmail.com>
 
8243
 
 
8244
        * disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix a typo.
 
8245
 
 
8246
2010-02-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
8247
 
 
8248
        * term/serial.c (serial_get_divisor) [GRUB_MACHINE_MIPS_YEELOONG]:
 
8249
        Double divisor.
 
8250
        (serial_hw_init) [GRUB_MACHINE_MIPS_YEELOONG]: Don't enable advanced
 
8251
        features.
 
8252
        (GRUB_MOD_INIT) [GRUB_MACHINE_MIPS_YEELOONG]: Default to 115200.
 
8253
 
 
8254
2010-02-15  Vladimir Serbinenko  <phcoder@gmail.com>
 
8255
 
 
8256
        * gensymlist.sh.in: Use TARGET_CC instead of CC.
 
8257
 
 
8258
2010-02-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
8259
 
 
8260
        * commands/i386/pc/play.c (GRUB_MOD_INIT(play)): Fix help.
 
8261
        * docs/grub.texi (Command-line and menu entry commands): Document play
 
8262
        command.
 
8263
 
 
8264
2010-02-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
8265
 
 
8266
        * commands/i386/pc/play.c (grub_cmd_play): If grub_file_open fails,
 
8267
        parse arguments as inline tempo and notes.  Move code for playing notes
 
8268
        to...
 
8269
        (play): ... new function.
 
8270
 
 
8271
2010-02-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
8272
 
 
8273
        * commands/i386/pc/play.c (T_REST, T_FINE, struct note, beep_on): Use
 
8274
        grub_uint16_t instead of short.
 
8275
        (grub_cmd_play): Use grub_uint32_t instead of int, convert data from
 
8276
        disk from little endian to cpu endianness.
 
8277
 
 
8278
2010-02-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
8279
 
 
8280
        * commands/i386/pc/play.c (BASE_TEMPO): Set to 60 *
 
8281
        GRUB_TICKS_PER_SECOND instead of 120.
 
8282
 
 
8283
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
8284
 
 
8285
        * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Wait for possible
 
8286
        escape sequence after \e.
 
8287
 
 
8288
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
8289
 
 
8290
        * term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Don't output
 
8291
        non-ASCII characters.
 
8292
 
 
8293
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
8294
 
 
8295
        * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Enclose
 
8296
        set root in single quotes to prevent \, from being unescaped.
 
8297
 
 
8298
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
8299
 
 
8300
        Prevent unknown commands from stopping menuentry execution.
 
8301
 
 
8302
        * script/execute.c (grub_script_execute_cmdline): Print error after
 
8303
        unknown command.
 
8304
 
 
8305
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
 
8306
 
 
8307
        * fs/i386/pc/pxe.c (GRUB_MOD_INIT): Fix typo.
 
8308
        Reported by: Pavel Pisa.
 
8309
 
 
8310
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8311
 
 
8312
        * io/gzio.c (grub_gzio_open): Use grub_zalloc.
 
8313
 
 
8314
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8315
 
 
8316
        Merge grub_ieee1275_map_physical into grub_map and rename to
 
8317
        grub_ieee1275_map
 
8318
 
 
8319
        * include/grub/ieee1275/ieee1275.h (grub_ieee1275_map): New proto.
 
8320
        * include/grub/sparc64/ieee1275/ieee1275.h (grub_ieee1275_map_physical):
 
8321
        Remove.
 
8322
        * kern/ieee1275/openfw.c (grub_map): Rename to ...
 
8323
        (grub_ieee1275_map): ... this. All users updated. Add phys_lo when
 
8324
        necessary.
 
8325
        * kern/sparc64/ieee1275/ieee1275.c (grub_ieee1275_map_physical): Remove.
 
8326
 
 
8327
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8328
 
 
8329
        * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Check device type before
 
8330
        opening and not after.
 
8331
 
 
8332
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8333
 
 
8334
        * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Macroify
 
8335
        constants.
 
8336
 
 
8337
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8338
 
 
8339
        * loader/sparc64/ieee1275/linux.c (align_addr): Remove.
 
8340
        (alloc_phys): Use ALIGN_UP instead of align_addr.
 
8341
 
 
8342
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8343
 
 
8344
        * loader/sparc64/ieee1275/linux.c (alloc_phys): Correct bounds checking.
 
8345
 
 
8346
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8347
 
 
8348
        * kern/sparc64/ieee1275/crt0.S (codestart): Move modules backwards.
 
8349
 
 
8350
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8351
 
 
8352
        * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Remove excessively
 
8353
        verbose dprintf.
 
8354
 
 
8355
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8356
 
 
8357
        Fix over-4GiB seek on sparc64.
 
8358
 
 
8359
        * include/grub/ieee1275/ieee1275.h (grub_ieee1275_seek):
 
8360
        Replace pos_i and pos_lo with pos. All users updated.
 
8361
        * include/grub/powerpc/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
 
8362
        New constant.
 
8363
        * include/grub/sparc64/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
 
8364
        Likewise.
 
8365
        * kern/ieee1275/ieee1275.c (grub_ieee1275_seek): Split pos into pos_hi
 
8366
        and pos_lo.
 
8367
 
 
8368
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8369
 
 
8370
        * util/grub-mkrawimage.c (main): Call set_program_name.
 
8371
 
 
8372
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8373
 
 
8374
        Properly align 64-bit targets.
 
8375
 
 
8376
        * util/grub-mkrawimage.c (ALIGN_ADDR): New macro.
 
8377
        (generate_image): Use ALIGN_ADDR.
 
8378
 
 
8379
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8380
 
 
8381
        Properly create cross-endian images.
 
8382
 
 
8383
        * include/grub/types.h (grub_host_to_target_addr): New macro
 
8384
        * util/grub-mkrawimage.c (generate_image): Add missing host_to_target.
 
8385
 
 
8386
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
8387
 
 
8388
        * util/grub-mkrawimage.c (generate_image): Add forgotten ALIGN_UP.
 
8389
 
 
8390
2010-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
8391
 
 
8392
        Pass SIMPLE framebuffer size in bytes and not 64K blocks.
 
8393
 
 
8394
        * loader/i386/efi/linux.c (grub_linux_setup_video): Don't divide by 64K.
 
8395
        * loader/i386/linux.c (grub_linux_setup_video): Likewise.
 
8396
        (grub_linux_boot): Divide by 64K when on VESA.
 
8397
 
 
8398
2010-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
8399
 
 
8400
        Support GRUB_GFXPAYLOAD_LINUX.
 
8401
 
 
8402
        * util/grub-mkconfig.in: Export GRUB_GFXPAYLOAD_LINUX.
 
8403
        * util/grub.d/10_linux.in (linux_entry): Handle GRUB_GFXPAYLOAD_LINUX.
 
8404
 
 
8405
2010-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
8406
 
 
8407
        * script/execute.c (grub_script_execute_cmdline): Use grub_print_error
 
8408
        to show messages instead of discarding them.
 
8409
        Process errors after executing command and not before. Keep old method
 
8410
        too as precaution.
 
8411
 
 
8412
2010-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
 
8413
 
 
8414
        * configure.ac: Check for ft2build.h.
 
8415
 
 
8416
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8417
 
 
8418
        * kern/ieee1275/openfw.c (grub_halt): Try executing "poweroff".
 
8419
 
 
8420
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8421
 
 
8422
        * genkernsyms.sh.in: Use TARGET_CC.
 
8423
 
 
8424
2010-02-07  Colin Watson  <cjwatson@ubuntu.com>
 
8425
 
 
8426
        * NEWS: Update.
 
8427
 
 
8428
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8429
 
 
8430
        * include/grub/multiboot2.h: Remove leftover file.
 
8431
        * include/grub/normal.h [GRUB_UTIL]: Remove leftover declarations.
 
8432
        * include/grub/partition.h [GRUB_UTIL]: Likewise.
 
8433
 
 
8434
2010-02-07  Yves Blusseau  <blusseau@zetam.org>
 
8435
 
 
8436
        * gnulib/getdelim.c: add missing header (type ssize_t must be defined).
 
8437
 
 
8438
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8439
 
 
8440
        Fix warnings in grub-emu when compiling with maximum warning options.
 
8441
 
 
8442
        * util/grub-emu.c (ENABLE_RELOCATABLE): New definition.
 
8443
        (grub_arch_modules_addr): Return 0 and not NULL.
 
8444
        * util/misc.c (ENABLE_RELOCATABLE): New definition.
 
8445
        (xstrdup): Use newstr instead of dup.
 
8446
        * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Rename one instance
 
8447
        of disk to dsk to avoid shadowing.
 
8448
        (find_free_slot): Fix prototype.
 
8449
        * util/getroot.c (grub_util_is_dmraid): Make static.
 
8450
        * include/grub/time.h (grub_get_rtc) [GRUB_MACHINE_EMU || GRUB_UTIL]:
 
8451
        Add missing prototype.
 
8452
        * util/sdl.c (grub_video_sdl_set_viewport): Remove.
 
8453
 
 
8454
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8455
 
 
8456
        * loader/i386/linux.c (grub_linux_setup_video): Handle error
 
8457
        appropriately.
 
8458
 
 
8459
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8460
 
 
8461
        * fs/reiserfs.c (grub_reiserfs_read): Use #if 0 instead of commenting
 
8462
        code out.
 
8463
 
 
8464
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8465
 
 
8466
        * include/grub/cache.h (grub_arch_sync_caches) [i386 || x86_64]: Inline.
 
8467
        * kern/i386/coreboot/init.c (grub_arch_sync_caches): Remove.
 
8468
        * kern/i386/efi/init.c (grub_arch_sync_caches): Likewise.
 
8469
        * kern/i386/ieee1275/init.c (grub_arch_sync_caches): Likewise.
 
8470
        * kern/i386/pc/init.c (grub_arch_sync_caches): Likewise.
 
8471
        * util/misc.c (grub_arch_sync_caches) [i386 || x86_64]: Likewise.
 
8472
 
 
8473
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8474
 
 
8475
        * include/grub/err.h (grub_err_printf): Don't export.
 
8476
 
 
8477
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8478
 
 
8479
        * include/grub/dl.h (grub_dl_register_symbol): Don't export.
 
8480
 
 
8481
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
8482
 
 
8483
        * include/grub/i18n.h (grub_gettext_dummy): Removed.
 
8484
        * kern/misc.c (grub_gettext_dummy): Make static.
 
8485
 
 
8486
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8487
 
 
8488
        * kern/misc.c (grub_utf8_to_ucs4): Don't eat valid characters preceeded
 
8489
        by non-valid ones.
 
8490
        * kern/term.c (grub_putchar): Likewise.
 
8491
 
 
8492
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8493
 
 
8494
        * partmap/sun.c (sun_partition_map_iterate): Restructure flow to fix
 
8495
        buggy hook call and memory leak.
 
8496
 
 
8497
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8498
 
 
8499
        * commands/ls.c (grub_ls_list_files): Free pathname on exit.
 
8500
 
 
8501
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8502
 
 
8503
        * fs/fat.c (grub_fat_iterate_dir): Free unibuf at exit.
 
8504
 
 
8505
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8506
 
 
8507
        * loader/i386/pc/xnu.c (grub_xnu_set_video): Add const qualifier to
 
8508
        modevar.
 
8509
        Return grub_errno on allocation error.
 
8510
 
 
8511
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8512
 
 
8513
        * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Correct error handling.
 
8514
 
 
8515
2010-02-06  Yves Blusseau  <blusseau@zetam.org>
 
8516
 
 
8517
        * conf/common.rmk (grub_script_check_SOURCES): add missing dependencies.
 
8518
        (grub_mkpasswd_pbkdf2_SOURCES): Likewise.
 
8519
 
 
8520
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8521
 
 
8522
        * fs/i386/pc/pxe.c (grub_pxefs_dir): Return with failure on
 
8523
        non-pxe disk.
 
8524
        (grub_pxefs_open): Likewise.
 
8525
 
 
8526
2010-02-06  Robert Millan  <rmh.grub@aybabtu.com>
 
8527
 
 
8528
        * util/grub.d/10_hurd.in: Add --class information to menuentries.
 
8529
        * util/grub.d/10_kfreebsd.in: Likewise.
 
8530
        * util/grub.d/10_linux.in: Likewise.
 
8531
 
 
8532
2010-02-06  Colin D Bennett  <colin@gibibit.com>
 
8533
 
 
8534
        * conf/common.rmk (pkglib_MODULES): Add gfxmenu.mod.
 
8535
        (gfxmenu_mod_SOURCES): New variable.
 
8536
        (gfxmenu_mod_CFLAGS): Likewise.
 
8537
        (gfxmenu_mod_LDFLAGS): Likewise.
 
8538
        * include/grub/term.h (grub_term_set_current_output): Declare
 
8539
        argument as const.
 
8540
        * docs/gfxmenu-theme-example.txt: New file.
 
8541
        * gfxmenu/gfxmenu.c: Likewise.
 
8542
        * gfxmenu/gui_box.c: Likewise.
 
8543
        * gfxmenu/gui_canvas.c: Likewise.
 
8544
        * gfxmenu/gui_circular_progress.c: Likewise.
 
8545
        * gfxmenu/gui_image.c: Likewise.
 
8546
        * gfxmenu/gui_label.c: Likewise.
 
8547
        * gfxmenu/gui_list.c: Likewise.
 
8548
        * gfxmenu/gui_progress_bar.c: Likewise.
 
8549
        * gfxmenu/gui_string_util.c: Likewise.
 
8550
        * gfxmenu/gui_util.c: Likewise.
 
8551
        * gfxmenu/icon_manager.c: Likewise.
 
8552
        * gfxmenu/model.c: Likewise.
 
8553
        * gfxmenu/named_colors.c: Likewise.
 
8554
        * gfxmenu/theme_loader.c: Likewise.
 
8555
        * gfxmenu/view.c: Likewise.
 
8556
        * gfxmenu/widget-box.c: Likewise.
 
8557
        * include/grub/gfxmenu_model.h: Likewise.
 
8558
        * include/grub/gfxmenu_view.h: Likewise.
 
8559
        * include/grub/gfxwidgets.h: Likewise.
 
8560
        * include/grub/gui.h: Likewise.
 
8561
        * include/grub/gui_string_util.h: Likewise.
 
8562
        * include/grub/icon_manager.h: Likewise.
 
8563
 
 
8564
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8565
 
 
8566
        Agglomerate scrolling in gfxterm.
 
8567
 
 
8568
        * term/gfxterm.c (grub_virtual_screen): New member 'total_screen'.
 
8569
        (grub_virtual_screen_setup): Initialise 'total_screen'.
 
8570
        (write_char): Split to ...
 
8571
        (paint_char): ... this ...
 
8572
        (write_char): ... and this.
 
8573
        (paint_char): Handle delayed scrolling.
 
8574
        (draw_cursor): Likewise.
 
8575
        (scroll_up): Split to ...
 
8576
        (real_scroll): ... this ...
 
8577
        (scroll_up): ... and this.
 
8578
        (real_scroll): Handle multi-line scroll and draw below-the-bottom
 
8579
        characters.
 
8580
        (grub_gfxterm_refresh): Call real_scroll.
 
8581
 
 
8582
2010-02-06  Colin D Bennett  <colin@gibibit.com>
 
8583
 
 
8584
        * include/grub/misc.h (grub_iscntrl): New inline function.
 
8585
        (grub_isalnum): Likewise.
 
8586
        (grub_strtol): Likewise.
 
8587
 
 
8588
2010-02-06  Colin D Bennett  <colin@gibibit.com>
 
8589
 
 
8590
        * normal/menu_text.c (get_entry_number): Move from here ...
 
8591
        * normal/menu.c (get_entry_number): ... moved here.
 
8592
        * include/grub/menu.h (grub_menu_get_default_entry_index):
 
8593
        New prototype.
 
8594
        * normal/menu.c (grub_menu_get_default_entry_index): New function.
 
8595
        * normal/menu_text.c (run_menu): Use grub_menu_get_default_entry_index.
 
8596
        * include/grub/menu_viewer.h (grub_menu_viewer_init): New prototype.
 
8597
        (grub_menu_viewer_should_return): Likewise.
 
8598
        * normal/main.c (GRUB_MOD_INIT (normal)): Call grub_menu_viewer_init.
 
8599
        * normal/menu_text.c (run_menu): Enable menu switching.
 
8600
        * normal/menu_viewer.c (should_return): New variable.
 
8601
        (menu_viewer_changed): Likewise.
 
8602
        (grub_menu_viewer_show_menu): Handle menu viewer changes.
 
8603
        (grub_menu_viewer_should_return): New function.
 
8604
        (menuviewer_write_hook): Likewise.
 
8605
        (grub_menu_viewer_init): Likewise.
 
8606
 
 
8607
2010-02-06  Colin D Bennet <colin@gibibit.com>
 
8608
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8609
 
 
8610
        Support for gfxterm in a window.
 
8611
 
 
8612
        * include/grub/gfxterm.h: New file.
 
8613
        * include/grub/video.h (struct grub_video_rect): New declaration.
 
8614
        (grub_video_rect_t): Likewise.
 
8615
        * term/gfxterm.c (struct grub_gfxterm_window): New type.
 
8616
        (refcount): New variable.
 
8617
        (render_target): Likewise.
 
8618
        (window): Likewise.
 
8619
        (repaint_callback): Likewise.
 
8620
        (grub_virtual_screen_setup): Use 'render_target'.
 
8621
        (init_window): New function.
 
8622
        (grub_gfxterm_init_window): Likewise.
 
8623
        (grub_gfxterm_init): Check reference counter.
 
8624
        Use init_window.
 
8625
        (destroy_window): New function.
 
8626
        (grub_gfxterm_destroy_window): Likewise.
 
8627
        (grub_gfxterm_fini): Check reference counter.
 
8628
        Use destroy_window.
 
8629
        (redraw_screen_rect): Restore viewport.
 
8630
        Use 'render_target' and 'window'.
 
8631
        Call 'repaint_callback'.
 
8632
        (write_char): Use 'render_target'.
 
8633
        (draw_cursor): Likewise.
 
8634
        (scroll_up): Restore viewport.
 
8635
        Use 'render_target' and 'window'.
 
8636
        Call 'repaint_callback'.
 
8637
        (grub_gfxterm_cls): Likewise.
 
8638
        (grub_gfxterm_refresh): Use 'window'.
 
8639
        (grub_gfxterm_set_repaint_callback): New function.
 
8640
        (grub_gfxterm_background_image_cmd): Use 'window'.
 
8641
        (grub_gfxterm_get_term): New function.
 
8642
        (GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0.
 
8643
 
 
8644
2010-02-06  Colin D Bennett  <colin@gibibit.com>
 
8645
 
 
8646
        Bitmap scaling support.
 
8647
 
 
8648
        * conf/common.rmk (pkglib_MODULES): Add bitmap_scale.mod.
 
8649
        (bitmap_scale_mod_SOURCES): New variable.
 
8650
        (bitmap_scale_mod_CFLAGS): Likewise.
 
8651
        (bitmap_scale_mod_LDFLAGS): Likewise.
 
8652
        * include/grub/bitmap_scale.h: New file.
 
8653
        * term/gfxterm.c (BACKGROUND_CMD_ARGINDEX_MODE): New definiton.
 
8654
        (background_image_cmd_options): New variable.
 
8655
        (grub_gfxterm_background_image_cmd): Support bitmap stretching.
 
8656
        (cmd): Rename and change type to ...
 
8657
        (background_image_cmd_handle): ... this. All users updated.
 
8658
        (GRUB_MOD_INIT(term_gfxterm)): Make background_image extended command.
 
8659
        * video/bitmap_scale.c: New file.
 
8660
 
 
8661
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8662
 
 
8663
        SDL support.
 
8664
 
 
8665
        * Makefile.in (LIBSDL): New variable.
 
8666
        (enable_grub_emu_sdl): Likewise.
 
8667
        * conf/i386-pc.rmk (grub_emu_SOURCES): Add video files.
 
8668
        (grub_emu_SOURCES) [enable_grub_emu_sdl]: Add util/sdl.c.
 
8669
        (grub_emu_LDFLAGS) [enable_grub_emu_sdl]: Add $(LIBSDL).
 
8670
        * configure.ac: Detect SDL availability and add --enable-grub-emu-sdl
 
8671
        * util/sdl.c: New file.
 
8672
 
 
8673
2010-02-06  Colin D Bennett  <colin@gibibit.com>
 
8674
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8675
 
 
8676
        Double buffering support.
 
8677
 
 
8678
        * commands/i386/pc/videotest.c (grub_cmd_videotest): Swap doublebuffers.
 
8679
        * include/grub/video.h: Update comment.
 
8680
        * include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
 
8681
        New type.
 
8682
        (grub_video_fb_doublebuf_blit_init): New prototype.
 
8683
        * term/gfxterm.c (scroll_up): Support double buffering.
 
8684
        (grub_gfxterm_refresh): Likewise.
 
8685
        * video/fb/video_fb.c (doublebuf_blit_update_screen): New function.
 
8686
        (grub_video_fb_doublebuf_blit_init): Likewise.
 
8687
        * video/i386/pc/vbe.c (framebuffer): Remove 'render_target'. Add
 
8688
        'front_target', 'back_target', 'offscreen_buffer', 'page_size',
 
8689
        'displayed_page', 'render_page' and 'update_screen'.
 
8690
        (grub_video_vbe_fini): Free offscreen buffer.
 
8691
        (doublebuf_pageflipping_commit): New function.
 
8692
        (doublebuf_pageflipping_update_screen): Likewise.
 
8693
        (doublebuf_pageflipping_init): Likewise.
 
8694
        (double_buffering_init): Likewise.
 
8695
        (grub_video_vbe_setup): Enable doublebuffering.
 
8696
        (grub_video_vbe_swap_buffers): Implement.
 
8697
        (grub_video_vbe_set_active_render_target): Handle double buffering.
 
8698
        (grub_video_vbe_get_active_render_target): Likewise.
 
8699
        (grub_video_vbe_get_info_and_fini): Likewise. Free offscreen_buffer.
 
8700
        (grub_video_vbe_adapter): Use grub_video_vbe_get_active_render_target.
 
8701
        (grub_video_vbe_enable_double_buffering): Likewise.
 
8702
        (grub_video_vbe_swap_buffers): Use update_screen.
 
8703
        (grub_video_set_mode): Use double buffering.
 
8704
 
 
8705
2010-02-06  Robert Millan  <rmh.grub@aybabtu.com>
 
8706
 
 
8707
        * maintainance/gentrigtables.py: Remove.
 
8708
        * lib/trig.c: Likewise.
 
8709
 
 
8710
        * gentrigtables.c: New file.  C rewrite of gentrigtables.py.
 
8711
 
 
8712
        * conf/common.rmk (trig_mod_SOURCES): Replace `lib/trig.c' with
 
8713
        `trigtables.c'.
 
8714
        (trigtables.c): New rule.
 
8715
        (gentrigtables): Likewise.
 
8716
        (DISTCLEANFILES): Add `trigtables.c' and `gentrigtables'.
 
8717
 
 
8718
2010-02-06  Robert Millan  <rmh.grub@aybabtu.com>
 
8719
 
 
8720
        * maintainance/gentrigtables.py: Avoid duplicate hardcoding of
 
8721
        integer constants.
 
8722
 
 
8723
2010-02-06  Colin D Bennet <colin@gibibit.com>
 
8724
 
 
8725
        Trigonometry support.
 
8726
 
 
8727
        * include/grub/trig.h: New file.
 
8728
        * lib/trig.c: Likewise.
 
8729
        * maintainance/gentrigtables.py: Likewise.
 
8730
        * conf/common.rmk (pkglib_MODULES): Add trig.mod.
 
8731
        (trig_mod_SOURCES): New variable.
 
8732
        (trig_mod_CFLAGS): Likewise.
 
8733
        (trig_mod_LDFLAGS): Likewise.
 
8734
 
 
8735
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8736
 
 
8737
        * kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Support whole
 
8738
        disk devices.
 
8739
 
 
8740
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
 
8741
 
 
8742
        * kern/ieee1275/openfw.c (grub_devalias_iterate): Stop iterating on
 
8743
        error.
 
8744
 
 
8745
2010-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
8746
 
 
8747
        * util/hostdisk.c (open_device): Don't use partition device when reading
 
8748
        before the partition.
 
8749
        (grub_util_biosdisk_read): Don't read from partition and before the
 
8750
        partition in single operation.
 
8751
        (grub_util_biosdisk_write): Don't write to partition and before the
 
8752
        partition in single operation.
 
8753
 
 
8754
2010-02-03  Torsten Landschoff   <torsten@debian.org>
 
8755
 
 
8756
        * kern/disk.c (grub_disk_read): Fix offset computation when reading
 
8757
        last sectors.
 
8758
 
 
8759
2010-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
8760
 
 
8761
        * disk/i386/pc/biosdisk.c (grub_biosdisk_read): Handle non-2048 aligned
 
8762
        CDROM reads.
 
8763
        (grub_biosdisk_write): Refuse to write to CDROM.
 
8764
 
 
8765
2010-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
8766
 
 
8767
        * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix off-by-one error.
 
8768
 
 
8769
2010-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
8770
 
 
8771
        * font/font.c (find_glyph): Check that bmp_idx is available before
 
8772
        using it.
 
8773
        (grub_font_get_string_width): Never call grub_font_get_glyph_internal
 
8774
        with (font == NULL).
 
8775
 
 
8776
2010-01-28  Christian Schmitt  <chris@ilovelinux.de>
 
8777
 
 
8778
        * util/ieee1275/grub-install.in: Fix nvsetenv arguments.
 
8779
 
 
8780
2010-01-28  BVK Chaitanya  <bvk.groups@gmail.com>
 
8781
 
 
8782
        * include/grub/script_sh.h (sourcecode): Add const qualifier.
 
8783
        * util/grub-script-check.c (getline): Fix empty lines case.
 
8784
 
 
8785
2010-01-28  Robert Millan  <rmh.grub@aybabtu.com>
 
8786
 
 
8787
        * Makefile.in (check): Exit with fail status when one of the tests
 
8788
        fails.
 
8789
        * tests/example_functional_test.c (example_test): Fix reversed assert.
 
8790
        * tests/example_unit_test.c (example_test): Likewise.
 
8791
 
 
8792
2010-01-28  Colin Watson  <cjwatson@ubuntu.com>
 
8793
 
 
8794
        * util/grub.d/10_linux.in: This script does not use any of the
 
8795
        contents of gettext.sh, only the external command `gettext', so stop
 
8796
        sourcing it.  (Moreover, gettext.sh isn't necessarily installed in
 
8797
        the same prefix as GRUB.)
 
8798
        * util/grub.d/10_kfreebsd.in: Likewise.
 
8799
 
 
8800
2010-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
8801
 
 
8802
        * normal/cmdline.c (grub_cmdline_get): Fix completion in the middle
 
8803
        of the line.
 
8804
 
 
8805
2010-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
8806
 
 
8807
        * kern/disk.c (grub_disk_read): Fix offset computation when reading
 
8808
        last sectors.
 
8809
 
 
8810
2010-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
 
8811
 
 
8812
        * commands/hashsum.c (hash_file): Avoid possible stack overflow by
 
8813
        having a 4KiB and not 32KiB buffer size.
 
8814
 
 
8815
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
 
8816
 
 
8817
        * util/hostfs.c: Include `<errno.h>'.
 
8818
        (grub_hostfs_read): Handle errors from fseeko() and fread().
 
8819
 
 
8820
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
 
8821
 
 
8822
        * kern/disk.c (grub_disk_read): Fix bug that would cause infinite
 
8823
        loop when using read hooks on files whose size isn't sector-aligned.
 
8824
 
 
8825
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
 
8826
 
 
8827
        Remove unused parameter.
 
8828
 
 
8829
        * fs/iso9660.c (struct grub_iso9660_data): Remove `length' parameter.
 
8830
        (grub_iso9660_open): Remove initialization of `data->length'.
 
8831
 
 
8832
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
 
8833
 
 
8834
        * util/grub-fstest.c (fstest): Rewrite allocation, fixing a few
 
8835
        memleak conditions.
 
8836
 
 
8837
2010-01-27  Carles Pina i Estany  <carles@pina.cat>
 
8838
 
 
8839
        * util/lvm.c: New macro LVM_DEV_MAPPER_STRING.
 
8840
        (grub_util_lvm_isvolume): Use LVM_DEV_MAPPER_STRING.
 
8841
 
 
8842
2010-01-26  Carles Pina i Estany  <carles@pina.cat>
 
8843
 
 
8844
        * util/bin2h.c (usage): Fix warning (space after backslash).
 
8845
 
 
8846
2010-01-26  Carles Pina i Estany  <carles@pina.cat>
 
8847
 
 
8848
        * font/font.c: Include `grub/fontformat.h.
 
8849
        Remove font file format constants.
 
8850
        (grub_font_load): Use the new macros.
 
8851
        * include/grub/fontformat.h: New file.
 
8852
        * util/grub-mkfont.c: Include `grub/fontformat.c'.
 
8853
        (write_font_pf2): Use the new macros.
 
8854
 
 
8855
2010-01-26  Robert Millan  <rmh.grub@aybabtu.com>
 
8856
 
 
8857
        * util/bin2h.c (usage): Make --help actually explain what `grub-bin2h'
 
8858
        does.
 
8859
 
 
8860
2010-01-26  Robert Millan  <rmh.grub@aybabtu.com>
 
8861
 
 
8862
        * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_PXE_DL): New macro.
 
8863
 
 
8864
        * boot/i386/pc/pxeboot.S: Include `<grub/machine/boot.h>'.
 
8865
        (_start): Macroify `0x7F'.
 
8866
 
 
8867
        * kern/i386/pc/init.c: Include `<grub/machine/boot.h>'.
 
8868
        (make_install_device): Use "(pxe)" as fallback prefix when booting
 
8869
        via PXE.
 
8870
 
 
8871
2010-01-26  Vladimir Serbinenko  <phcoder@gmail.com>
 
8872
 
 
8873
        * configure.ac: Reset LIBS after check for libgcc symbols.
 
8874
 
 
8875
2010-01-25  Colin Watson  <cjwatson@ubuntu.com>
 
8876
 
 
8877
        * util/hostdisk.c (open_device): Add trailing newline to debug
 
8878
        message.
 
8879
 
 
8880
2010-01-25  Grégoire Sutre  <gregoire.sutre@gmail.com>
 
8881
 
 
8882
        * configure.ac: Check for `limits.h'.
 
8883
        * util/misc.c: Include `<limits.h>' (for PATH_MAX).
 
8884
 
 
8885
2010-01-24  Robert Millan  <rmh.grub@aybabtu.com>
 
8886
 
 
8887
        * loader/mips/linux.c (grub_cmd_linux, grub_cmd_initrd): Don't
 
8888
        capitalize error strings.
 
8889
 
 
8890
2010-01-24  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
8891
 
 
8892
        * util/grub.d/10_hurd.in: Add a recovery mode.
 
8893
 
 
8894
2010-01-23  Vladimir Serbinenko  <phcoder@gmail.com>
 
8895
 
 
8896
        * configure.ac: Check for libgcc symbols with -nostdlib.
 
8897
 
 
8898
2010-01-23  BVK Chaitanya  <bvk.groups@gmail.com>
 
8899
 
 
8900
        * acinclude.m4: Quote underquoted AC_DEFUN parameters.
 
8901
 
 
8902
2010-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
8903
 
 
8904
        * term/ieee1275/ofconsole.c (grub_ofconsole_setcolorstate): Allocate on
 
8905
        stack since heap may be unavailable at that point.
 
8906
        (grub_ofconsole_gotoxy): Likewise.
 
8907
 
 
8908
2010-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
8909
 
 
8910
        * configure.ac: Check for _restgpr_14_x.
 
8911
        * include/grub/powerpc/libgcc.h [HAVE__RESTGPR_14_X]: Add _restgpr_*_x
 
8912
        and _savegpr_* prototypes.
 
8913
 
 
8914
2010-01-22  Robert Millan  <rmh.grub@aybabtu.com>
 
8915
 
 
8916
        Use generic grub_reboot() for i386-efi.
 
8917
 
 
8918
        * kern/efi/efi.c [__i386__] (grub_reboot): Remove.
 
8919
        * kern/i386/efi/startup.S: Include `"../realmode.S"'.
 
8920
        * kern/i386/realmode.S: Include `<grub/i386/pc/memory.h>'.
 
8921
 
 
8922
2010-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
 
8923
 
 
8924
        * kern/ieee1275/init.c (grub_machine_set_prefix): Don't check for
 
8925
        presence of "prefix" variable as it breaks when normal.mod is
 
8926
        embedded.
 
8927
 
 
8928
2010-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
8929
 
 
8930
        * term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Allocate on
 
8931
        stack since heap is unavailable at that point.
 
8932
 
 
8933
2010-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
8934
 
 
8935
        * include/grub/i386/bsd.h (FREEBSD_N_BIOS_GEOM): Removed.
 
8936
        (grub_freebsd_bootinfo): Rewritten.
 
8937
        * loader/i386/bsd.c (grub_freebsd_boot): Use new grub_freebsd_bootinfo.
 
8938
 
 
8939
2010-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
8940
 
 
8941
        * util/misc.c (make_system_path_relative_to_its_root): Fix typo.
 
8942
 
 
8943
2010-01-21  Robert Millan  <rmh.grub@aybabtu.com>
 
8944
 
 
8945
        * po/POTFILES: Remove mkisofs-related files.  They have their own TLP
 
8946
        domain now.
 
8947
 
 
8948
2010-01-20  Felix Zielcke <fzielcke@z-51.de>
 
8949
 
 
8950
        * util/misc.c (make_system_path_relative_to_its_root): Change the work
 
8951
        around for handling "/" to the correct fix.  Fix a memory leak.  Use
 
8952
        xstrdup instead of strdup.
 
8953
 
 
8954
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
8955
 
 
8956
        * conf/mips.rmk (kernel_img_HEADERS): Add env_private.h
 
8957
 
 
8958
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
8959
 
 
8960
        Optimise glyph lookup by Basic Multilingual Plane lookup array.
 
8961
 
 
8962
        * font/font.c (struct grub_font): New member 'bmp_idx'.
 
8963
        (font_init): Initialise 'bmp_idx'.
 
8964
        (load_font_index): Fill 'bmp_idx'.
 
8965
        (find_glyph): Make inline. Use bmp_idx for BMP characters.
 
8966
 
 
8967
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
8968
 
 
8969
        * video/fb/video_fb.c (grub_video_fb_scroll): Optimise by avoiding
 
8970
        unnecessary calls.
 
8971
 
 
8972
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
8973
 
 
8974
        Move context handling out of the kernel.
 
8975
 
 
8976
        * conf/any-emu.rmk (grub_emu_SOURCES): Add normal/context.c.
 
8977
        * conf/common.rmk (normal_mod_SOURCES): Add normal/context.c.
 
8978
        * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add env_private.h.
 
8979
        * conf/i386-efi.rmk: Likewise.
 
8980
        * conf/i386-ieee1275.rmk: Likewise.
 
8981
        * conf/i386-pc.rmk: Likewise.
 
8982
        * conf/powerpc-ieee1275.rmk: Likewise.
 
8983
        * conf/sparc64-ieee1275.rmk: Likewise.
 
8984
        * conf/x86_64-efi.rmk: Likewise.
 
8985
        * include/grub/env.h: Include grub/menu.h.
 
8986
        (grub_env_var_type): Removed.
 
8987
        (grub_env_var): Replaced field 'type' with 'global'.
 
8988
        (grub_env_find): New prototype.
 
8989
        (grub_env_context_open): Remove EXPORT_FUNC.
 
8990
        (grub_env_context_close): Likewise.
 
8991
        (grub_env_export): Likewise.
 
8992
        (grub_env_set_data_slot): Removed.
 
8993
        (grub_env_get_data_slot): Likewise.
 
8994
        (grub_env_unset_data_slot): Likewise.
 
8995
        (grub_env_unset_menu): New prototype.
 
8996
        (grub_env_set_menu): Likewise.
 
8997
        (grub_env_get_menu): Likewise.
 
8998
        * include/grub/env_private.h: New file.
 
8999
        * include/grub/normal.h (grub_context_init): New prototype.
 
9000
        (grub_context_fini): Likewise.
 
9001
        * kern/corecmd.c (grub_core_cmd_export): Moved from here ...
 
9002
        * normal/context.c (grub_cmd_export): ... to here.
 
9003
        * kern/env.c: Include env_private.h.
 
9004
        (HASHSZ): Moved to include/grub/env_private.h.
 
9005
        (grub_env_context): Likewise.
 
9006
        (grub_env_sorted_var): Likewise.
 
9007
        (current_context): Renamed from this ...
 
9008
        (grub_current_context): ...to this. 'static' removed. All users updated.
 
9009
        (grub_env_find): Removed 'static'.
 
9010
        (grub_env_context_open): Moved to normal/context.c.
 
9011
        (grub_env_context_close): Likewise.
 
9012
        (grub_env_export): Likewise.
 
9013
        (mangle_data_slot_name): Removed.
 
9014
        (grub_env_set_data_slot): Likewise.
 
9015
        (grub_env_get_data_slot): Likewise.
 
9016
        (grub_env_unset_data_slot): Likewise.
 
9017
        * kern/main.c (grub_set_root_dev): Don't export root.
 
9018
        It will be done later.
 
9019
        (grub_main): Don't export prefix.
 
9020
        It will be done later.
 
9021
        * normal/context.c: New file.
 
9022
        * normal/main.c (free_menu): Use grub_env_unset_menu.
 
9023
        (grub_normal_add_menu_entry): Use grub_env_get_menu.
 
9024
        (read_config_file): Use grub_env_get_menu and grub_env_set_menu.
 
9025
        (GRUB_MOD_INIT(normal)): Call grub_context_init.
 
9026
        (GRUB_MOD_FINI(normal)): Call grub_context_fini.
 
9027
 
 
9028
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
9029
 
 
9030
        setpci support.
 
9031
 
 
9032
        * commands/setpci.c: New file.
 
9033
        * conf/i386.rmk (pkglib_MODULES): Add setpci.mod.
 
9034
        (setpci_mod_SOURCES): New variable.
 
9035
        (setpci_mod_CFLAGS): Likewise.
 
9036
        (setpci_mod_LDFLAGS): Likewise.
 
9037
 
 
9038
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
9039
 
 
9040
        Byte-addressable PCI configuration space.
 
9041
 
 
9042
        * bus/pci.c (grub_pci_make_address): Use byte address instead of
 
9043
        dword address.
 
9044
        (grub_pci_iterate): Use macroses GRUB_PCI_REG_PCI_ID and
 
9045
        GRUB_PCI_REG_CACHELINE.
 
9046
        * bus/usb/ohci.c (grub_ohci_pci_iter): Use macroses
 
9047
        GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG0.
 
9048
        * bus/usb/uhci.c (grub_ohci_pci_iter): Use macroses
 
9049
        GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG4.
 
9050
        * commands/efi/fixvideo.c (scan_card): Use macros GRUB_PCI_REG_CLASS.
 
9051
        * commands/efi/loadbios.c (enable_rom_area): Pass byte-address to
 
9052
        grub_pci_make_address.
 
9053
        (lock_rom_area): Likewise.
 
9054
        * commands/lspci.c (grub_lspci_iter): Use macroses
 
9055
        GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESSES. Handle byte-addressing
 
9056
        of grub_pci_make_address.
 
9057
        * disk/ata.c (grub_ata_pciinit): Likewise.
 
9058
        * include/grub/pci.h (GRUB_PCI_REG_PCI_ID): New macro.
 
9059
        (GRUB_PCI_REG_VENDOR): Likewise.
 
9060
        (GRUB_PCI_REG_DEVICE): Likewise.
 
9061
        (GRUB_PCI_REG_COMMAND): Likewise.
 
9062
        (GRUB_PCI_REG_STATUS): Likewise.
 
9063
        (GRUB_PCI_REG_REVISION): Likewise.
 
9064
        (GRUB_PCI_REG_CLASS): Likewise.
 
9065
        (GRUB_PCI_REG_CACHELINE): Likewise.
 
9066
        (GRUB_PCI_REG_LAT_TIMER): Likewise.
 
9067
        (GRUB_PCI_REG_HEADER_TYPE): Likewise.
 
9068
        (GRUB_PCI_REG_BIST): Likewise.
 
9069
        (GRUB_PCI_REG_ADDRESSES): Likewise.
 
9070
        (GRUB_PCI_REG_ADDRESS_REG): Likewise.
 
9071
        (GRUB_PCI_REG_ADDRESS_REG): Likewise.
 
9072
        (GRUB_PCI_REG_ADDRESS_REG): Likewise.
 
9073
        (GRUB_PCI_REG_ADDRESS_REG): Likewise.
 
9074
        (GRUB_PCI_REG_ADDRESS_REG): Likewise.
 
9075
        (GRUB_PCI_REG_ADDRESS_REG): Likewise.
 
9076
        (GRUB_PCI_REG_CIS_POINTER): Likewise.
 
9077
        (GRUB_PCI_REG_SUBVENDOR): Likewise.
 
9078
        (GRUB_PCI_REG_SUBSYSTEM): Likewise.
 
9079
        (GRUB_PCI_REG_ROM_ADDRESS): Likewise.
 
9080
        (GRUB_PCI_REG_CAP_POINTER): Likewise.
 
9081
        (GRUB_PCI_REG_IRQ_LINE): Likewise.
 
9082
        (GRUB_PCI_REG_IRQ_PIN): Likewise.
 
9083
        (GRUB_PCI_REG_MIN_GNT): Likewise.
 
9084
        (GRUB_PCI_REG_MAX_LAT): Likewise.
 
9085
        * loader/i386/efi/linux.c (find_framebuf): Use GRUB_PCI_REG_CLASS.
 
9086
        * loader/i386/efi/xnu.c (find_framebuf): Likewise.
 
9087
        * video/efi_uga.c (find_framebuf): Likewise.
 
9088
        * video/sm712.c (grub_video_sm712_setup): Likewise.
 
9089
        * util/pci.c (grub_pci_make_address): Use byte-addressed configuration
 
9090
        space.
 
9091
 
1
9092
2010-01-20  Robert Millan  <rmh.grub@aybabtu.com>
2
9093
 
3
9094
        * util/grub.d/10_linux.in (linux_entry): Set gfxpayload=keep when it
1927
11018
        (grub_cmd_read): Restructure for readability. Support "-v" option.
1928
11019
        (grub_cmd_write): Restructure for readability.
1929
11020
 
1930
 
2009-12-22 Felix Zielcke <fzielcke@z-51.de>
 
11021
2009-12-22  Felix Zielcke <fzielcke@z-51.de>
1931
11022
 
1932
11023
        * genmk.rb (class SCRIPT): Prepend #{src} path with $(srcdir).
1933
11024
 
23626
32717
 
23627
32718
        * genmk.rb (PModule#rule): Make sure to get only symbol names
23628
32719
        from the output of nm.
23629
 
        Reported by Robert Millan <zeratul2@wanadoo.es>.
 
32720
        Reported by Robert Millan <rmh.grub@aybabtu.com>.
23630
32721
 
23631
32722
2003-09-25  Yoshinori K. Okuji  <okuji@enbug.org>
23632
32723