Commit graph

531 commits

Author SHA1 Message Date
Felix Zielcke
4465287d1b 2009-11-24 Felix Zielcke <fzielcke@z-51.de>
* util/getroot.c (grub_util_get_dev_abstraction): Properly use
	strncmp().
2009-11-24 09:55:28 +01:00
Felix Zielcke
62b47f220a 2009-11-24 Felix Zielcke <fzielcke@z-51.de>
* util/getroot.c (grub_util_is_dmraid): New function.
	(grub_util_get_dev_abstraction): Treat dmraid and multipath
	devices as normal ones, not as LVM.
2009-11-24 08:20:48 +01:00
Carles Pina i Estany
2b352daff9 Syncs with trunk 2009-11-23 20:50:01 +00:00
Carles Pina i Estany
b58fc33c4f Merging with trunk 2009-11-23 20:34:42 +00:00
Robert Millan
0fdb256813 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* util/hostdisk.c: Include `<grub/i18n.h>'.
        (find_grub_drive): Use ARRAY_SIZE for map size calculation.
        (make_device_name): Rewrite using asprintf.
        (convert_system_partition_to_system_disk): Replace 0 with NULL.
        (find_system_device): If a device is not found, generate one just
        by reusing the OS path name.
        (read_device_map): Make it permissible for device.map not to exist.
2009-11-23 20:30:56 +00:00
Robert Millan
f84b481b35 Cheery-pick grub-emu split from experimental (rev 1361)
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>

        * configure.ac: Detect all `emu' platforms.  Define
        GRUB_MACHINE_* macros in TARGET_CFLAGS.  Remove
        --enable-grub-emu logic.  Disable include/grub/machine
        symlink on `emu' platforms.

        * genkernsyms.sh.in: Use @TARGET_CFLAGS@ during symbol generation.
        * gensymlist.sh.in: Likewise.

        * include/grub/i386/coreboot/machine.h: Remove file.
        * include/grub/i386/efi/machine.h: Likewise.
        * include/grub/i386/ieee1275/machine.h: Likewise.
        * include/grub/i386/pc/machine.h: Likewise.
        * include/grub/i386/qemu/machine.h: Likewise.
        * include/grub/powerpc/ieee1275/machine.h: Likewise.
        * include/grub/sparc64/ieee1275/machine.h: Likewise.
        * include/grub/x86_64/efi/machine.h: Likewise.

        * commands/acpi.c: Remove `<grub/machine/machine.h>'.
        * commands/halt.c: Likewise.
        * commands/reboot.c: Likewise.
        * include/grub/autoefi.h: Likewise.
        * include/grub/i386/at_keyboard.h: Likewise.
        * include/grub/i386/kernel.h: Likewise.
        * include/grub/i386/loader.h: Likewise.
        * include/grub/i386/pc/memory.h: Likewise.
        * kern/dl.c: Likewise.
        * kern/i386/coreboot/init.c: Likewise.
        * loader/i386/bsd.c: Likewise.
        * loader/i386/linux.c: Likewise.
        * loader/multiboot_loader.c: Likewise.
        * term/i386/pc/serial.c: Likewise.
        * term/usb_keyboard.c: Likewise.

        * include/grub/time.h [!GRUB_MACHINE_EMU]: Remove
        `<grub/machine/machine.h>'
        [!GRUB_MACHINE_EMU] (GRUB_TICKS_PER_SECOND): New macro.
        * util/misc.c: Remove `<grub/machine/machine.h>' and
        `<grub/machine/time.h>'.

        * Makefile.in (enable_grub_emu): Remove variable.
        Include $(srcdir)/conf/any-emu.mk for the `emu' platform.

        * conf/any-emu.rmk: New file.
        * conf/common.rmk (grub_emu_init.lst, grub_emu_init.h)
        (grub_emu_init.c): Move from here ...
        * conf/any-emu.rmk: ... to here.

        * conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-emu'.
        (grub_emu_SOURCES, grub_emu_LDFLAGS): Move from here ...
        * conf/any-emu.rmk: ... to here.
2009-11-23 15:31:54 +00:00
Robert Millan
ea1dd8bf0a 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass --keyword=N_ to
        `$(XGETTEXT)'.
        * include/grub/i18n.h (N_): New macro.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/mkisofs.c (ld_options): Wrap all translatable strings
        around N_().
        (usage): Use gettext() to translate help strings when printing them.
2009-11-23 13:18:07 +00:00
Carles Pina i Estany
39eaee93f1 Sync with trunk 2009-11-22 11:56:10 +00:00
Carles Pina i Estany
0648f857ea Different changes following Robert's email 20091121230904.GA29740@thorin 2009-11-22 11:49:54 +00:00
Robert Millan
87d58298fd 2009-11-22 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-mkimage.c: Ungettextize grub_util_info() strings.
        * util/i386/pc/grub-setup.c: Likewise.
2009-11-22 10:20:14 +00:00
Carles Pina i Estany
cb681ffd7a Deletes grub-gettext_lib.in (not needed after Robert's changes) 2009-11-21 21:18:12 +00:00
Carles Pina i Estany
a239a5e9cc merge with Trunk 2009-11-21 21:05:15 +00:00
Samuel Thibault
994cc3a308 2009-11-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/getroot.c [__GNU__]: Include <hurd.h>, <hurd/lookup.h>, and
	<hurd/fs.h>
	[__GNU__] (grub_guess_root_device): Call file_name_lookup and
	file_get_storage_info to implement grub_guess_root_device.
2009-11-21 18:00:23 +01:00
Felix Zielcke
74ff1dd52b 2009-11-21 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkrescue.in: Print an error and usage if output option
	has not been given.
2009-11-21 17:40:55 +01:00
Felix Zielcke
97951fb232 Merge trunk 2009-11-21 15:49:21 +01:00
Felix Zielcke
0b787d0e99 2009-11-21 Felix Zielcke <fzielcke@z-51.de>
Patch from Loïc Minier <loic.minier@ubuntu.com>.
	* util/grub.d/30_os-prober.in: Cope with Linux entries where
	root and /boot are on different devices.
2009-11-21 15:41:46 +01:00
Robert Millan
13774a2f94 2009-11-21 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-mkrescue.in: Use source directory direcly (without copiing
        or hardlinking it).  Remove -J option, Joliet is not compatible with
        multiple source directories.
2009-11-21 13:22:41 +00:00
Robert Millan
efda854e68 2009-11-21 Carles Pina i Estany <carles@pina.cat>
2009-11-21  Robert Millan  <rmh.grub@aybabtu.com>

        * util/grub-mkrescue.in: Recognize `--override-directory' option.
        (process_input_dir): New function.  Process an arbitrary input
        directory.
        Misc adjustments to support both "override mode" and system-wide mode.
2009-11-21 13:11:38 +00:00
Carles Pina i Estany
fbc5e89710 Syncs with trunk 2009-11-19 21:18:38 +00:00
Robert Millan
f577f7a09d 2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
* conf/i386-pc.rmk (grub_setup_SOURCES): Add `gnulib/progname.c'.
        * util/i386/pc/grub-setup.c: Include `<grub/i18n.h>'.
        Include `"progname.h"'.
        (main): Initialize gettext.
        * util/i386/pc/grub-setup.c: Gettexttize.
        * util/i386/pc/grub-mkimage.c: Likewise.

        * Makefile.in (po/*.po): Redefine as ...
        ($(foreach lang, $(LINGUAS), po/$(lang).po)): ... this.

        * po/POTFILES: Add `util/i386/pc/grub-setup.c'.
2009-11-18 23:20:22 +00:00
Robert Millan
700d59cded 2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
* conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/progname.c'.
        * util/mkisofs/mkisofs.c: Include `"progname.h"'.
        (program_name): Remove.
        (main): Initialize gettext support.

        * util/mkisofs/eltorito.c: Gettexttize.
        * util/mkisofs/joliet.c: Likewise.
        * util/mkisofs/mkisofs.c: Likewise.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/multi.c: Likewise.
        * util/mkisofs/rock.c: Likewise.
        * util/mkisofs/tree.c: Likewise.
        * util/mkisofs/write.c: Likewise.

        * po/POTFILES: Update with new files.
2009-11-18 23:05:59 +00:00
Robert Millan
5ce77c6e7e 2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/eltorito.c: Fix minor mistake in license text.
        * util/mkisofs/iso9660.h: Likewise.
        * util/mkisofs/joliet.c: Likewise.
        * util/mkisofs/mkisofs.c: Likewise.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/rock.c: Likewise.
        * util/mkisofs/tree.c: Likewise.
        * util/mkisofs/write.c: Likewise.

        * util/mkisofs/eltorito.c (rcsid): Remove.
        * util/mkisofs/hash.c: Likewise.
        * util/mkisofs/joliet.c: Likewise.
        * util/mkisofs/name.c: Likewise.
        * util/mkisofs/rock.c: Likewise.
        * util/mkisofs/tree.c: Likewise.
        * util/mkisofs/write.c: Likewise.
2009-11-18 22:59:40 +00:00
Robert Millan
1dabbc77cf 2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/match.c: Rewrite from scratch, using a linked list
        instead of static allocation.
        * util/mkisofs/match.h: Likewise.
2009-11-18 22:49:59 +00:00
Robert Millan
769ae37bfd Merge my gettext branch (gettext support in build system for GRUB utilities) 2009-11-17 20:23:06 +00:00
Robert Millan
37fb845ba6 2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
* INSTALL: Document Automake is needed for bootstrap.
        * po/ca.po: Fix PO-Revision-Date and Language-Team fields.
        * util/grub.d/10_kfreebsd.in (bindir): New variable.
        Add gettext initialization.
        (kfreebsd_entry): Make menuentry output translatable.
2009-11-17 11:44:43 +00:00
Robert Millan
5dd39a2f3b Use proper path for gettext.sh and export TEXTDOMAINDIR. 2009-11-17 11:32:05 +00:00
Robert Millan
336262f829 2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
* configure.ac: Call AM_GNU_GETTEXT() (defines localedir, among
        other things).
        * Makefile.in (CPPFLAGS): Add `-DLOCALEDIR=\"$(localedir)\"'.
        * util/i386/pc/grub-mkimage.c (main): Issue setlocale() and
        bindtextdomain() calls for gettext initialization.
2009-11-17 10:47:22 +00:00
Robert Millan
548643e528 * gnulib/progname.c: New file (imported from Gnulib).
* gnulib/progname.h: Likewise.
        * conf/i386-pc.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
        * util/i386/pc/grub-mkimage.c: Include `"progname.h"'.
        (usage): Replace `progname' with `program_name'.
        (main): Use set_program_name() for program name initialization.
2009-11-17 10:40:43 +00:00
Robert Millan
0ef45b9398 Integrate import_gcry.py in autogen.sh. 2009-11-17 10:22:54 +00:00
Robert Millan
59917f8496 Merge import_gcry.py from Vladimir's crypto branch. 2009-11-17 10:21:01 +00:00
Robert Millan
9a90f817a0 Move i18n declarations to their own file. 2009-11-17 09:52:08 +00:00
Robert Millan
a1085f18c5 Gettextify. 2009-11-16 20:19:42 +00:00
Robert Millan
f5e9dadb58 Use PACKAGE instead of hardcoding "grub". 2009-11-16 20:03:14 +00:00
Robert Millan
af2f93ac47 2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
Fix build for systems without error().

        * gnulib/error.c: New file (imported from Gnulib).
        * gnulib/error.h: Likewise.
        * conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/error.c'.
        * util/mkisofs/mkisofs.c (program_name): Remove `static' qualifier
        (this variable is now used by error()).
2009-11-16 18:49:44 +00:00
Felix Zielcke
73fb3dd5f0 2009-11-16 Felix Zielcke <fzielcke@z-51.de>
* util/mkisofs/name.c (FDECL3): Use isascii macro instead of
	relying that char is signed.
2009-11-16 19:47:10 +01:00
Robert Millan
ed101e8122 Initial support for gettext in build system. 2009-11-15 23:11:01 +00:00
Robert Millan
fd6fd3d770 2009-11-15 Robert Millan <rmh.grub@aybabtu.com>
Support --version in grub-mkisofs.

        * util/mkisofs/mkisofs.c (rcsid): Remove variable.
        (OPTION_VERSION): New macro.
        (ld_options): Recognize --version.
        (usage): Move `program_name' from here ...
        (program_name): ... to here.  Add `static' qualifier.
        (main): Recognize `OPTION_VERSION'.
2009-11-15 14:02:33 +00:00
Robert Millan
a415847694 2009-11-14 Robert Millan <rmh.grub@aybabtu.com>
Fix help2man generation for mkisofs.

        * util/mkisofs/mkisofs.c (ld_options): Recognize --help.
        (usage): Send output to stdout (rather than stderr).
2009-11-14 21:20:02 +00:00
Robert Millan
fc2208b0ef 2009-11-14 Robert Millan <rmh.grub@aybabtu.com>
* conf/i386-coreboot.rmk (grub_mkrescue_SOURCES): Replace
        `util/i386/coreboot/grub-mkrescue.in' with `util/grub-mkrescue.in'.
        * conf/i386-pc.rmk (grub_mkrescue_SOURCES): Replace
        `util/i386/pc/grub-mkrescue.in' with `util/grub-mkrescue.in'.
        (bin_SCRIPTS): Add `grub-mkfloppy'.
        (grub_mkfloppy_SOURCES): New variable.

        * util/grub-mkrescue.in: New file.
        * util/i386/pc/grub-mkfloppy.in: New file.

        * util/i386/coreboot/grub-mkrescue.in: Remove.
        * util/i386/pc/grub-mkrescue.in: Remove.
2009-11-14 18:38:11 +00:00
Carles Pina i Estany
203ffbfa31 Adds gettext support in Grub. Building system needs to be improved and maybe userland utilites improved.
YYYY-MM-DD  Carles Pina i Estany <carles@pina.cat>

	* Makefile.in: Add uptrans target to help to update .pot file
	* conf/common.rmk: Add grub-gettext_lib target, dependency and SOURCES, CFLAGS, LDFLAGS
	* kern/misc.c: Define grub_gettext symbol and add implement grub_gettext_dummy function
	* po/TODO: Temporary file with instructions of what Makefile.in will do
	* po/ca.po: Catalan translation stub
	* include/grub/misc.h: Define macro _(char *s). Declare grub_gettext_dummy and grub_gettext
	* gettext/gettext.c: New file with gettext implementation
	* normal/menu.c (print_message): add _( ) to some strings
	* util/grub.d/10_linux.in: include grub-gettext_lib file. For the Linux menuentry, call eval_gettext
	* util/grub.d/00_header.in: add locale_prefix and gettext locale detection and setting up the access to the mo directory
	* util/grub-mkconfig_lib.in: add get_locale_lang
	* util/grub-gettext_lib.in: new file
2009-11-13 20:39:33 +00:00
Robert Millan
6e1e0d8954 2009-11-12 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/eltorito.c (init_boot_catalog): Handle return code
        of write calls (converting them to fwrite() if they aren't already).
        (get_torito_desc): Likewise.
        * util/mkisofs/rock.c (generate_rock_ridge_attributes): Likewise.
2009-11-12 21:32:47 +00:00
Robert Millan
7f2b34d84e 2009-11-12 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-install.in: Move from here ...
        * util/grub-install.in: ... to here.  Update all users.
2009-11-12 12:23:11 +00:00
Colin Watson
c0ef331155 2009-11-11 Colin Watson <cjwatson@ubuntu.com>
* util/powerpc/ieee1275/grub-mkrescue.in: Fix --version output.
2009-11-11 23:21:13 +00:00
Robert Millan
e1f240ff44 2009-11-11 Robert Millan <rmh.grub@aybabtu.com>
Support for El Torito without floppy emulation.

        * util/mkisofs/eltorito.c: Include `<errno.h>'.
        (init_boot_catalog): Improve error handling.
        (get_torito_desc): Don't use floppy emulation unless requested by
        user. Patch boot information table when requested via
        `-boot-info-table'.
        * util/mkisofs/iso9660.h (struct eltorito_boot_info): New struct.
        * util/mkisofs/mkisofs.c (use_eltorito_emul_floppy)
        (use_boot_info_table): New variables.
        (OPTION_BOOT_INFO_TABLE, OPTION_NO_EMUL_BOOT)
        (OPTION_ELTORITO_EMUL_FLOPPY): New macros.
        (ld_options): Handle `-boot-info-table', `-no-emul-boot' and
        `--eltorito-emul-floppy'.
        (main): Handle `OPTION_BOOT_INFO_TABLE', `OPTION_NO_EMUL_BOOT'
        and `OPTION_ELTORITO_EMUL_FLOPPY'.
        * util/mkisofs/mkisofs.h (use_eltorito_emul_floppy)
        (use_boot_info_table, get_731): New prototypes.
        * util/mkisofs/write.c (get_731): New function.
2009-11-11 20:52:04 +00:00
Felix Zielcke
af7d4de5c2 2009-11-11 Felix Zielcke <fzielcke@z-51.de>
Fix the generation of the man page.

	* util/pc/i386/grub-install.in: Source
	`${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
2009-11-11 17:00:27 +01:00
Robert Millan
2c55dbc0d5 2009-11-11 Robert Millan <rmh.grub@aybabtu.com>
Large file support for grub-mkisofs.

        * conf/common.rmk (grub_mkisofs_CFLAGS): Add `-D_FILE_OFFSET_BITS=64'.
        * util/mkisofs/mkisofs.c (next_extent, last_extent)
        (session_start): Upgrade type to `uint64_t'.  Update all users.
        * util/mkisofs/mkisofs.h: Include `<stdint.h>'.
        (struct directory_entry): Upgrade type of `starting_block' and
        `size' to `uint64_t'.  Update all users.
        (struct deferred): Remove unused structure.
        (xfwrite): Upgrade type of `count' and `size' to `uint64_t'.
        Update all users.
        * util/mkisofs/tree.c (stat_filter, lstat_filter): Return -1 when
        file is larger than `UINT32_MAX'.
        * util/mkisofs/write.c (xfwrite): Upgrade type of `count' and
        `size' to `uint64_t'.  Update all users.  Fix handling of fwrite()
        return value.
        (struct deferred_write): Upgrade type of `extent' and `size' to
        `uint64_t'.  Update all users.
        (last_extent_written): Upgrade type to `uint64_t'.  Update all
        users.
        (write_one_file): Upgrade type of `count' and `size' to `uint64_t'.
        Update all users.  Upgrade type of `remain' to `int64_t' and
        `use' to `size_t'.  Use error() to handle fread() errors.
        (write_files): Rely on write_one_file() rather than calling
        xfwrite() directly.
2009-11-11 00:23:29 +00:00
Felix Zielcke
6a9cead5cf 2009-11-09 Felix Zielcke <fzielcke@z-51.de>
* util/mkisofs/mkisofs.c (ld_options): Fix a spelling mistake.
2009-11-09 21:36:09 +01:00
Robert Millan
4825d7908c 2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/fnmatch.c: Remove.
        * util/mkisofs/getopt1.c: Likewise.
        * util/mkisofs/getopt.c: Likewise.
        * conf/common.rmk (grub_mkisofs_SOURCES): Replace
        `util/mkisofs/fnmatch.c', `util/mkisofs/getopt1.c' and
        `util/mkisofs/getopt.c' with `gnulib/fnmatch.c',
        `gnulib/getopt1.c' and `gnulib/getopt.c'.
        (grub_mkisofs_CFLAGS): Add `-I$(srcdir)/gnulib'.

        * configure.ac: Detect `mingw32msvc' host_os.
        Check for lstat(), getuid() and getgid().

        * util/mkisofs/joliet.c: Include `<stdint.h>'.  Replace all
        instances of `u_char' with `uint8_t'.

        * util/mkisofs/mkisofs.h: Include `<sys/stat.h>'.
        [!HAVE_GETUID] (getuid): New function (stub).
        [!HAVE_GETGID] (getgid): Likewise.
        [!HAVE_LSTAT] (lstat): Likewise.
        [!S_IROTH] (S_IROTH): New macro (dummy).
        [!S_IRGRP] (S_IRGRP): Likewise.
2009-11-09 19:58:24 +00:00
Robert Millan
7c4e16ff88 Integrate grub-mkisofs into the build system. 2009-11-08 23:01:34 +00:00
Robert Millan
cd2dbe8d2e Remove support for non-Autoconf build mode. 2009-11-08 22:55:12 +00:00